import type { Quarter } from '../../../../types' ; import type { Localize , LocalizeFn } from '../../../types' ; import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index' ; const eraValues = { narrow : [ 'ჩ.წ-მდე' , 'ჩ.წ' ] as const , abbreviated : [ 'ჩვ.წ-მდე' , 'ჩვ.წ' ] as const , wide : [ 'ჩვენს წელთაღრიცხვამდე' , 'ჩვენი წელთაღრიცხვით' ] as const , } ; const quarterValues = { narrow : [ '1' , '2' , '3' , '4' ] as const , abbreviated : [ '1-ლი კვ' , '2-ე კვ' , '3-ე კვ' , '4-ე კვ' ] as const , wide : [ '1-ლი კვარტალი' , '2-ე კვარტალი' , '3-ე კვარტალი' , '4-ე კვარტალი' , ] as const , } ; const monthValues = { narrow : [ 'ია' , 'თე' , 'მა' , 'აპ' , 'მს' , 'ვნ' , 'ვლ' , 'აგ' , 'სე' , 'ოქ' , 'ნო' , 'დე' , ] as const , abbreviated : [ 'იან' , 'თებ' , 'მარ' , 'აპრ' , 'მაი' , 'ივნ' , 'ივლ' , 'აგვ' , 'სექ' , 'ოქტ' , 'ნოე' , 'დეკ' , ] as const , wide : [ 'იანვარი' , 'თებერვალი' , 'მარტი' , 'აპრილი' , 'მაისი' , 'ივნისი' , 'ივლისი' , 'აგვისტო' , 'სექტემბერი' , 'ოქტომბერი' , 'ნოემბერი' , 'დეკემბერი' , ] as const , } ; const dayValues = { narrow : [ 'კვ' , 'ორ' , 'სა' , 'ოთ' , 'ხუ' , 'პა' , 'შა' ] as const , short : [ 'კვი' , 'ორშ' , 'სამ' , 'ოთხ' , 'ხუთ' , 'პარ' , 'შაბ' ] as const , abbreviated : [ 'კვი' , 'ორშ' , 'სამ' , 'ოთხ' , 'ხუთ' , 'პარ' , 'შაბ' ] as const , wide : [ 'კვირა' , 'ორშაბათი' , 'სამშაბათი' , 'ოთხშაბათი' , 'ხუთშაბათი' , 'პარასკევი' , 'შაბათი' , ] as const , } ; const dayPeriodValues = { narrow : { am : 'a' , pm : 'p' , midnight : 'შუაღამე' , noon : 'შუადღე' , morning : 'დილა' , afternoon : 'საღამო' , evening : 'საღამო' , night : 'ღამე' , } , abbreviated : { am : 'AM' , pm : 'PM' , midnight : 'შუაღამე' , noon : 'შუადღე' , morning : 'დილა' , afternoon : 'საღამო' , evening : 'საღამო' , night : 'ღამე' , } , wide : { am : 'a.m.' , pm : 'p.m.' , midnight : 'შუაღამე' , noon : 'შუადღე' , morning : 'დილა' , afternoon : 'საღამო' , evening : 'საღამო' , night : 'ღამე' , } , } ; const formattingDayPeriodValues = { narrow : { am : 'a' , pm : 'p' , midnight : 'შუაღამით' , noon : 'შუადღისას' , morning : 'დილით' , afternoon : 'ნაშუადღევს' , evening : 'საღამოს' , night : 'ღამით' , } , abbreviated : { am : 'AM' , pm : 'PM' , midnight : 'შუაღამით' , noon : 'შუადღისას' , morning : 'დილით' , afternoon : 'ნაშუადღევს' , evening : 'საღამოს' , night : 'ღამით' , } , wide : { am : 'a.m.' , pm : 'p.m.' , midnight : 'შუაღამით' , noon : 'შუადღისას' , morning : 'დილით' , afternoon : 'ნაშუადღევს' , evening : 'საღამოს' , night : 'ღამით' , } , } ; const ordinalNumber = ( dirtyNumber ) => { const number = Number ( dirtyNumber ) ; if ( number === 1 ) { return number + '-ლი' ; } return number + '-ე' ; } ; 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 ;