@bereasoftware/time-guard 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +10 -2
- package/README.md +17 -7
- package/dist/{calendars.es.js → calendars/index.es.js} +1 -1
- package/dist/full.cjs +1 -1
- package/dist/full.es.js +2 -2
- package/dist/{locales.es.js → locales/index.es.js} +1 -1
- package/dist/{plugin-advanced-format.es.js → plugins/advanced-format.es.js} +1 -1
- package/dist/{plugin-duration.es.js → plugins/duration.es.js} +1 -1
- package/dist/{plugin-relative-time.es.js → plugins/relative-time.es.js} +1 -1
- package/dist/time-guard.cjs +1 -1
- package/dist/time-guard.es.js +2 -2
- package/dist/time-guard.iife.js +1 -1
- package/dist/time-guard.umd.js +1 -1
- package/dist/types/calendars.d.ts +1 -1
- package/dist/types/full.d.ts +1 -0
- package/dist/types/locales.d.ts +1 -1
- package/dist/types/plugins/advanced-format.d.ts +2 -0
- package/dist/types/plugins/duration.d.ts +3 -0
- package/dist/types/plugins/relative-time.d.ts +3 -0
- package/dist/types/time-guard.d.ts +1 -1
- package/package.json +24 -23
- package/dist/types/plugin-advanced-format.d.ts +0 -1
- package/dist/types/plugin-duration.d.ts +0 -1
- package/dist/types/plugin-relative-time.d.ts +0 -1
- package/dist/types/src/adapters/temporal.adapter.d.ts +0 -60
- package/dist/types/src/calendars/calendar.manager.d.ts +0 -52
- package/dist/types/src/calendars/index.d.ts +0 -81
- package/dist/types/src/formatters/date.formatter.d.ts +0 -21
- package/dist/types/src/full.d.ts +0 -8
- package/dist/types/src/index.d.ts +0 -23
- package/dist/types/src/locales/additional.locale.d.ts +0 -5
- package/dist/types/src/locales/asian.locale.d.ts +0 -9
- package/dist/types/src/locales/english.locale.d.ts +0 -6
- package/dist/types/src/locales/european.locale.d.ts +0 -9
- package/dist/types/src/locales/index.d.ts +0 -17
- package/dist/types/src/locales/locale.manager.d.ts +0 -42
- package/dist/types/src/locales/locales-data.d.ts +0 -17
- package/dist/types/src/locales/middle-eastern.locale.d.ts +0 -5
- package/dist/types/src/locales/nordic.locale.d.ts +0 -6
- package/dist/types/src/locales/romance.locale.d.ts +0 -7
- package/dist/types/src/locales/slavic.locale.d.ts +0 -6
- package/dist/types/src/locales/spanish.locale.d.ts +0 -5
- package/dist/types/src/plugins/advanced-format/index.d.ts +0 -47
- package/dist/types/src/plugins/duration/index.d.ts +0 -107
- package/dist/types/src/plugins/duration/types.d.ts +0 -85
- package/dist/types/src/plugins/index.d.ts +0 -10
- package/dist/types/src/plugins/manager.d.ts +0 -58
- package/dist/types/src/plugins/relative-time/index.d.ts +0 -39
- package/dist/types/src/plugins/relative-time/types.d.ts +0 -27
- package/dist/types/src/polyfill-loader.d.ts +0 -5
- package/dist/types/src/time-guard.d.ts +0 -154
- package/dist/types/src/types/index.d.ts +0 -301
- /package/dist/{calendars.cjs → calendars/index.cjs} +0 -0
- /package/dist/{locales.cjs → locales/index.cjs} +0 -0
- /package/dist/{plugin-advanced-format.cjs → plugins/advanced-format.cjs} +0 -0
- /package/dist/{plugin-duration.cjs → plugins/duration.cjs} +0 -0
- /package/dist/{plugin-relative-time.cjs → plugins/relative-time.cjs} +0 -0
package/dist/time-guard.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.BereasoftTimeGuard={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=null;function n(){if(t)return t;let e=globalThis.Temporal;if(!e)throw Error(`Temporal API not loaded. Make sure @js-temporal/polyfill is imported in your app.`);return t=e,e}var r=class{static parseToPlainDateTime(e){let t=n();return this.isPlainDateTime(e)?e:this.isZonedDateTime(e)?e.toPlainDateTime():this.isPlainDate(e)?e.toPlainDateTime({hour:0,minute:0,second:0,millisecond:0}):this.isPlainTime(e)?t.Now.plainDateTimeISO().with(e):typeof e==`object`&&e&&`getTime`in e&&typeof e.getTime==`function`?this.fromDate(e):typeof e==`number`?this.fromUnix(e):typeof e==`string`?this.parseISOString(e):typeof e==`object`&&e?this.fromObject(e):t.Now.plainDateTimeISO()}static fromDate(e){let t=n(),[r,i]=e.toISOString().split(`T`);return t.PlainDateTime.from(r+`T`+i.slice(0,-1))}static fromUnix(e){return this.fromDate(new Date(e))}static parseISOString(e){let t=n();try{if(e.includes(`T`)||/ \d{2}:\d{2}/.test(e)){let n=e.replace(` `,`T`);return t.PlainDateTime.from(n)}return t.PlainDate.from(e).toPlainDateTime({hour:0})}catch{return t.Now.plainDateTimeISO()}}static fromObject(e){let t=n(),r=e.year||t.Now.plainDateISO().year,i=e.month||1,a=e.day||1,o=e.hour||0,s=e.minute||0,c=e.second||0,l=e.millisecond||0;return t.PlainDateTime.from({year:r,month:i,day:a,hour:o,minute:s,second:c,millisecond:l})}static toDate(e){let t=this.toPlainDateTime(e);return new Date(t.toString())}static toUnix(e){let t=this.toPlainDateTime(e);return Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond)}static toISOString(e){return this.toPlainDateTime(e).toString()+`Z`}static toPlainDateTime(e){return this.isPlainDateTime(e)?e:e.toPlainDateTime()}static isPlainDateTime(e){return typeof e==`object`&&!!e&&`year`in e&&`month`in e&&`day`in e&&`hour`in e}static isZonedDateTime(e){return typeof e==`object`&&!!e&&`timeZone`in e}static isPlainDate(e){return typeof e==`object`&&!!e&&`year`in e&&`month`in e&&`day`in e&&!(`hour`in e)&&`toPlainDateTime`in e}static isPlainTime(e){return typeof e==`object`&&!!e&&`hour`in e&&!(`year`in e)}static now(){return n().Now.plainDateTimeISO()}static nowInTimezone(e){return n().Now.zonedDateTimeISO(e)}},i={name:`en`,months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],monthsShort:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],weekdays:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],weekdaysShort:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],weekdaysMin:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],meridiem:{am:`AM`,pm:`PM`},formats:{iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`YYYY-MM-DD`,time:`HH:mm:ss`,datetime:`YYYY-MM-DD HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`}},a={name:`es`,months:[`Enero`,`Febrero`,`Marzo`,`Abril`,`Mayo`,`Junio`,`Julio`,`Agosto`,`Septiembre`,`Octubre`,`Noviembre`,`Diciembre`],monthsShort:[`Ene`,`Feb`,`Mar`,`Abr`,`May`,`Jun`,`Jul`,`Ago`,`Sep`,`Oct`,`Nov`,`Dic`],weekdays:[`Domingo`,`Lunes`,`Martes`,`Miércoles`,`Jueves`,`Viernes`,`Sábado`],weekdaysShort:[`Dom`,`Lun`,`Mar`,`Mié`,`Jue`,`Vie`,`Sáb`],weekdaysMin:[`Do`,`Lu`,`Ma`,`Mi`,`Ju`,`Vi`,`Sa`],meridiem:{am:`AM`,pm:`PM`},formats:{iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`DD/MM/YYYY`,time:`HH:mm:ss`,datetime:`DD/MM/YYYY HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`}},o=class e{static instance;locales=new Map;currentLocale=`en`;static getInstance(){return e.instance||=new e,e.instance}constructor(){this.locales.set(`en`,i),this.locales.set(`es`,a)}setLocale(e,t){t&&this.locales.set(e.toLowerCase(),t),this.currentLocale=e.toLowerCase()}getLocale(e){let t=(e||this.currentLocale).toLowerCase();return this.locales.get(t)||this.locales.get(`en`)||i}listLocales(){return Array.from(this.locales.keys())}getCurrentLocale(){return this.currentLocale}loadLocales(e){Object.entries(e).forEach(([e,t])=>{this.locales.set(e.toLowerCase(),t)})}},s=class{localeManager;constructor(){this.localeManager=o.getInstance()}format(e,t,n){let r=this.localeManager.getLocale(n),i=[],a=t.replace(/\[([^\]]+)\]/g,(e,t)=>(i.push(t),`~${i.length-1}~`));a=a.replace(/"([^"]*)"/g,(e,t)=>(i.push(t),`~${i.length-1}~`));let o=a.replace(/Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|SSS/g,t=>{switch(t){case`YYYY`:return String(e.year).padStart(4,`0`);case`YY`:return String(e.year).slice(-2);case`Y`:return String(e.year);case`MMMM`:return r.months[e.month-1];case`MMM`:return r.monthsShort[e.month-1];case`MM`:return String(e.month).padStart(2,`0`);case`M`:return String(e.month);case`DD`:return String(e.day).padStart(2,`0`);case`D`:return String(e.day);case`dddd`:return r.weekdays[e.dayOfWeek%7];case`ddd`:return r.weekdaysShort[e.dayOfWeek%7];case`dd`:return r.weekdaysMin[e.dayOfWeek%7];case`d`:return String(e.dayOfWeek);case`HH`:return String(e.hour).padStart(2,`0`);case`H`:return String(e.hour);case`hh`:return String(e.hour%12||12).padStart(2,`0`);case`h`:return String(e.hour%12||12);case`mm`:return String(e.minute).padStart(2,`0`);case`m`:return String(e.minute);case`ss`:return String(e.second).padStart(2,`0`);case`s`:return String(e.second);case`SSS`:return String(e.millisecond).padStart(3,`0`);case`a`:case`A`:let n=r.meridiem||{am:`am`,pm:`pm`},i=e.hour>=12?n.pm:n.am;return t===`a`?i.toLowerCase():i.toUpperCase();default:return t}});return i.forEach((e,t)=>{o=o.replace(`~${t}~`,e)}),o}getPreset(e){let t={iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`YYYY-MM-DD`,time:`HH:mm:ss`,datetime:`YYYY-MM-DD HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`,rfc3339:`YYYY-MM-DDTHH:mm:ssZ`,utc:`YYYY-MM-DDTHH:mm:ss[Z]`};return t[e]||t.iso}formatPreset(e,t,n){let r=this.getPreset(t);return this.format(e,r,n)}},c=class e{temporal;config;formatterInstance;constructor(e,t){if(this.formatterInstance=new s,this.config={locale:t?.locale||`en`,timezone:t?.timezone||`UTC`,strict:t?.strict??!1},this.temporal=r.parseToPlainDateTime(e),this.config.timezone&&this.config.timezone!==`UTC`)try{this.temporal=this.temporal.toZonedDateTime(this.config.timezone)}catch{}}static now(t){return new e(void 0,t)}static from(t,n){return new e(t,n)}static fromTemporal(t,n){let r=new e(void 0,n);return r.temporal=t,r}toTemporal(){return this.temporal}toDate(){return r.toDate(this.temporal)}toISOString(){return r.toISOString(this.temporal)}valueOf(){return r.toUnix(this.temporal)}unix(){return Math.floor(this.valueOf()/1e3)}toJSON(){return this.toISOString()}toString(){return this.format(`YYYY-MM-DD HH:mm:ss`)}locale(e){if(e===void 0)return this.config.locale;let t=this.clone();return t.config.locale=e,t}timezone(e){if(e===void 0)return this.config.timezone;let t=this.clone();t.config.timezone=e;try{t.temporal=r.toPlainDateTime(t.temporal).toZonedDateTime(e)}catch{}return t}format(e){let t=r.toPlainDateTime(this.temporal),n=[`iso`,`date`,`time`,`datetime`,`rfc2822`,`rfc3339`,`utc`].includes(e)?this.formatterInstance.getPreset(e):e;return this.formatterInstance.format(t,n,this.config.locale)}get(e){let t=r.toPlainDateTime(this.temporal);return e===`week`?t.weekOfYear:t[{year:`year`,month:`month`,week:`year`,day:`day`,hour:`hour`,minute:`minute`,second:`second`,millisecond:`millisecond`,microsecond:`microsecond`,nanosecond:`nanosecond`}[e]]}add(t){let n=r.toPlainDateTime(this.temporal),i={};return Object.entries(t).forEach(([e,t])=>{t!==void 0&&t!==0&&(i[e+`s`]=t)}),n=n.add(i),e.fromTemporal(n,this.config)}subtract(e){let t={};return Object.entries(e).forEach(([e,n])=>{t[e]=n?-n:0}),this.add(t)}diff(e,t=`millisecond`){let n=r.toPlainDateTime(this.temporal),i=r.toPlainDateTime(e.temporal),a={year:`years`,month:`months`,week:`weeks`,day:`days`,hour:`hours`,minute:`minutes`,second:`seconds`,millisecond:`milliseconds`,microsecond:`microseconds`,nanosecond:`nanoseconds`},o=n.since(i),s=a[t];return Math.round(o[s]||0)}isBefore(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);return t.compare(n)<0}isAfter(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);return t.compare(n)>0}isSame(e,t){if(!t)return r.toPlainDateTime(this.temporal).compare(r.toPlainDateTime(e.temporal))===0;let n=r.toPlainDateTime(this.temporal),i=r.toPlainDateTime(e.temporal);switch(t){case`year`:return n.year===i.year;case`month`:return n.year===i.year&&n.month===i.month;case`day`:return n.year===i.year&&n.month===i.month&&n.day===i.day;case`hour`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour;case`minute`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour&&n.minute===i.minute;case`second`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour&&n.minute===i.minute&&n.second===i.second;default:return!1}}isBetween(e,t,n,i=`[]`){let a=r.toPlainDateTime(this.temporal),o=r.toPlainDateTime(e.temporal),s=r.toPlainDateTime(t.temporal),c=!0,l=!0;if(n){let e=this.clone().startOf(n),t=this.clone().endOf(n),i=r.toPlainDateTime(e.temporal),a=r.toPlainDateTime(t.temporal);c=i.compare(o)>=0,l=a.compare(s)<=0}else c=a.compare(o)>=0,l=a.compare(s)<=0;let u=i[0]===`[`,d=i[1]===`]`;return(u?c:a.compare(o)>0)&&(d?l:a.compare(s)<0)}clone(){return new e(this.toDate(),this.config)}startOf(t){let n=r.toPlainDateTime(this.temporal),i={};switch(t){case`year`:i.month=1,i.day=1,i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`month`:i.day=1,i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`week`:case`day`:i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`hour`:i.minute=0,i.second=0,i.millisecond=0;break;case`minute`:i.second=0,i.millisecond=0;break;case`second`:i.millisecond=0;break}let a=n.with(i);return e.fromTemporal(a,this.config)}endOf(e){return this.startOf(e).add({[e]:1}).subtract({millisecond:1})}set(t){let n=r.toPlainDateTime(this.temporal).with(t);return e.fromTemporal(n,this.config)}year(){return r.toPlainDateTime(this.temporal).year}month(){return r.toPlainDateTime(this.temporal).month}day(){return r.toPlainDateTime(this.temporal).day}hour(){return r.toPlainDateTime(this.temporal).hour}minute(){return r.toPlainDateTime(this.temporal).minute}second(){return r.toPlainDateTime(this.temporal).second}millisecond(){return r.toPlainDateTime(this.temporal).millisecond}dayOfWeek(){return r.toPlainDateTime(this.temporal).dayOfWeek}dayOfYear(){return r.toPlainDateTime(this.temporal).dayOfYear}weekOfYear(){return r.toPlainDateTime(this.temporal).weekOfYear}daysInMonth(){return r.toPlainDateTime(this.temporal).add({months:1}).with({day:1}).subtract({days:1}).day}daysInYear(){let e=this.year();return e%4==0&&e%100!=0||e%400==0?366:365}inLeapYear(){let e=r.toPlainDateTime(this.temporal).year;return e%4==0&&e%100!=0||e%400==0}until(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);try{let e=n.since(t);return{years:Math.floor(e.years||0),months:Math.floor(e.months||0),days:Math.floor(e.days||0),hours:Math.floor(e.hours||0),minutes:Math.floor(e.minutes||0),seconds:Math.floor(e.seconds||0),milliseconds:Math.floor(e.milliseconds||0)}}catch{return{years:0,months:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0}}}round(e={}){let{smallestUnit:t=`millisecond`,roundingMode:n=`halfExpand`}=e,i=r.toPlainDateTime(this.temporal),a={year:i.year,month:i.month,day:i.day,hour:i.hour,minute:i.minute,second:i.second,millisecond:i.millisecond,microsecond:i.microsecond||0,nanosecond:i.nanosecond||0,week:0},o=[`year`,`month`,`day`,`hour`,`minute`,`second`,`millisecond`,`microsecond`,`nanosecond`],s=o.indexOf(t);if(s===-1)return this.clone();let c={};for(let e=0;e<s;e++){let t=o[e];c[t]=a[t]}let l=o[s],u=a[l];s+1<o.length&&((e,t)=>{switch(e){case`ceil`:return t>0;case`floor`:case`trunc`:return!1;case`halfExpand`:case`halfFloor`:case`halfCeil`:return t>=5;case`expand`:return t>0;default:return t>=5}})(n,a[o[s+1]])&&(u+=1),c[l]=u;for(let e=s+1;e<o.length;e++)c[o[e]]=0;return this.set(c)}toPlainDate(){let e=r.toPlainDateTime(this.temporal);return{year:e.year,month:e.month,day:e.day,dayOfWeek:e.dayOfWeek}}toPlainTime(){let e=r.toPlainDateTime(this.temporal);return{hour:e.hour,minute:e.minute,second:e.second,millisecond:e.millisecond}}withDate(e,t,n){return this.set({year:e,month:t,day:n})}withTime(e,t=0,n=0,r=0){return this.set({hour:e,minute:t,second:n,millisecond:r})}getOffset(){return this.temporal?.offset&&this.temporal.offset||`Z`}getOffsetNanoseconds(){return this.temporal?.offsetNanoseconds&&this.temporal.offsetNanoseconds||0}getTimeZoneId(){return this.temporal?.timeZoneId&&this.temporal.timeZoneId||null}startOfDay(){return this.startOf(`day`)}endOfDay(){return this.endOf(`day`)}since(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);try{let e=t.since(n);return{years:Math.floor(e.years||0),months:Math.floor(e.months||0),days:Math.floor(e.days||0),hours:Math.floor(e.hours||0),minutes:Math.floor(e.minutes||0),seconds:Math.floor(e.seconds||0),milliseconds:Math.floor(e.milliseconds||0)}}catch{return{years:0,months:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0}}}toDurationString(t){let n=t?this.until(t):this.until(e.now()),r=[];n.years&&r.push(`${n.years}Y`),n.months&&r.push(`${n.months}M`),n.days&&r.push(`${n.days}D`);let i=[];n.hours&&i.push(`${n.hours}H`),n.minutes&&i.push(`${n.minutes}M`),n.seconds&&i.push(`${n.seconds}S`);let a=`P${r.join(``)}${i.length>0?`T`+i.join(``):``}`;return a===`P`?`PT0S`:a}isPast(){return this.isBefore(e.now())}isFuture(){return this.isAfter(e.now())}isToday(){return this.isSame(e.now(),`day`)}isTomorrow(){return this.isSame(e.now().add({day:1}),`day`)}isYesterday(){return this.isSame(e.now().subtract({day:1}),`day`)}},l=class{id=`gregory`;name=`Gregorian Calendar`;locale=`en`;monthNames=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`];monthNamesShort=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];weekdayNames=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];weekdayNamesShort=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];getMonthName(e,t=!1){return(t?this.monthNamesShort:this.monthNames)[Math.max(0,Math.min(11,e-1))]}getWeekdayName(e,t=!1){return(t?this.weekdayNamesShort:this.weekdayNames)[Math.max(0,Math.min(6,e-1))]}isLeapYear(e){return e%4==0&&e%100!=0||e%400==0}daysInMonth(e,t){return t===2&&this.isLeapYear(e)?29:[31,28,31,30,31,30,31,31,30,31,30,31][Math.max(0,Math.min(11,t-1))]}daysInYear(e){return this.isLeapYear(e)?366:365}},u=class e{static instance;calendars=new Map;defaultCalendar=`gregory`;constructor(){this.register(new l)}static getInstance(){return e.instance||=new e,e.instance}register(e){this.calendars.set(e.id,e)}get(e){return this.calendars.get(e)}list(){return Array.from(this.calendars.keys())}setDefault(e){this.calendars.has(e)&&(this.defaultCalendar=e)}getDefault(){let e=this.calendars.get(this.defaultCalendar);if(!e)throw Error(`Default calendar '${this.defaultCalendar}' not found`);return e}},d=u.getInstance(),f=class e{static instance;plugins=new Map;static getInstance(){return e.instance||=new e,e.instance}static use(t,n,r){e.getInstance().register(t,n,r)}static useMultiple(t,n,r){let i=e.getInstance();t.forEach(e=>i.register(e,n,r))}static getPlugin(t){return e.getInstance().plugins.get(t)}static hasPlugin(t){return e.getInstance().plugins.has(t)}static listPlugins(){let t=e.getInstance();return Array.from(t.plugins.keys())}static unuse(t){return e.getInstance().plugins.delete(t)}static clear(){e.getInstance().plugins.clear()}register(e,t,n){if(this.plugins.has(e.name)){console.warn(`Plugin "${e.name}" is already registered. Skipping...`);return}try{e.install(t,n),this.plugins.set(e.name,e),console.debug(`Plugin "${e.name}" v${e.version} registered successfully`)}catch(t){throw console.error(`Failed to register plugin "${e.name}":`,t),Error(`Failed to register plugin "${e.name}": ${t instanceof Error?t.message:String(t)}`)}}};function p(e,t){return new c(e,t)}e.CalendarManager=u,e.DateFormatter=s,e.EN_LOCALE=i,e.ES_LOCALE=a,e.GregorianCalendar=l,e.LocaleManager=o,e.PluginManager=f,e.TemporalAdapter=r,e.TimeGuard=c,e.calendarManager=d,e.timeGuard=p,e.version=`2.0.3`});
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.BereasoftTimeGuard={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=null;function n(){if(t)return t;let e=globalThis.Temporal;if(!e)throw Error(`Temporal API not loaded. Make sure @js-temporal/polyfill is imported in your app.`);return t=e,e}var r=class{static parseToPlainDateTime(e){let t=n();return this.isPlainDateTime(e)?e:this.isZonedDateTime(e)?e.toPlainDateTime():this.isPlainDate(e)?e.toPlainDateTime({hour:0,minute:0,second:0,millisecond:0}):this.isPlainTime(e)?t.Now.plainDateTimeISO().with(e):typeof e==`object`&&e&&`getTime`in e&&typeof e.getTime==`function`?this.fromDate(e):typeof e==`number`?this.fromUnix(e):typeof e==`string`?this.parseISOString(e):typeof e==`object`&&e?this.fromObject(e):t.Now.plainDateTimeISO()}static fromDate(e){let t=n(),[r,i]=e.toISOString().split(`T`);return t.PlainDateTime.from(r+`T`+i.slice(0,-1))}static fromUnix(e){return this.fromDate(new Date(e))}static parseISOString(e){let t=n();try{if(e.includes(`T`)||/ \d{2}:\d{2}/.test(e)){let n=e.replace(` `,`T`);return t.PlainDateTime.from(n)}return t.PlainDate.from(e).toPlainDateTime({hour:0})}catch{return t.Now.plainDateTimeISO()}}static fromObject(e){let t=n(),r=e.year||t.Now.plainDateISO().year,i=e.month||1,a=e.day||1,o=e.hour||0,s=e.minute||0,c=e.second||0,l=e.millisecond||0;return t.PlainDateTime.from({year:r,month:i,day:a,hour:o,minute:s,second:c,millisecond:l})}static toDate(e){let t=this.toPlainDateTime(e);return new Date(t.toString())}static toUnix(e){let t=this.toPlainDateTime(e);return Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond)}static toISOString(e){return this.toPlainDateTime(e).toString()+`Z`}static toPlainDateTime(e){return this.isPlainDateTime(e)?e:e.toPlainDateTime()}static isPlainDateTime(e){return typeof e==`object`&&!!e&&`year`in e&&`month`in e&&`day`in e&&`hour`in e}static isZonedDateTime(e){return typeof e==`object`&&!!e&&`timeZone`in e}static isPlainDate(e){return typeof e==`object`&&!!e&&`year`in e&&`month`in e&&`day`in e&&!(`hour`in e)&&`toPlainDateTime`in e}static isPlainTime(e){return typeof e==`object`&&!!e&&`hour`in e&&!(`year`in e)}static now(){return n().Now.plainDateTimeISO()}static nowInTimezone(e){return n().Now.zonedDateTimeISO(e)}},i={name:`en`,months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],monthsShort:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],weekdays:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],weekdaysShort:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],weekdaysMin:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],meridiem:{am:`AM`,pm:`PM`},formats:{iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`YYYY-MM-DD`,time:`HH:mm:ss`,datetime:`YYYY-MM-DD HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`}},a={name:`es`,months:[`Enero`,`Febrero`,`Marzo`,`Abril`,`Mayo`,`Junio`,`Julio`,`Agosto`,`Septiembre`,`Octubre`,`Noviembre`,`Diciembre`],monthsShort:[`Ene`,`Feb`,`Mar`,`Abr`,`May`,`Jun`,`Jul`,`Ago`,`Sep`,`Oct`,`Nov`,`Dic`],weekdays:[`Domingo`,`Lunes`,`Martes`,`Miércoles`,`Jueves`,`Viernes`,`Sábado`],weekdaysShort:[`Dom`,`Lun`,`Mar`,`Mié`,`Jue`,`Vie`,`Sáb`],weekdaysMin:[`Do`,`Lu`,`Ma`,`Mi`,`Ju`,`Vi`,`Sa`],meridiem:{am:`AM`,pm:`PM`},formats:{iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`DD/MM/YYYY`,time:`HH:mm:ss`,datetime:`DD/MM/YYYY HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`}},o=class e{static instance;locales=new Map;currentLocale=`en`;static getInstance(){return e.instance||=new e,e.instance}constructor(){this.locales.set(`en`,i),this.locales.set(`es`,a)}setLocale(e,t){t&&this.locales.set(e.toLowerCase(),t),this.currentLocale=e.toLowerCase()}getLocale(e){let t=(e||this.currentLocale).toLowerCase();return this.locales.get(t)||this.locales.get(`en`)||i}listLocales(){return Array.from(this.locales.keys())}getCurrentLocale(){return this.currentLocale}loadLocales(e){Object.entries(e).forEach(([e,t])=>{this.locales.set(e.toLowerCase(),t)})}},s=class{localeManager;constructor(){this.localeManager=o.getInstance()}format(e,t,n){let r=this.localeManager.getLocale(n),i=[],a=t.replace(/\[([^\]]+)\]/g,(e,t)=>(i.push(t),`~${i.length-1}~`));a=a.replace(/"([^"]*)"/g,(e,t)=>(i.push(t),`~${i.length-1}~`));let o=a.replace(/Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|SSS/g,t=>{switch(t){case`YYYY`:return String(e.year).padStart(4,`0`);case`YY`:return String(e.year).slice(-2);case`Y`:return String(e.year);case`MMMM`:return r.months[e.month-1];case`MMM`:return r.monthsShort[e.month-1];case`MM`:return String(e.month).padStart(2,`0`);case`M`:return String(e.month);case`DD`:return String(e.day).padStart(2,`0`);case`D`:return String(e.day);case`dddd`:return r.weekdays[e.dayOfWeek%7];case`ddd`:return r.weekdaysShort[e.dayOfWeek%7];case`dd`:return r.weekdaysMin[e.dayOfWeek%7];case`d`:return String(e.dayOfWeek);case`HH`:return String(e.hour).padStart(2,`0`);case`H`:return String(e.hour);case`hh`:return String(e.hour%12||12).padStart(2,`0`);case`h`:return String(e.hour%12||12);case`mm`:return String(e.minute).padStart(2,`0`);case`m`:return String(e.minute);case`ss`:return String(e.second).padStart(2,`0`);case`s`:return String(e.second);case`SSS`:return String(e.millisecond).padStart(3,`0`);case`a`:case`A`:let n=r.meridiem||{am:`am`,pm:`pm`},i=e.hour>=12?n.pm:n.am;return t===`a`?i.toLowerCase():i.toUpperCase();default:return t}});return i.forEach((e,t)=>{o=o.replace(`~${t}~`,e)}),o}getPreset(e){let t={iso:`YYYY-MM-DDTHH:mm:ss.SSSZ`,date:`YYYY-MM-DD`,time:`HH:mm:ss`,datetime:`YYYY-MM-DD HH:mm:ss`,rfc2822:`ddd, DD MMM YYYY HH:mm:ss Z`,rfc3339:`YYYY-MM-DDTHH:mm:ssZ`,utc:`YYYY-MM-DDTHH:mm:ss[Z]`};return t[e]||t.iso}formatPreset(e,t,n){let r=this.getPreset(t);return this.format(e,r,n)}},c=class e{temporal;config;formatterInstance;constructor(e,t){if(this.formatterInstance=new s,this.config={locale:t?.locale||`en`,timezone:t?.timezone||`UTC`,strict:t?.strict??!1},this.temporal=r.parseToPlainDateTime(e),this.config.timezone&&this.config.timezone!==`UTC`)try{this.temporal=this.temporal.toZonedDateTime(this.config.timezone)}catch{}}static now(t){return new e(void 0,t)}static from(t,n){return new e(t,n)}static fromTemporal(t,n){let r=new e(void 0,n);return r.temporal=t,r}toTemporal(){return this.temporal}toDate(){return r.toDate(this.temporal)}toISOString(){return r.toISOString(this.temporal)}valueOf(){return r.toUnix(this.temporal)}unix(){return Math.floor(this.valueOf()/1e3)}toJSON(){return this.toISOString()}toString(){return this.format(`YYYY-MM-DD HH:mm:ss`)}locale(e){if(e===void 0)return this.config.locale;let t=this.clone();return t.config.locale=e,t}timezone(e){if(e===void 0)return this.config.timezone;let t=this.clone();t.config.timezone=e;try{t.temporal=r.toPlainDateTime(t.temporal).toZonedDateTime(e)}catch{}return t}format(e){let t=r.toPlainDateTime(this.temporal),n=[`iso`,`date`,`time`,`datetime`,`rfc2822`,`rfc3339`,`utc`].includes(e)?this.formatterInstance.getPreset(e):e;return this.formatterInstance.format(t,n,this.config.locale)}get(e){let t=r.toPlainDateTime(this.temporal);return e===`week`?t.weekOfYear:t[{year:`year`,month:`month`,week:`year`,day:`day`,hour:`hour`,minute:`minute`,second:`second`,millisecond:`millisecond`,microsecond:`microsecond`,nanosecond:`nanosecond`}[e]]}add(t){let n=r.toPlainDateTime(this.temporal),i={};return Object.entries(t).forEach(([e,t])=>{t!==void 0&&t!==0&&(i[e+`s`]=t)}),n=n.add(i),e.fromTemporal(n,this.config)}subtract(e){let t={};return Object.entries(e).forEach(([e,n])=>{t[e]=n?-n:0}),this.add(t)}diff(e,t=`millisecond`){let n=r.toPlainDateTime(this.temporal),i=r.toPlainDateTime(e.temporal),a={year:`years`,month:`months`,week:`weeks`,day:`days`,hour:`hours`,minute:`minutes`,second:`seconds`,millisecond:`milliseconds`,microsecond:`microseconds`,nanosecond:`nanoseconds`},o=n.since(i),s=a[t];return Math.round(o[s]||0)}isBefore(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);return t.compare(n)<0}isAfter(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);return t.compare(n)>0}isSame(e,t){if(!t)return r.toPlainDateTime(this.temporal).compare(r.toPlainDateTime(e.temporal))===0;let n=r.toPlainDateTime(this.temporal),i=r.toPlainDateTime(e.temporal);switch(t){case`year`:return n.year===i.year;case`month`:return n.year===i.year&&n.month===i.month;case`day`:return n.year===i.year&&n.month===i.month&&n.day===i.day;case`hour`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour;case`minute`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour&&n.minute===i.minute;case`second`:return n.year===i.year&&n.month===i.month&&n.day===i.day&&n.hour===i.hour&&n.minute===i.minute&&n.second===i.second;default:return!1}}isBetween(e,t,n,i=`[]`){let a=r.toPlainDateTime(this.temporal),o=r.toPlainDateTime(e.temporal),s=r.toPlainDateTime(t.temporal),c=!0,l=!0;if(n){let e=this.clone().startOf(n),t=this.clone().endOf(n),i=r.toPlainDateTime(e.temporal),a=r.toPlainDateTime(t.temporal);c=i.compare(o)>=0,l=a.compare(s)<=0}else c=a.compare(o)>=0,l=a.compare(s)<=0;let u=i[0]===`[`,d=i[1]===`]`;return(u?c:a.compare(o)>0)&&(d?l:a.compare(s)<0)}clone(){return new e(this.toDate(),this.config)}startOf(t){let n=r.toPlainDateTime(this.temporal),i={};switch(t){case`year`:i.month=1,i.day=1,i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`month`:i.day=1,i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`week`:case`day`:i.hour=0,i.minute=0,i.second=0,i.millisecond=0;break;case`hour`:i.minute=0,i.second=0,i.millisecond=0;break;case`minute`:i.second=0,i.millisecond=0;break;case`second`:i.millisecond=0;break}let a=n.with(i);return e.fromTemporal(a,this.config)}endOf(e){return this.startOf(e).add({[e]:1}).subtract({millisecond:1})}set(t){let n=r.toPlainDateTime(this.temporal).with(t);return e.fromTemporal(n,this.config)}year(){return r.toPlainDateTime(this.temporal).year}month(){return r.toPlainDateTime(this.temporal).month}day(){return r.toPlainDateTime(this.temporal).day}hour(){return r.toPlainDateTime(this.temporal).hour}minute(){return r.toPlainDateTime(this.temporal).minute}second(){return r.toPlainDateTime(this.temporal).second}millisecond(){return r.toPlainDateTime(this.temporal).millisecond}dayOfWeek(){return r.toPlainDateTime(this.temporal).dayOfWeek}dayOfYear(){return r.toPlainDateTime(this.temporal).dayOfYear}weekOfYear(){return r.toPlainDateTime(this.temporal).weekOfYear}daysInMonth(){return r.toPlainDateTime(this.temporal).add({months:1}).with({day:1}).subtract({days:1}).day}daysInYear(){let e=this.year();return e%4==0&&e%100!=0||e%400==0?366:365}inLeapYear(){let e=r.toPlainDateTime(this.temporal).year;return e%4==0&&e%100!=0||e%400==0}until(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);try{let e=n.since(t);return{years:Math.floor(e.years||0),months:Math.floor(e.months||0),days:Math.floor(e.days||0),hours:Math.floor(e.hours||0),minutes:Math.floor(e.minutes||0),seconds:Math.floor(e.seconds||0),milliseconds:Math.floor(e.milliseconds||0)}}catch{return{years:0,months:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0}}}round(e={}){let{smallestUnit:t=`millisecond`,roundingMode:n=`halfExpand`}=e,i=r.toPlainDateTime(this.temporal),a={year:i.year,month:i.month,day:i.day,hour:i.hour,minute:i.minute,second:i.second,millisecond:i.millisecond,microsecond:i.microsecond||0,nanosecond:i.nanosecond||0,week:0},o=[`year`,`month`,`day`,`hour`,`minute`,`second`,`millisecond`,`microsecond`,`nanosecond`],s=o.indexOf(t);if(s===-1)return this.clone();let c={};for(let e=0;e<s;e++){let t=o[e];c[t]=a[t]}let l=o[s],u=a[l];s+1<o.length&&((e,t)=>{switch(e){case`ceil`:return t>0;case`floor`:case`trunc`:return!1;case`halfExpand`:case`halfFloor`:case`halfCeil`:return t>=5;case`expand`:return t>0;default:return t>=5}})(n,a[o[s+1]])&&(u+=1),c[l]=u;for(let e=s+1;e<o.length;e++)c[o[e]]=0;return this.set(c)}toPlainDate(){let e=r.toPlainDateTime(this.temporal);return{year:e.year,month:e.month,day:e.day,dayOfWeek:e.dayOfWeek}}toPlainTime(){let e=r.toPlainDateTime(this.temporal);return{hour:e.hour,minute:e.minute,second:e.second,millisecond:e.millisecond}}withDate(e,t,n){return this.set({year:e,month:t,day:n})}withTime(e,t=0,n=0,r=0){return this.set({hour:e,minute:t,second:n,millisecond:r})}getOffset(){return this.temporal?.offset&&this.temporal.offset||`Z`}getOffsetNanoseconds(){return this.temporal?.offsetNanoseconds&&this.temporal.offsetNanoseconds||0}getTimeZoneId(){return this.temporal?.timeZoneId&&this.temporal.timeZoneId||null}startOfDay(){return this.startOf(`day`)}endOfDay(){return this.endOf(`day`)}since(e){let t=r.toPlainDateTime(this.temporal),n=r.toPlainDateTime(e.temporal);try{let e=t.since(n);return{years:Math.floor(e.years||0),months:Math.floor(e.months||0),days:Math.floor(e.days||0),hours:Math.floor(e.hours||0),minutes:Math.floor(e.minutes||0),seconds:Math.floor(e.seconds||0),milliseconds:Math.floor(e.milliseconds||0)}}catch{return{years:0,months:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0}}}toDurationString(t){let n=t?this.until(t):this.until(e.now()),r=[];n.years&&r.push(`${n.years}Y`),n.months&&r.push(`${n.months}M`),n.days&&r.push(`${n.days}D`);let i=[];n.hours&&i.push(`${n.hours}H`),n.minutes&&i.push(`${n.minutes}M`),n.seconds&&i.push(`${n.seconds}S`);let a=`P${r.join(``)}${i.length>0?`T`+i.join(``):``}`;return a===`P`?`PT0S`:a}isPast(){return this.isBefore(e.now())}isFuture(){return this.isAfter(e.now())}isToday(){return this.isSame(e.now(),`day`)}isTomorrow(){return this.isSame(e.now().add({day:1}),`day`)}isYesterday(){return this.isSame(e.now().subtract({day:1}),`day`)}},l=class{id=`gregory`;name=`Gregorian Calendar`;locale=`en`;monthNames=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`];monthNamesShort=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];weekdayNames=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];weekdayNamesShort=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];getMonthName(e,t=!1){return(t?this.monthNamesShort:this.monthNames)[Math.max(0,Math.min(11,e-1))]}getWeekdayName(e,t=!1){return(t?this.weekdayNamesShort:this.weekdayNames)[Math.max(0,Math.min(6,e-1))]}isLeapYear(e){return e%4==0&&e%100!=0||e%400==0}daysInMonth(e,t){return t===2&&this.isLeapYear(e)?29:[31,28,31,30,31,30,31,31,30,31,30,31][Math.max(0,Math.min(11,t-1))]}daysInYear(e){return this.isLeapYear(e)?366:365}},u=class e{static instance;calendars=new Map;defaultCalendar=`gregory`;constructor(){this.register(new l)}static getInstance(){return e.instance||=new e,e.instance}register(e){this.calendars.set(e.id,e)}get(e){return this.calendars.get(e)}list(){return Array.from(this.calendars.keys())}setDefault(e){this.calendars.has(e)&&(this.defaultCalendar=e)}getDefault(){let e=this.calendars.get(this.defaultCalendar);if(!e)throw Error(`Default calendar '${this.defaultCalendar}' not found`);return e}},d=u.getInstance(),f=class e{static instance;plugins=new Map;static getInstance(){return e.instance||=new e,e.instance}static use(t,n,r){e.getInstance().register(t,n,r)}static useMultiple(t,n,r){let i=e.getInstance();t.forEach(e=>i.register(e,n,r))}static getPlugin(t){return e.getInstance().plugins.get(t)}static hasPlugin(t){return e.getInstance().plugins.has(t)}static listPlugins(){let t=e.getInstance();return Array.from(t.plugins.keys())}static unuse(t){return e.getInstance().plugins.delete(t)}static clear(){e.getInstance().plugins.clear()}register(e,t,n){if(this.plugins.has(e.name)){console.warn(`Plugin "${e.name}" is already registered. Skipping...`);return}try{e.install(t,n),this.plugins.set(e.name,e),console.debug(`Plugin "${e.name}" v${e.version} registered successfully`)}catch(t){throw console.error(`Failed to register plugin "${e.name}":`,t),Error(`Failed to register plugin "${e.name}": ${t instanceof Error?t.message:String(t)}`)}}};function p(e,t){return new c(e,t)}e.CalendarManager=u,e.DateFormatter=s,e.EN_LOCALE=i,e.ES_LOCALE=a,e.GregorianCalendar=l,e.LocaleManager=o,e.PluginManager=f,e.TemporalAdapter=r,e.TimeGuard=c,e.calendarManager=d,e.timeGuard=p,e.version=`2.0.5`});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {}
|
|
1
|
+
export { IslamicCalendar, HebrewCalendar, ChineseCalendar, JapaneseCalendar, BuddhistCalendar } from './time-guard';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './time-guard';
|
package/dist/types/locales.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {}
|
|
1
|
+
export { getAvailableLocales, LOCALES_COUNT, ALL_LOCALES, registerAllLocales } from './time-guard';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {}
|
|
1
|
+
export { }
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bereasoftware/time-guard",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.5",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"main": "./dist/time-guard.cjs",
|
|
8
8
|
"module": "./dist/time-guard.es.js",
|
|
9
|
-
"types": "./dist/types/
|
|
9
|
+
"types": "./dist/types/time-guard.d.ts",
|
|
10
10
|
"unpkg": "./dist/time-guard.umd.js",
|
|
11
11
|
"browser": {
|
|
12
12
|
"./dist/time-guard.umd.js": "./dist/time-guard.umd.js",
|
|
@@ -17,46 +17,46 @@
|
|
|
17
17
|
"import": "./dist/time-guard.es.js",
|
|
18
18
|
"require": "./dist/time-guard.cjs",
|
|
19
19
|
"browser": "./dist/time-guard.umd.js",
|
|
20
|
-
"types": "./dist/types/
|
|
20
|
+
"types": "./dist/types/time-guard.d.ts"
|
|
21
21
|
},
|
|
22
22
|
"./full": {
|
|
23
|
+
"types": "./dist/types/full.d.ts",
|
|
23
24
|
"import": "./dist/full.es.js",
|
|
24
|
-
"require": "./dist/full.cjs"
|
|
25
|
-
"types": "./dist/types/full.d.ts"
|
|
25
|
+
"require": "./dist/full.cjs"
|
|
26
26
|
},
|
|
27
27
|
"./locales": {
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
28
|
+
"types": "./dist/types/locales.d.ts",
|
|
29
|
+
"import": "./dist/locales/index.es.js",
|
|
30
|
+
"require": "./dist/locales/index.cjs"
|
|
31
31
|
},
|
|
32
32
|
"./calendars": {
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
33
|
+
"types": "./dist/types/calendars.d.ts",
|
|
34
|
+
"import": "./dist/calendars/index.es.js",
|
|
35
|
+
"require": "./dist/calendars/index.cjs"
|
|
36
36
|
},
|
|
37
37
|
"./plugins/relative-time": {
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
38
|
+
"types": "./dist/types/plugins/relative-time.d.ts",
|
|
39
|
+
"import": "./dist/plugins/relative-time.es.js",
|
|
40
|
+
"require": "./dist/plugins/relative-time.cjs"
|
|
41
41
|
},
|
|
42
42
|
"./plugins/duration": {
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
43
|
+
"types": "./dist/types/plugins/duration.d.ts",
|
|
44
|
+
"import": "./dist/plugins/duration.es.js",
|
|
45
|
+
"require": "./dist/plugins/duration.cjs"
|
|
46
46
|
},
|
|
47
47
|
"./plugins/advanced-format": {
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
48
|
+
"types": "./dist/types/plugins/advanced-format.d.ts",
|
|
49
|
+
"import": "./dist/plugins/advanced-format.es.js",
|
|
50
|
+
"require": "./dist/plugins/advanced-format.cjs"
|
|
51
51
|
},
|
|
52
52
|
"./umd": {
|
|
53
|
-
"types": "./dist/types/
|
|
53
|
+
"types": "./dist/types/time-guard.d.ts",
|
|
54
54
|
"import": "./dist/time-guard.umd.js",
|
|
55
55
|
"require": "./dist/time-guard.umd.js",
|
|
56
56
|
"browser": "./dist/time-guard.umd.js"
|
|
57
57
|
},
|
|
58
58
|
"./iife": {
|
|
59
|
-
"types": "./dist/types/
|
|
59
|
+
"types": "./dist/types/time-guard.d.ts",
|
|
60
60
|
"import": "./dist/time-guard.iife.js",
|
|
61
61
|
"require": "./dist/time-guard.iife.js",
|
|
62
62
|
"browser": "./dist/time-guard.iife.js"
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
],
|
|
116
116
|
"scripts": {
|
|
117
117
|
"dev": "vite",
|
|
118
|
-
"build": "vite build && vite build --mode full && vite build --mode umd",
|
|
118
|
+
"build": "vite build && vite build --mode full && vite build --mode umd && node generate-type-proxies.mjs",
|
|
119
119
|
"test": "vitest run",
|
|
120
120
|
"test:watch": "vitest",
|
|
121
121
|
"release": "standard-version",
|
|
@@ -128,6 +128,7 @@
|
|
|
128
128
|
},
|
|
129
129
|
"devDependencies": {
|
|
130
130
|
"@js-temporal/polyfill": "^0.5.1",
|
|
131
|
+
"@microsoft/api-extractor": "^7.52.8",
|
|
131
132
|
"@types/node": "^25.5.0",
|
|
132
133
|
"standard-version": "^9.5.0",
|
|
133
134
|
"typescript": "~6.0.2",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Temporal } from '@js-temporal/polyfill';
|
|
2
|
-
type TemporalPlainDateTime = Temporal.PlainDateTime;
|
|
3
|
-
type TemporalZonedDateTime = Temporal.ZonedDateTime;
|
|
4
|
-
/**
|
|
5
|
-
* Adapter for Temporal date/time operations
|
|
6
|
-
*/
|
|
7
|
-
export declare class TemporalAdapter {
|
|
8
|
-
/**
|
|
9
|
-
* Parse various input formats to Temporal.PlainDateTime
|
|
10
|
-
*/
|
|
11
|
-
static parseToPlainDateTime(input: unknown): TemporalPlainDateTime;
|
|
12
|
-
/**
|
|
13
|
-
* Convert JavaScript Date to Temporal.PlainDateTime
|
|
14
|
-
*/
|
|
15
|
-
static fromDate(date: Date): TemporalPlainDateTime;
|
|
16
|
-
/**
|
|
17
|
-
* Convert Unix timestamp (milliseconds) to Temporal.PlainDateTime
|
|
18
|
-
*/
|
|
19
|
-
static fromUnix(timestamp: number): TemporalPlainDateTime;
|
|
20
|
-
/**
|
|
21
|
-
* Parse ISO string to Temporal.PlainDateTime
|
|
22
|
-
*/
|
|
23
|
-
static parseISOString(iso: string): TemporalPlainDateTime;
|
|
24
|
-
/**
|
|
25
|
-
* Create from object with date components
|
|
26
|
-
*/
|
|
27
|
-
static fromObject(obj: Record<string, any>): TemporalPlainDateTime;
|
|
28
|
-
/**
|
|
29
|
-
* Convert Temporal.PlainDateTime to JavaScript Date
|
|
30
|
-
*/
|
|
31
|
-
static toDate(temporal: TemporalPlainDateTime | TemporalZonedDateTime): Date;
|
|
32
|
-
/**
|
|
33
|
-
* Convert to Unix timestamp (milliseconds)
|
|
34
|
-
*/
|
|
35
|
-
static toUnix(temporal: TemporalPlainDateTime | TemporalZonedDateTime): number;
|
|
36
|
-
/**
|
|
37
|
-
* Convert to ISO string
|
|
38
|
-
*/
|
|
39
|
-
static toISOString(temporal: TemporalPlainDateTime | TemporalZonedDateTime): string;
|
|
40
|
-
/**
|
|
41
|
-
* Ensure we have a PlainDateTime
|
|
42
|
-
*/
|
|
43
|
-
static toPlainDateTime(temporal: TemporalPlainDateTime | TemporalZonedDateTime): TemporalPlainDateTime;
|
|
44
|
-
/**
|
|
45
|
-
* Type guards
|
|
46
|
-
*/
|
|
47
|
-
static isPlainDateTime(obj: unknown): obj is TemporalPlainDateTime;
|
|
48
|
-
static isZonedDateTime(obj: unknown): obj is TemporalZonedDateTime;
|
|
49
|
-
static isPlainDate(obj: unknown): obj is any;
|
|
50
|
-
static isPlainTime(obj: unknown): obj is any;
|
|
51
|
-
/**
|
|
52
|
-
* Get current time as PlainDateTime
|
|
53
|
-
*/
|
|
54
|
-
static now(): TemporalPlainDateTime;
|
|
55
|
-
/**
|
|
56
|
-
* Get current time as ZonedDateTime with timezone
|
|
57
|
-
*/
|
|
58
|
-
static nowInTimezone(timezone: string): TemporalZonedDateTime;
|
|
59
|
-
}
|
|
60
|
-
export {};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { ICalendarSystem, ICalendarManager } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Gregorian Calendar System (ISO 8601 default)
|
|
4
|
-
*/
|
|
5
|
-
export declare class GregorianCalendar implements ICalendarSystem {
|
|
6
|
-
readonly id = "gregory";
|
|
7
|
-
readonly name = "Gregorian Calendar";
|
|
8
|
-
readonly locale = "en";
|
|
9
|
-
private monthNames;
|
|
10
|
-
private monthNamesShort;
|
|
11
|
-
private weekdayNames;
|
|
12
|
-
private weekdayNamesShort;
|
|
13
|
-
getMonthName(month: number, short?: boolean): string;
|
|
14
|
-
getWeekdayName(day: number, short?: boolean): string;
|
|
15
|
-
isLeapYear(year: number): boolean;
|
|
16
|
-
daysInMonth(year: number, month: number): number;
|
|
17
|
-
daysInYear(year: number): number;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Calendar Manager - Singleton for managing calendar systems
|
|
21
|
-
*/
|
|
22
|
-
export declare class CalendarManager implements ICalendarManager {
|
|
23
|
-
private static instance;
|
|
24
|
-
private calendars;
|
|
25
|
-
private defaultCalendar;
|
|
26
|
-
private constructor();
|
|
27
|
-
/**
|
|
28
|
-
* Get singleton instance
|
|
29
|
-
*/
|
|
30
|
-
static getInstance(): CalendarManager;
|
|
31
|
-
/**
|
|
32
|
-
* Register a new calendar system
|
|
33
|
-
*/
|
|
34
|
-
register(calendar: ICalendarSystem): void;
|
|
35
|
-
/**
|
|
36
|
-
* Get calendar by ID
|
|
37
|
-
*/
|
|
38
|
-
get(id: string): ICalendarSystem | undefined;
|
|
39
|
-
/**
|
|
40
|
-
* List all available calendars
|
|
41
|
-
*/
|
|
42
|
-
list(): string[];
|
|
43
|
-
/**
|
|
44
|
-
* Set default calendar
|
|
45
|
-
*/
|
|
46
|
-
setDefault(id: string): void;
|
|
47
|
-
/**
|
|
48
|
-
* Get default calendar
|
|
49
|
-
*/
|
|
50
|
-
getDefault(): ICalendarSystem;
|
|
51
|
-
}
|
|
52
|
-
export declare const calendarManager: CalendarManager;
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { ICalendarSystem } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Islamic Calendar (Hijri)
|
|
4
|
-
* @experimental Uses simplified calculations. May not be accurate for all dates.
|
|
5
|
-
*/
|
|
6
|
-
export declare class IslamicCalendar implements ICalendarSystem {
|
|
7
|
-
readonly id = "islamic";
|
|
8
|
-
readonly name = "Islamic Calendar (Hijri)";
|
|
9
|
-
readonly locale = "ar";
|
|
10
|
-
private monthNames;
|
|
11
|
-
getMonthName(month: number): string;
|
|
12
|
-
getWeekdayName(day: number, short?: boolean): string;
|
|
13
|
-
isLeapYear(year: number): boolean;
|
|
14
|
-
daysInMonth(year: number, month: number): number;
|
|
15
|
-
daysInYear(year: number): number;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Hebrew Calendar
|
|
19
|
-
* @experimental Uses simplified calculations. May not be accurate for all dates.
|
|
20
|
-
*/
|
|
21
|
-
export declare class HebrewCalendar implements ICalendarSystem {
|
|
22
|
-
readonly id = "hebrew";
|
|
23
|
-
readonly name = "Hebrew Calendar";
|
|
24
|
-
readonly locale = "he";
|
|
25
|
-
private monthNames;
|
|
26
|
-
getMonthName(month: number): string;
|
|
27
|
-
getWeekdayName(day: number, short?: boolean): string;
|
|
28
|
-
isLeapYear(year: number): boolean;
|
|
29
|
-
daysInMonth(_year: number, month: number): number;
|
|
30
|
-
daysInYear(year: number): number;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Chinese Calendar
|
|
34
|
-
* @experimental Uses simplified calculations. May not be accurate for all dates.
|
|
35
|
-
*/
|
|
36
|
-
export declare class ChineseCalendar implements ICalendarSystem {
|
|
37
|
-
readonly id = "chinese";
|
|
38
|
-
readonly name = "Chinese Calendar";
|
|
39
|
-
readonly locale = "zh";
|
|
40
|
-
private monthNames;
|
|
41
|
-
private terrestrialBranches;
|
|
42
|
-
getMonthName(month: number): string;
|
|
43
|
-
getWeekdayName(day: number, short?: boolean): string;
|
|
44
|
-
isLeapYear(year: number): boolean;
|
|
45
|
-
daysInMonth(_year: number, month: number): number;
|
|
46
|
-
daysInYear(year: number): number;
|
|
47
|
-
/**
|
|
48
|
-
* Get zodiac sign for year
|
|
49
|
-
*/
|
|
50
|
-
getZodiacSign(year: number): string;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Japanese Calendar
|
|
54
|
-
* @experimental Uses Gregorian rules post-1873. Historical dates may not be accurate.
|
|
55
|
-
*/
|
|
56
|
-
export declare class JapaneseCalendar implements ICalendarSystem {
|
|
57
|
-
readonly id = "japanese";
|
|
58
|
-
readonly name = "Japanese Calendar";
|
|
59
|
-
readonly locale = "ja";
|
|
60
|
-
private monthNames;
|
|
61
|
-
getMonthName(month: number): string;
|
|
62
|
-
getWeekdayName(day: number, short?: boolean): string;
|
|
63
|
-
isLeapYear(year: number): boolean;
|
|
64
|
-
daysInMonth(year: number, month: number): number;
|
|
65
|
-
daysInYear(year: number): number;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Buddhist Calendar
|
|
69
|
-
* @experimental Uses Gregorian rules with BE year offset (CE + 543).
|
|
70
|
-
*/
|
|
71
|
-
export declare class BuddhistCalendar implements ICalendarSystem {
|
|
72
|
-
readonly id = "buddhist";
|
|
73
|
-
readonly name = "Buddhist Calendar";
|
|
74
|
-
readonly locale = "th";
|
|
75
|
-
private monthNames;
|
|
76
|
-
getMonthName(month: number): string;
|
|
77
|
-
getWeekdayName(day: number): string;
|
|
78
|
-
isLeapYear(year: number): boolean;
|
|
79
|
-
daysInMonth(year: number, month: number): number;
|
|
80
|
-
daysInYear(year: number): number;
|
|
81
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { IDateFormatter, FormatPreset } from '../types';
|
|
2
|
-
import { Temporal } from '@js-temporal/polyfill';
|
|
3
|
-
/**
|
|
4
|
-
* Date Formatter implementation
|
|
5
|
-
*/
|
|
6
|
-
export declare class DateFormatter implements IDateFormatter {
|
|
7
|
-
private localeManager;
|
|
8
|
-
constructor();
|
|
9
|
-
/**
|
|
10
|
-
* Format date with pattern and locale
|
|
11
|
-
*/
|
|
12
|
-
format(date: Temporal.PlainDateTime, pattern: string, locale?: string): string;
|
|
13
|
-
/**
|
|
14
|
-
* Get format pattern for preset
|
|
15
|
-
*/
|
|
16
|
-
getPreset(preset: FormatPreset): string;
|
|
17
|
-
/**
|
|
18
|
-
* Format with preset
|
|
19
|
-
*/
|
|
20
|
-
formatPreset(date: Temporal.PlainDateTime, preset: FormatPreset, locale?: string): string;
|
|
21
|
-
}
|
package/dist/types/src/full.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from './index';
|
|
2
|
-
export { getAvailableLocales, LOCALES_COUNT, ALL_LOCALES, registerAllLocales } from './locales/index';
|
|
3
|
-
export { IslamicCalendar, HebrewCalendar, ChineseCalendar, JapaneseCalendar, BuddhistCalendar, } from './calendars/index';
|
|
4
|
-
export { RelativeTimePlugin, default as relativeTimePlugin } from './plugins/relative-time';
|
|
5
|
-
export type { RelativeTimeConfig, RelativeTimeFormats, RelativeTimeThreshold } from './plugins/relative-time/types';
|
|
6
|
-
export { DurationPlugin, Duration, default as durationPlugin } from './plugins/duration';
|
|
7
|
-
export type { IDuration, DurationInput, DurationObject, DurationUnit } from './plugins/duration/types';
|
|
8
|
-
export { AdvancedFormatPlugin, default as advancedFormatPlugin } from './plugins/advanced-format';
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { TimeGuard } from './time-guard';
|
|
2
|
-
import { ITimeGuardConfig } from './types';
|
|
3
|
-
/**
|
|
4
|
-
* TimeGuard - Modern date/time library using Temporal API
|
|
5
|
-
* Lightweight core: ~5KB (without polyfill)
|
|
6
|
-
*
|
|
7
|
-
* Locales, plugins, and calendars are loaded on demand:
|
|
8
|
-
* import { ALL_LOCALES, registerAllLocales } from '@bereasoftware/time-guard/locales'
|
|
9
|
-
* import { RelativeTimePlugin } from '@bereasoftware/time-guard/plugins/relative-time'
|
|
10
|
-
* import { IslamicCalendar } from '@bereasoftware/time-guard/calendars'
|
|
11
|
-
*
|
|
12
|
-
* @author Berea-Soft
|
|
13
|
-
* @license MIT
|
|
14
|
-
*/
|
|
15
|
-
export { TimeGuard } from './time-guard';
|
|
16
|
-
export type { ITimeGuard, ITimeGuardConfig, ITimeGuardFactory, ITimeGuardPlugin, IDateParser, IDateFormatter, ILocaleManager, IDateArithmetic, IDateQuery, IDateManipulation, ITimezoneAdapter, ICalendarSystem, ICalendarManager, IRoundOptions, Unit, FormatPreset, ILocale, } from './types';
|
|
17
|
-
export { TemporalAdapter } from './adapters/temporal.adapter';
|
|
18
|
-
export { LocaleManager, EN_LOCALE, ES_LOCALE } from './locales/locale.manager';
|
|
19
|
-
export { DateFormatter } from './formatters/date.formatter';
|
|
20
|
-
export { CalendarManager, GregorianCalendar, calendarManager, } from './calendars/calendar.manager';
|
|
21
|
-
export { PluginManager } from './plugins/manager';
|
|
22
|
-
export declare function timeGuard(input?: unknown, config?: ITimeGuardConfig): TimeGuard;
|
|
23
|
-
export declare const version: string;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const JA_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const ZH_CN_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const ZH_TW_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const KO_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const TH_LOCALE_DATA: ILocale;
|
|
7
|
-
export declare const VI_LOCALE_DATA: ILocale;
|
|
8
|
-
export declare const ID_LOCALE_DATA: ILocale;
|
|
9
|
-
export declare const ASIAN_LOCALES: Record<string, ILocale>;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const EN_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const EN_AU_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const EN_GB_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const EN_CA_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const ENGLISH_LOCALES: Record<string, ILocale>;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const DE_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const NL_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const EL_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const HU_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const EU_LOCALE_DATA: ILocale;
|
|
7
|
-
export declare const CA_LOCALE_DATA: ILocale;
|
|
8
|
-
export declare const TR_LOCALE_DATA: ILocale;
|
|
9
|
-
export declare const EUROPEAN_LOCALES: Record<string, ILocale>;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Aggregated locale data from all modules
|
|
4
|
-
*/
|
|
5
|
-
export declare const ALL_LOCALES: Record<string, ILocale>;
|
|
6
|
-
/**
|
|
7
|
-
* Register all locales into a locale map
|
|
8
|
-
*/
|
|
9
|
-
export declare function registerAllLocales(localeMap: Map<string, ILocale> | Record<string, ILocale>): void;
|
|
10
|
-
/**
|
|
11
|
-
* Get all available locales
|
|
12
|
-
*/
|
|
13
|
-
export declare function getAvailableLocales(): string[];
|
|
14
|
-
/**
|
|
15
|
-
* Total locales count (minimum 40 required)
|
|
16
|
-
*/
|
|
17
|
-
export declare const LOCALES_COUNT = 40;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { ILocale, ILocaleManager } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* English locale data
|
|
4
|
-
*/
|
|
5
|
-
export declare const EN_LOCALE: ILocale;
|
|
6
|
-
/**
|
|
7
|
-
* Spanish locale data (sample for i18n support)
|
|
8
|
-
*/
|
|
9
|
-
export declare const ES_LOCALE: ILocale;
|
|
10
|
-
/**
|
|
11
|
-
* Locale Manager - implements ILocaleManager
|
|
12
|
-
*/
|
|
13
|
-
export declare class LocaleManager implements ILocaleManager {
|
|
14
|
-
private static instance;
|
|
15
|
-
private locales;
|
|
16
|
-
private currentLocale;
|
|
17
|
-
/**
|
|
18
|
-
* Singleton pattern
|
|
19
|
-
*/
|
|
20
|
-
static getInstance(): LocaleManager;
|
|
21
|
-
private constructor();
|
|
22
|
-
/**
|
|
23
|
-
* Set or register a locale
|
|
24
|
-
*/
|
|
25
|
-
setLocale(locale: string, data?: ILocale): void;
|
|
26
|
-
/**
|
|
27
|
-
* Get locale information
|
|
28
|
-
*/
|
|
29
|
-
getLocale(locale?: string): ILocale;
|
|
30
|
-
/**
|
|
31
|
-
* List all registered locales
|
|
32
|
-
*/
|
|
33
|
-
listLocales(): string[];
|
|
34
|
-
/**
|
|
35
|
-
* Get current locale
|
|
36
|
-
*/
|
|
37
|
-
getCurrentLocale(): string;
|
|
38
|
-
/**
|
|
39
|
-
* Load multiple locales
|
|
40
|
-
*/
|
|
41
|
-
loadLocales(locales: Record<string, ILocale>): void;
|
|
42
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Locale data record for all supported languages
|
|
4
|
-
*/
|
|
5
|
-
export declare const LOCALES_DATA: Record<string, ILocale>;
|
|
6
|
-
/**
|
|
7
|
-
* Dynamically register all locales
|
|
8
|
-
*/
|
|
9
|
-
export declare function registerAllLocales(localeMap: Map<string, ILocale> | Record<string, ILocale>): void;
|
|
10
|
-
/**
|
|
11
|
-
* Get all available locales
|
|
12
|
-
*/
|
|
13
|
-
export declare function getAvailableLocales(): string[];
|
|
14
|
-
/**
|
|
15
|
-
* Total locales count
|
|
16
|
-
*/
|
|
17
|
-
export declare const LOCALES_COUNT: number;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const SV_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const NB_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const DA_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const FI_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const NORDIC_LOCALES: Record<string, ILocale>;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const FR_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const IT_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const PT_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const PT_BR_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const RO_LOCALE_DATA: ILocale;
|
|
7
|
-
export declare const ROMANCE_LOCALES: Record<string, ILocale>;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { ILocale } from '../types';
|
|
2
|
-
export declare const RU_LOCALE_DATA: ILocale;
|
|
3
|
-
export declare const PL_LOCALE_DATA: ILocale;
|
|
4
|
-
export declare const CS_LOCALE_DATA: ILocale;
|
|
5
|
-
export declare const SK_LOCALE_DATA: ILocale;
|
|
6
|
-
export declare const SLAVIC_LOCALES: Record<string, ILocale>;
|