import type { Quarter } from '../../../../types' ; import type { Localize , LocalizeFn } from '../../../types' ; import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index' ; const eraValues = { narrow : [ 'B' , 'คศ' ] as const , abbreviated : [ 'BC' , 'ค.ศ.' ] as const , wide : [ 'ปีก่อนคริสตกาล' , 'คริสต์ศักราช' ] as const , } ; const quarterValues = { narrow : [ '1' , '2' , '3' , '4' ] as const , abbreviated : [ 'Q1' , 'Q2' , 'Q3' , 'Q4' ] as const , wide : [ 'ไตรมาสแรก' , 'ไตรมาสที่สอง' , 'ไตรมาสที่สาม' , 'ไตรมาสที่สี่' ] as const , } ; const dayValues = { narrow : [ 'อา.' , 'จ.' , 'อ.' , 'พ.' , 'พฤ.' , 'ศ.' , 'ส.' ] as const , short : [ 'อา.' , 'จ.' , 'อ.' , 'พ.' , 'พฤ.' , 'ศ.' , 'ส.' ] as const , abbreviated : [ 'อา.' , 'จ.' , 'อ.' , 'พ.' , 'พฤ.' , 'ศ.' , 'ส.' ] as const , wide : [ 'อาทิตย์' , 'จันทร์' , 'อังคาร' , 'พุธ' , 'พฤหัสบดี' , 'ศุกร์' , 'เสาร์' , ] as const , } ; const monthValues = { narrow : [ 'ม.ค.' , 'ก.พ.' , 'มี.ค.' , 'เม.ย.' , 'พ.ค.' , 'มิ.ย.' , 'ก.ค.' , 'ส.ค.' , 'ก.ย.' , 'ต.ค.' , 'พ.ย.' , 'ธ.ค.' , ] as const , abbreviated : [ 'ม.ค.' , 'ก.พ.' , 'มี.ค.' , 'เม.ย.' , 'พ.ค.' , 'มิ.ย.' , 'ก.ค.' , 'ส.ค.' , 'ก.ย.' , 'ต.ค.' , 'พ.ย.' , 'ธ.ค.' , ] as const , wide : [ 'มกราคม' , 'กุมภาพันธ์' , 'มีนาคม' , 'เมษายน' , 'พฤษภาคม' , 'มิถุนายน' , 'กรกฎาคม' , 'สิงหาคม' , 'กันยายน' , 'ตุลาคม' , 'พฤศจิกายน' , 'ธันวาคม' , ] as const , } ; const dayPeriodValues = { narrow : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'เช้า' , afternoon : 'บ่าย' , evening : 'เย็น' , night : 'กลางคืน' , } , abbreviated : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'เช้า' , afternoon : 'บ่าย' , evening : 'เย็น' , night : 'กลางคืน' , } , wide : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'เช้า' , afternoon : 'บ่าย' , evening : 'เย็น' , night : 'กลางคืน' , } , } ; const formattingDayPeriodValues = { narrow : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'ตอนเช้า' , afternoon : 'ตอนกลางวัน' , evening : 'ตอนเย็น' , night : 'ตอนกลางคืน' , } , abbreviated : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'ตอนเช้า' , afternoon : 'ตอนกลางวัน' , evening : 'ตอนเย็น' , night : 'ตอนกลางคืน' , } , wide : { am : 'ก่อนเที่ยง' , pm : 'หลังเที่ยง' , midnight : 'เที่ยงคืน' , noon : 'เที่ยง' , morning : 'ตอนเช้า' , afternoon : 'ตอนกลางวัน' , evening : 'ตอนเย็น' , night : 'ตอนกลางคืน' , } , } ; const ordinalNumber = ( dirtyNumber , _options ) => { return String ( dirtyNumber ) ; } ; const localize = { ordinalNumber , era : buildLocalizeFn ( { values : eraValues , defaultWidth : 'wide' , } ) , quarter : buildLocalizeFn ( { values : quarterValues , defaultWidth : 'wide' , argumentCallback : ( quarter ) => ( quarter - 1 ) as Quarter , } ) , month : buildLocalizeFn ( { values : monthValues , defaultWidth : 'wide' , } ) , day : buildLocalizeFn ( { values : dayValues , defaultWidth : 'wide' , } ) , dayPeriod : buildLocalizeFn ( { values : dayPeriodValues , defaultWidth : 'wide' , formattingValues : formattingDayPeriodValues , defaultFormattingWidth : 'wide' , } ) , } ; export default localize ;