@chayns-components/date 5.0.0-beta.739 → 5.0.0-beta.743
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/lib/cjs/utils/calendar.js.map +1 -1
- package/lib/cjs/utils/dateInfo.js +11 -21
- package/lib/cjs/utils/dateInfo.js.map +1 -1
- package/lib/esm/utils/calendar.js.map +1 -1
- package/lib/esm/utils/dateInfo.js +1 -10
- package/lib/esm/utils/dateInfo.js.map +1 -1
- package/lib/types/utils/calendar.d.ts +1 -0
- package/lib/types/utils/dateInfo.d.ts +1 -0
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.js","names":["_dateFns","require","getMonthAndYear","date","month","getMonth","year","String","getFullYear","exports","isDateInRange","startDate","endDate","currentDate","monthStartOfCurrentDate","startOfMonth","monthStartOfEndDate","monthStartOfStartDate","isAfter","isBefore","getNewDate","index","newDate","Date","setMonth","setFullYear","formatMonth","locale","format"],"sources":["../../../src/utils/calendar.ts"],"sourcesContent":["import { format, isAfter, isBefore, startOfMonth } from 'date-fns';\nimport type { EMonth, IMonth } from '../types/calendar';\n\nexport const getMonthAndYear = (date: Date): IMonth => {\n const month = date.getMonth() + 1;\n\n const year = String(date.getFullYear());\n\n return {\n month,\n year,\n };\n};\n\ninterface FormatMonthOptions {\n month: EMonth;\n locale: Locale;\n}\n\ninterface IsDateInRange {\n startDate: Date;\n endDate: Date;\n currentDate: Date;\n}\n\nexport const isDateInRange = ({ startDate, endDate, currentDate }: IsDateInRange): Date => {\n const monthStartOfCurrentDate = startOfMonth(currentDate);\n const monthStartOfEndDate = startOfMonth(endDate);\n const monthStartOfStartDate = startOfMonth(startDate);\n\n switch (true) {\n case isAfter(monthStartOfCurrentDate, monthStartOfEndDate):\n return monthStartOfEndDate;\n case isBefore(monthStartOfCurrentDate, monthStartOfStartDate):\n return monthStartOfStartDate;\n default:\n return monthStartOfCurrentDate;\n }\n};\n\nexport const getNewDate = (index: number, currentDate: Date) => {\n const newDate = new Date(currentDate);\n newDate.setMonth(currentDate.getMonth() + index);\n\n if (currentDate.getMonth() === 11 && newDate.getMonth() === 0) {\n newDate.setFullYear(currentDate.getFullYear() + 1);\n }\n\n if (currentDate.getMonth() === 0 && newDate.getMonth() === 11) {\n newDate.setFullYear(currentDate.getFullYear() - 1);\n }\n\n return newDate;\n};\n\nexport const formatMonth = ({ month, locale }: FormatMonthOptions) =>\n format(new Date(2022, month - 1, 1), 'MMMM', { locale });\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGO,MAAMC,eAAe,GAAIC,IAAU,IAAa;EACnD,MAAMC,KAAK,GAAGD,IAAI,CAACE,QAAQ,CAAC,CAAC,GAAG,CAAC;EAEjC,MAAMC,IAAI,GAAGC,MAAM,CAACJ,IAAI,CAACK,WAAW,CAAC,CAAC,CAAC;EAEvC,OAAO;IACHJ,KAAK;IACLE;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAP,eAAA,GAAAA,eAAA;AAaK,MAAMQ,aAAa,GAAGA,CAAC;EAAEC,SAAS;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAW;EACvF,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAACF,WAAW,CAAC;EACzD,MAAMG,mBAAmB,GAAG,IAAAD,qBAAY,EAACH,OAAO,CAAC;EACjD,MAAMK,qBAAqB,GAAG,IAAAF,qBAAY,EAACJ,SAAS,CAAC;EAErD,QAAQ,IAAI;IACR,KAAK,IAAAO,gBAAO,EAACJ,uBAAuB,EAAEE,mBAAmB,CAAC;MACtD,OAAOA,mBAAmB;IAC9B,KAAK,IAAAG,iBAAQ,EAACL,uBAAuB,EAAEG,qBAAqB,CAAC;MACzD,OAAOA,qBAAqB;IAChC;MACI,OAAOH,uBAAuB;EACtC;AACJ,CAAC;AAACL,OAAA,CAAAC,aAAA,GAAAA,aAAA;AAEK,MAAMU,UAAU,GAAGA,CAACC,KAAa,EAAER,WAAiB,KAAK;EAC5D,MAAMS,OAAO,GAAG,IAAIC,IAAI,CAACV,WAAW,CAAC;EACrCS,OAAO,CAACE,QAAQ,CAACX,WAAW,CAACR,QAAQ,CAAC,CAAC,GAAGgB,KAAK,CAAC;EAEhD,IAAIR,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,EAAE,IAAIiB,OAAO,CAACjB,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE;IAC3DiB,OAAO,CAACG,WAAW,CAACZ,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,IAAIK,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAIiB,OAAO,CAACjB,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IAC3DiB,OAAO,CAACG,WAAW,CAACZ,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,OAAOc,OAAO;AAClB,CAAC;AAACb,OAAA,CAAAW,UAAA,GAAAA,UAAA;AAEK,MAAMM,WAAW,GAAGA,CAAC;EAAEtB,KAAK;EAAEuB;AAA2B,CAAC,KAC7D,IAAAC,eAAM,EAAC,IAAIL,IAAI,CAAC,IAAI,EAAEnB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE;EAAEuB;AAAO,CAAC,CAAC;AAAClB,OAAA,CAAAiB,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"calendar.js","names":["_dateFns","require","getMonthAndYear","date","month","getMonth","year","String","getFullYear","exports","isDateInRange","startDate","endDate","currentDate","monthStartOfCurrentDate","startOfMonth","monthStartOfEndDate","monthStartOfStartDate","isAfter","isBefore","getNewDate","index","newDate","Date","setMonth","setFullYear","formatMonth","locale","format"],"sources":["../../../src/utils/calendar.ts"],"sourcesContent":["import { format, isAfter, isBefore, startOfMonth, type Locale } from 'date-fns';\nimport type { EMonth, IMonth } from '../types/calendar';\n\nexport const getMonthAndYear = (date: Date): IMonth => {\n const month = date.getMonth() + 1;\n\n const year = String(date.getFullYear());\n\n return {\n month,\n year,\n };\n};\n\ninterface FormatMonthOptions {\n month: EMonth;\n locale: Locale;\n}\n\ninterface IsDateInRange {\n startDate: Date;\n endDate: Date;\n currentDate: Date;\n}\n\nexport const isDateInRange = ({ startDate, endDate, currentDate }: IsDateInRange): Date => {\n const monthStartOfCurrentDate = startOfMonth(currentDate);\n const monthStartOfEndDate = startOfMonth(endDate);\n const monthStartOfStartDate = startOfMonth(startDate);\n\n switch (true) {\n case isAfter(monthStartOfCurrentDate, monthStartOfEndDate):\n return monthStartOfEndDate;\n case isBefore(monthStartOfCurrentDate, monthStartOfStartDate):\n return monthStartOfStartDate;\n default:\n return monthStartOfCurrentDate;\n }\n};\n\nexport const getNewDate = (index: number, currentDate: Date) => {\n const newDate = new Date(currentDate);\n newDate.setMonth(currentDate.getMonth() + index);\n\n if (currentDate.getMonth() === 11 && newDate.getMonth() === 0) {\n newDate.setFullYear(currentDate.getFullYear() + 1);\n }\n\n if (currentDate.getMonth() === 0 && newDate.getMonth() === 11) {\n newDate.setFullYear(currentDate.getFullYear() - 1);\n }\n\n return newDate;\n};\n\nexport const formatMonth = ({ month, locale }: FormatMonthOptions) =>\n format(new Date(2022, month - 1, 1), 'MMMM', { locale });\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAGO,MAAMC,eAAe,GAAIC,IAAU,IAAa;EACnD,MAAMC,KAAK,GAAGD,IAAI,CAACE,QAAQ,CAAC,CAAC,GAAG,CAAC;EAEjC,MAAMC,IAAI,GAAGC,MAAM,CAACJ,IAAI,CAACK,WAAW,CAAC,CAAC,CAAC;EAEvC,OAAO;IACHJ,KAAK;IACLE;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAP,eAAA,GAAAA,eAAA;AAaK,MAAMQ,aAAa,GAAGA,CAAC;EAAEC,SAAS;EAAEC,OAAO;EAAEC;AAA2B,CAAC,KAAW;EACvF,MAAMC,uBAAuB,GAAG,IAAAC,qBAAY,EAACF,WAAW,CAAC;EACzD,MAAMG,mBAAmB,GAAG,IAAAD,qBAAY,EAACH,OAAO,CAAC;EACjD,MAAMK,qBAAqB,GAAG,IAAAF,qBAAY,EAACJ,SAAS,CAAC;EAErD,QAAQ,IAAI;IACR,KAAK,IAAAO,gBAAO,EAACJ,uBAAuB,EAAEE,mBAAmB,CAAC;MACtD,OAAOA,mBAAmB;IAC9B,KAAK,IAAAG,iBAAQ,EAACL,uBAAuB,EAAEG,qBAAqB,CAAC;MACzD,OAAOA,qBAAqB;IAChC;MACI,OAAOH,uBAAuB;EACtC;AACJ,CAAC;AAACL,OAAA,CAAAC,aAAA,GAAAA,aAAA;AAEK,MAAMU,UAAU,GAAGA,CAACC,KAAa,EAAER,WAAiB,KAAK;EAC5D,MAAMS,OAAO,GAAG,IAAIC,IAAI,CAACV,WAAW,CAAC;EACrCS,OAAO,CAACE,QAAQ,CAACX,WAAW,CAACR,QAAQ,CAAC,CAAC,GAAGgB,KAAK,CAAC;EAEhD,IAAIR,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,EAAE,IAAIiB,OAAO,CAACjB,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE;IAC3DiB,OAAO,CAACG,WAAW,CAACZ,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,IAAIK,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAIiB,OAAO,CAACjB,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IAC3DiB,OAAO,CAACG,WAAW,CAACZ,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,OAAOc,OAAO;AAClB,CAAC;AAACb,OAAA,CAAAW,UAAA,GAAAA,UAAA;AAEK,MAAMM,WAAW,GAAGA,CAAC;EAAEtB,KAAK;EAAEuB;AAA2B,CAAC,KAC7D,IAAAC,eAAM,EAAC,IAAIL,IAAI,CAAC,IAAI,EAAEnB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE;EAAEuB;AAAO,CAAC,CAAC;AAAClB,OAAA,CAAAiB,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -6,41 +6,31 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.isMorning = exports.getYearFormat = exports.getTimeTypeStrings = exports.getTimeTillNow = exports.getTimeString = exports.getMonthFormat = exports.getLanguage = exports.getFormattedTime = exports.getFormattedPastTimeString = exports.getFormattedFutureTimeString = exports.getFormattedDayOfWeek = exports.TimeType = void 0;
|
|
7
7
|
var _chaynsApi = require("chayns-api");
|
|
8
8
|
var _dateFns = require("date-fns");
|
|
9
|
-
var
|
|
10
|
-
var _index2 = _interopRequireDefault(require("date-fns/locale/en-GB/index"));
|
|
11
|
-
var _index3 = _interopRequireDefault(require("date-fns/locale/es/index"));
|
|
12
|
-
var _index4 = _interopRequireDefault(require("date-fns/locale/fr/index"));
|
|
13
|
-
var _index5 = _interopRequireDefault(require("date-fns/locale/it/index"));
|
|
14
|
-
var _index6 = _interopRequireDefault(require("date-fns/locale/nl/index"));
|
|
15
|
-
var _index7 = _interopRequireDefault(require("date-fns/locale/pl/index"));
|
|
16
|
-
var _index8 = _interopRequireDefault(require("date-fns/locale/pt/index"));
|
|
17
|
-
var _index9 = _interopRequireDefault(require("date-fns/locale/tr/index"));
|
|
18
|
-
var _index10 = _interopRequireDefault(require("date-fns/locale/uk/index"));
|
|
9
|
+
var _locale = require("date-fns/locale");
|
|
19
10
|
var _dateInfo = require("../constants/dateInfo");
|
|
20
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
11
|
const getLanguage = () => {
|
|
22
12
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
23
13
|
switch ((0, _chaynsApi.getLanguage)().translation || (0, _chaynsApi.getLanguage)().site) {
|
|
24
14
|
case 'en':
|
|
25
|
-
return
|
|
15
|
+
return _locale.enGB;
|
|
26
16
|
case 'nl':
|
|
27
|
-
return
|
|
17
|
+
return _locale.nl;
|
|
28
18
|
case 'fr':
|
|
29
|
-
return
|
|
19
|
+
return _locale.fr;
|
|
30
20
|
case 'it':
|
|
31
|
-
return
|
|
21
|
+
return _locale.it;
|
|
32
22
|
case 'pl':
|
|
33
|
-
return
|
|
23
|
+
return _locale.pl;
|
|
34
24
|
case 'pt':
|
|
35
|
-
return
|
|
25
|
+
return _locale.pt;
|
|
36
26
|
case 'es':
|
|
37
|
-
return
|
|
27
|
+
return _locale.es;
|
|
38
28
|
case 'tr':
|
|
39
|
-
return
|
|
29
|
+
return _locale.tr;
|
|
40
30
|
case 'uk':
|
|
41
|
-
return
|
|
31
|
+
return _locale.uk;
|
|
42
32
|
default:
|
|
43
|
-
return
|
|
33
|
+
return _locale.de;
|
|
44
34
|
}
|
|
45
35
|
};
|
|
46
36
|
exports.getLanguage = getLanguage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dateInfo.js","names":["_chaynsApi","require","_dateFns","_index","_interopRequireDefault","_index2","_index3","_index4","_index5","_index6","_index7","_index8","_index9","_index10","_dateInfo","e","__esModule","default","getLanguage","getChaynsLanguage","translation","site","enGB","nl","fr","it","pl","pt","es","tr","uk","de","exports","getTimeString","language","isMorning","getYearFormat","date","shouldShowThisYear","isThisYear","getMonthFormat","shouldUseShortText","getFormattedDayOfWeek","shouldShowRelativeDayOfWeek","shouldShowDayOfWeek","isToday","code","isTomorrow","isYesterday","format","locale","getFormattedTime","shouldShowTime","timeFormat","hours","getHours","TimeType","getTimeTypeStrings","TIME_TYPE_STRINGS","getTimeTillNow","currentDate","time","value","type","Years","isPast","elapsedMilliseconds","getTime","Math","floor","Seconds","Minutes","Hours","Days","Weeks","Months","getFormattedPastTimeString","remainingMilliseconds","getFormattedFutureTimeString","timeTypeStrings","isSingular","seconds","days","weeks","months","years","minutes","past","singular","plural","future"],"sources":["../../../src/utils/dateInfo.ts"],"sourcesContent":["import { getLanguage as getChaynsLanguage } from 'chayns-api';\nimport { format, isPast, isThisYear, isToday, isTomorrow, isYesterday } from 'date-fns';\nimport de from 'date-fns/locale/de/index';\nimport enGB from 'date-fns/locale/en-GB/index';\nimport es from 'date-fns/locale/es/index';\nimport fr from 'date-fns/locale/fr/index';\nimport it from 'date-fns/locale/it/index';\nimport nl from 'date-fns/locale/nl/index';\nimport pl from 'date-fns/locale/pl/index';\nimport pt from 'date-fns/locale/pt/index';\nimport tr from 'date-fns/locale/tr/index';\nimport uk from 'date-fns/locale/uk/index';\nimport { TIME_TYPE_STRINGS, type TimeTypeStringsRecord } from '../constants/dateInfo';\n\nexport const getLanguage = (): Locale => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n switch (getChaynsLanguage().translation || getChaynsLanguage().site) {\n case 'en':\n return enGB;\n case 'nl':\n return nl;\n case 'fr':\n return fr;\n case 'it':\n return it;\n case 'pl':\n return pl;\n case 'pt':\n return pt;\n case 'es':\n return es;\n case 'tr':\n return tr;\n case 'uk':\n return uk;\n default:\n return de;\n }\n};\n\ninterface GetTimeStringProps {\n language?: string;\n isMorning?: boolean;\n}\n\nexport const getTimeString = ({ language, isMorning }: GetTimeStringProps) => {\n switch (language) {\n case 'en-GB':\n case 'pt':\n return isMorning ? 'AM' : 'PM';\n case 'nl':\n return 'uur';\n case 'fr':\n return 'heures';\n case 'de':\n return 'Uhr';\n case 'es':\n return 'h';\n default:\n return '';\n }\n};\n\ninterface GetFormattedYearOptions {\n date: Date;\n shouldShowThisYear?: boolean;\n}\n\nexport const getYearFormat = ({ date, shouldShowThisYear }: GetFormattedYearOptions) => {\n if (shouldShowThisYear) {\n return ' yyyy';\n }\n\n return isThisYear(date) ? '' : ' yyyy';\n};\n\ninterface GetFormattedMonthOptions {\n shouldUseShortText?: boolean;\n}\n\nexport const getMonthFormat = ({ shouldUseShortText }: GetFormattedMonthOptions) => {\n if (shouldUseShortText) {\n return 'LLL.';\n }\n\n return 'LLLL';\n};\n\ninterface GetFormattedDayOfWeekOptions {\n shouldShowDayOfWeek?: boolean;\n shouldShowRelativeDayOfWeek?: boolean;\n shouldUseShortText?: boolean;\n date: Date;\n language?: Locale;\n}\n\nexport const getFormattedDayOfWeek = ({\n shouldShowRelativeDayOfWeek,\n shouldShowDayOfWeek,\n shouldUseShortText,\n date,\n language,\n}: GetFormattedDayOfWeekOptions) => {\n if (!shouldShowDayOfWeek && !shouldShowRelativeDayOfWeek) {\n return '';\n }\n\n if (shouldShowRelativeDayOfWeek) {\n if (isToday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Today, ';\n case 'nl':\n return 'Vandaag, ';\n case 'fr':\n return \"Aujourd'hui, \";\n case 'it':\n return 'Oggi, ';\n case 'pl':\n return 'Dzisiaj, ';\n case 'pt':\n return 'Hoje, ';\n case 'es':\n return 'Hoy, ';\n case 'tr':\n return 'Bugün, ';\n case 'uk':\n return 'Сьогодні, ';\n default:\n return 'Heute, ';\n }\n }\n\n if (isTomorrow(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Tomorrow, ';\n case 'nl':\n return 'Morgen, ';\n case 'fr':\n return 'Demain, ';\n case 'it':\n return 'Domani, ';\n case 'pl':\n return 'Jutro, ';\n case 'pt':\n return 'Amanhã, ';\n case 'es':\n return 'Mañana, ';\n case 'tr':\n return 'Yarın, ';\n case 'uk':\n return 'Завтра, ';\n default:\n return 'Morgen, ';\n }\n }\n\n if (isYesterday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Yesterday, ';\n case 'nl':\n return 'Gisteren, ';\n case 'fr':\n return 'Hier, ';\n case 'it':\n return 'Ieri, ';\n case 'pl':\n return 'Wczoraj, ';\n case 'pt':\n return 'Ontem, ';\n case 'es':\n return 'Ayer, ';\n case 'tr':\n return 'Dün, ';\n case 'uk':\n return 'Вчора, ';\n default:\n return 'Gestern, ';\n }\n }\n }\n\n if (shouldUseShortText) {\n return format(date, 'E., ', { locale: language });\n }\n\n return format(date, 'EEEE, ', { locale: language });\n};\n\ninterface GetFormattedTimeOptions {\n shouldShowTime?: boolean;\n date: Date;\n language: Locale;\n}\n\nexport const getFormattedTime = ({ shouldShowTime, date, language }: GetFormattedTimeOptions) => {\n if (!shouldShowTime) {\n return '';\n }\n\n let timeFormat = 'HH:mm';\n\n if (language.code === 'en-GB' || language.code === 'pt') {\n timeFormat = 'KK:mm';\n }\n\n return `, ${format(date, timeFormat)} ${getTimeString({\n language: language.code,\n isMorning: isMorning(date),\n })}`;\n};\n\nexport const isMorning = (date: Date) => {\n const hours = date.getHours();\n\n return hours >= 0 && hours < 12;\n};\n\nexport interface Time {\n value: number;\n type: TimeType;\n isPast: boolean;\n}\n\nexport enum TimeType {\n Seconds,\n Minutes,\n Hours,\n Days,\n Weeks,\n Months,\n Years,\n}\n\nexport const getTimeTypeStrings = (language: string): TimeTypeStringsRecord | undefined =>\n TIME_TYPE_STRINGS[language === 'en-GB' ? 'en' : language];\n\ninterface GetTimeTillNowOptions {\n date: Date;\n currentDate: Date;\n language: Locale;\n}\n\nexport const getTimeTillNow = ({ date, currentDate, language }: GetTimeTillNowOptions): string => {\n const time: Time = {\n value: 0,\n type: TimeType.Years,\n isPast: false,\n };\n\n if (isPast(date)) {\n const elapsedMilliseconds = currentDate.getTime() - date.getTime();\n\n switch (true) {\n case elapsedMilliseconds < 60000:\n time.value = Math.floor(elapsedMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case elapsedMilliseconds < 3600000:\n time.value = Math.floor(elapsedMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case elapsedMilliseconds < 86400000:\n time.value = Math.floor(elapsedMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case elapsedMilliseconds < 604800000:\n time.value = Math.floor(elapsedMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case elapsedMilliseconds < 2592000000:\n time.value = Math.floor(elapsedMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case elapsedMilliseconds < 31536000000:\n time.value = Math.floor(elapsedMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(elapsedMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedPastTimeString(time, language)}`;\n }\n\n const remainingMilliseconds = date.getTime() - currentDate.getTime();\n\n switch (true) {\n case remainingMilliseconds < 60000:\n time.value = Math.floor(remainingMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case remainingMilliseconds < 3600000:\n time.value = Math.floor(remainingMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case remainingMilliseconds < 86400000:\n time.value = Math.floor(remainingMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case remainingMilliseconds < 604800000:\n time.value = Math.floor(remainingMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case remainingMilliseconds < 2592000000:\n time.value = Math.floor(remainingMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case remainingMilliseconds < 31536000000:\n time.value = Math.floor(remainingMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(remainingMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedFutureTimeString(time, language)}`;\n};\n\nexport const getFormattedPastTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.past;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n\nexport const getFormattedFutureTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.future;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"dateInfo.js","names":["_chaynsApi","require","_dateFns","_locale","_dateInfo","getLanguage","getChaynsLanguage","translation","site","enGB","nl","fr","it","pl","pt","es","tr","uk","de","exports","getTimeString","language","isMorning","getYearFormat","date","shouldShowThisYear","isThisYear","getMonthFormat","shouldUseShortText","getFormattedDayOfWeek","shouldShowRelativeDayOfWeek","shouldShowDayOfWeek","isToday","code","isTomorrow","isYesterday","format","locale","getFormattedTime","shouldShowTime","timeFormat","hours","getHours","TimeType","getTimeTypeStrings","TIME_TYPE_STRINGS","getTimeTillNow","currentDate","time","value","type","Years","isPast","elapsedMilliseconds","getTime","Math","floor","Seconds","Minutes","Hours","Days","Weeks","Months","getFormattedPastTimeString","remainingMilliseconds","getFormattedFutureTimeString","timeTypeStrings","isSingular","seconds","days","weeks","months","years","minutes","past","singular","plural","future"],"sources":["../../../src/utils/dateInfo.ts"],"sourcesContent":["import { getLanguage as getChaynsLanguage } from 'chayns-api';\nimport {\n format,\n isPast,\n isThisYear,\n isToday,\n isTomorrow,\n isYesterday,\n type Locale,\n} from 'date-fns';\nimport { de, enGB, es, fr, it, nl, pl, pt, tr, uk } from 'date-fns/locale';\nimport { TIME_TYPE_STRINGS, type TimeTypeStringsRecord } from '../constants/dateInfo';\n\nexport const getLanguage = (): Locale => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n switch (getChaynsLanguage().translation || getChaynsLanguage().site) {\n case 'en':\n return enGB;\n case 'nl':\n return nl;\n case 'fr':\n return fr;\n case 'it':\n return it;\n case 'pl':\n return pl;\n case 'pt':\n return pt;\n case 'es':\n return es;\n case 'tr':\n return tr;\n case 'uk':\n return uk;\n default:\n return de;\n }\n};\n\ninterface GetTimeStringProps {\n language?: string;\n isMorning?: boolean;\n}\n\nexport const getTimeString = ({ language, isMorning }: GetTimeStringProps) => {\n switch (language) {\n case 'en-GB':\n case 'pt':\n return isMorning ? 'AM' : 'PM';\n case 'nl':\n return 'uur';\n case 'fr':\n return 'heures';\n case 'de':\n return 'Uhr';\n case 'es':\n return 'h';\n default:\n return '';\n }\n};\n\ninterface GetFormattedYearOptions {\n date: Date;\n shouldShowThisYear?: boolean;\n}\n\nexport const getYearFormat = ({ date, shouldShowThisYear }: GetFormattedYearOptions) => {\n if (shouldShowThisYear) {\n return ' yyyy';\n }\n\n return isThisYear(date) ? '' : ' yyyy';\n};\n\ninterface GetFormattedMonthOptions {\n shouldUseShortText?: boolean;\n}\n\nexport const getMonthFormat = ({ shouldUseShortText }: GetFormattedMonthOptions) => {\n if (shouldUseShortText) {\n return 'LLL.';\n }\n\n return 'LLLL';\n};\n\ninterface GetFormattedDayOfWeekOptions {\n shouldShowDayOfWeek?: boolean;\n shouldShowRelativeDayOfWeek?: boolean;\n shouldUseShortText?: boolean;\n date: Date;\n language?: Locale;\n}\n\nexport const getFormattedDayOfWeek = ({\n shouldShowRelativeDayOfWeek,\n shouldShowDayOfWeek,\n shouldUseShortText,\n date,\n language,\n}: GetFormattedDayOfWeekOptions) => {\n if (!shouldShowDayOfWeek && !shouldShowRelativeDayOfWeek) {\n return '';\n }\n\n if (shouldShowRelativeDayOfWeek) {\n if (isToday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Today, ';\n case 'nl':\n return 'Vandaag, ';\n case 'fr':\n return \"Aujourd'hui, \";\n case 'it':\n return 'Oggi, ';\n case 'pl':\n return 'Dzisiaj, ';\n case 'pt':\n return 'Hoje, ';\n case 'es':\n return 'Hoy, ';\n case 'tr':\n return 'Bugün, ';\n case 'uk':\n return 'Сьогодні, ';\n default:\n return 'Heute, ';\n }\n }\n\n if (isTomorrow(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Tomorrow, ';\n case 'nl':\n return 'Morgen, ';\n case 'fr':\n return 'Demain, ';\n case 'it':\n return 'Domani, ';\n case 'pl':\n return 'Jutro, ';\n case 'pt':\n return 'Amanhã, ';\n case 'es':\n return 'Mañana, ';\n case 'tr':\n return 'Yarın, ';\n case 'uk':\n return 'Завтра, ';\n default:\n return 'Morgen, ';\n }\n }\n\n if (isYesterday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Yesterday, ';\n case 'nl':\n return 'Gisteren, ';\n case 'fr':\n return 'Hier, ';\n case 'it':\n return 'Ieri, ';\n case 'pl':\n return 'Wczoraj, ';\n case 'pt':\n return 'Ontem, ';\n case 'es':\n return 'Ayer, ';\n case 'tr':\n return 'Dün, ';\n case 'uk':\n return 'Вчора, ';\n default:\n return 'Gestern, ';\n }\n }\n }\n\n if (shouldUseShortText) {\n return format(date, 'E., ', { locale: language });\n }\n\n return format(date, 'EEEE, ', { locale: language });\n};\n\ninterface GetFormattedTimeOptions {\n shouldShowTime?: boolean;\n date: Date;\n language: Locale;\n}\n\nexport const getFormattedTime = ({ shouldShowTime, date, language }: GetFormattedTimeOptions) => {\n if (!shouldShowTime) {\n return '';\n }\n\n let timeFormat = 'HH:mm';\n\n if (language.code === 'en-GB' || language.code === 'pt') {\n timeFormat = 'KK:mm';\n }\n\n return `, ${format(date, timeFormat)} ${getTimeString({\n language: language.code,\n isMorning: isMorning(date),\n })}`;\n};\n\nexport const isMorning = (date: Date) => {\n const hours = date.getHours();\n\n return hours >= 0 && hours < 12;\n};\n\nexport interface Time {\n value: number;\n type: TimeType;\n isPast: boolean;\n}\n\nexport enum TimeType {\n Seconds,\n Minutes,\n Hours,\n Days,\n Weeks,\n Months,\n Years,\n}\n\nexport const getTimeTypeStrings = (language: string): TimeTypeStringsRecord | undefined =>\n TIME_TYPE_STRINGS[language === 'en-GB' ? 'en' : language];\n\ninterface GetTimeTillNowOptions {\n date: Date;\n currentDate: Date;\n language: Locale;\n}\n\nexport const getTimeTillNow = ({ date, currentDate, language }: GetTimeTillNowOptions): string => {\n const time: Time = {\n value: 0,\n type: TimeType.Years,\n isPast: false,\n };\n\n if (isPast(date)) {\n const elapsedMilliseconds = currentDate.getTime() - date.getTime();\n\n switch (true) {\n case elapsedMilliseconds < 60000:\n time.value = Math.floor(elapsedMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case elapsedMilliseconds < 3600000:\n time.value = Math.floor(elapsedMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case elapsedMilliseconds < 86400000:\n time.value = Math.floor(elapsedMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case elapsedMilliseconds < 604800000:\n time.value = Math.floor(elapsedMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case elapsedMilliseconds < 2592000000:\n time.value = Math.floor(elapsedMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case elapsedMilliseconds < 31536000000:\n time.value = Math.floor(elapsedMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(elapsedMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedPastTimeString(time, language)}`;\n }\n\n const remainingMilliseconds = date.getTime() - currentDate.getTime();\n\n switch (true) {\n case remainingMilliseconds < 60000:\n time.value = Math.floor(remainingMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case remainingMilliseconds < 3600000:\n time.value = Math.floor(remainingMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case remainingMilliseconds < 86400000:\n time.value = Math.floor(remainingMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case remainingMilliseconds < 604800000:\n time.value = Math.floor(remainingMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case remainingMilliseconds < 2592000000:\n time.value = Math.floor(remainingMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case remainingMilliseconds < 31536000000:\n time.value = Math.floor(remainingMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(remainingMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedFutureTimeString(time, language)}`;\n};\n\nexport const getFormattedPastTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.past;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n\nexport const getFormattedFutureTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.future;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.js","names":["format","isAfter","isBefore","startOfMonth","getMonthAndYear","date","month","getMonth","year","String","getFullYear","isDateInRange","_ref","startDate","endDate","currentDate","monthStartOfCurrentDate","monthStartOfEndDate","monthStartOfStartDate","getNewDate","index","newDate","Date","setMonth","setFullYear","formatMonth","_ref2","locale"],"sources":["../../../src/utils/calendar.ts"],"sourcesContent":["import { format, isAfter, isBefore, startOfMonth } from 'date-fns';\nimport type { EMonth, IMonth } from '../types/calendar';\n\nexport const getMonthAndYear = (date: Date): IMonth => {\n const month = date.getMonth() + 1;\n\n const year = String(date.getFullYear());\n\n return {\n month,\n year,\n };\n};\n\ninterface FormatMonthOptions {\n month: EMonth;\n locale: Locale;\n}\n\ninterface IsDateInRange {\n startDate: Date;\n endDate: Date;\n currentDate: Date;\n}\n\nexport const isDateInRange = ({ startDate, endDate, currentDate }: IsDateInRange): Date => {\n const monthStartOfCurrentDate = startOfMonth(currentDate);\n const monthStartOfEndDate = startOfMonth(endDate);\n const monthStartOfStartDate = startOfMonth(startDate);\n\n switch (true) {\n case isAfter(monthStartOfCurrentDate, monthStartOfEndDate):\n return monthStartOfEndDate;\n case isBefore(monthStartOfCurrentDate, monthStartOfStartDate):\n return monthStartOfStartDate;\n default:\n return monthStartOfCurrentDate;\n }\n};\n\nexport const getNewDate = (index: number, currentDate: Date) => {\n const newDate = new Date(currentDate);\n newDate.setMonth(currentDate.getMonth() + index);\n\n if (currentDate.getMonth() === 11 && newDate.getMonth() === 0) {\n newDate.setFullYear(currentDate.getFullYear() + 1);\n }\n\n if (currentDate.getMonth() === 0 && newDate.getMonth() === 11) {\n newDate.setFullYear(currentDate.getFullYear() - 1);\n }\n\n return newDate;\n};\n\nexport const formatMonth = ({ month, locale }: FormatMonthOptions) =>\n format(new Date(2022, month - 1, 1), 'MMMM', { locale });\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,YAAY,
|
|
1
|
+
{"version":3,"file":"calendar.js","names":["format","isAfter","isBefore","startOfMonth","getMonthAndYear","date","month","getMonth","year","String","getFullYear","isDateInRange","_ref","startDate","endDate","currentDate","monthStartOfCurrentDate","monthStartOfEndDate","monthStartOfStartDate","getNewDate","index","newDate","Date","setMonth","setFullYear","formatMonth","_ref2","locale"],"sources":["../../../src/utils/calendar.ts"],"sourcesContent":["import { format, isAfter, isBefore, startOfMonth, type Locale } from 'date-fns';\nimport type { EMonth, IMonth } from '../types/calendar';\n\nexport const getMonthAndYear = (date: Date): IMonth => {\n const month = date.getMonth() + 1;\n\n const year = String(date.getFullYear());\n\n return {\n month,\n year,\n };\n};\n\ninterface FormatMonthOptions {\n month: EMonth;\n locale: Locale;\n}\n\ninterface IsDateInRange {\n startDate: Date;\n endDate: Date;\n currentDate: Date;\n}\n\nexport const isDateInRange = ({ startDate, endDate, currentDate }: IsDateInRange): Date => {\n const monthStartOfCurrentDate = startOfMonth(currentDate);\n const monthStartOfEndDate = startOfMonth(endDate);\n const monthStartOfStartDate = startOfMonth(startDate);\n\n switch (true) {\n case isAfter(monthStartOfCurrentDate, monthStartOfEndDate):\n return monthStartOfEndDate;\n case isBefore(monthStartOfCurrentDate, monthStartOfStartDate):\n return monthStartOfStartDate;\n default:\n return monthStartOfCurrentDate;\n }\n};\n\nexport const getNewDate = (index: number, currentDate: Date) => {\n const newDate = new Date(currentDate);\n newDate.setMonth(currentDate.getMonth() + index);\n\n if (currentDate.getMonth() === 11 && newDate.getMonth() === 0) {\n newDate.setFullYear(currentDate.getFullYear() + 1);\n }\n\n if (currentDate.getMonth() === 0 && newDate.getMonth() === 11) {\n newDate.setFullYear(currentDate.getFullYear() - 1);\n }\n\n return newDate;\n};\n\nexport const formatMonth = ({ month, locale }: FormatMonthOptions) =>\n format(new Date(2022, month - 1, 1), 'MMMM', { locale });\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,YAAY,QAAqB,UAAU;AAG/E,OAAO,MAAMC,eAAe,GAAIC,IAAU,IAAa;EACnD,MAAMC,KAAK,GAAGD,IAAI,CAACE,QAAQ,CAAC,CAAC,GAAG,CAAC;EAEjC,MAAMC,IAAI,GAAGC,MAAM,CAACJ,IAAI,CAACK,WAAW,CAAC,CAAC,CAAC;EAEvC,OAAO;IACHJ,KAAK;IACLE;EACJ,CAAC;AACL,CAAC;AAaD,OAAO,MAAMG,aAAa,GAAGC,IAAA,IAA8D;EAAA,IAA7D;IAAEC,SAAS;IAAEC,OAAO;IAAEC;EAA2B,CAAC,GAAAH,IAAA;EAC5E,MAAMI,uBAAuB,GAAGb,YAAY,CAACY,WAAW,CAAC;EACzD,MAAME,mBAAmB,GAAGd,YAAY,CAACW,OAAO,CAAC;EACjD,MAAMI,qBAAqB,GAAGf,YAAY,CAACU,SAAS,CAAC;EAErD,QAAQ,IAAI;IACR,KAAKZ,OAAO,CAACe,uBAAuB,EAAEC,mBAAmB,CAAC;MACtD,OAAOA,mBAAmB;IAC9B,KAAKf,QAAQ,CAACc,uBAAuB,EAAEE,qBAAqB,CAAC;MACzD,OAAOA,qBAAqB;IAChC;MACI,OAAOF,uBAAuB;EACtC;AACJ,CAAC;AAED,OAAO,MAAMG,UAAU,GAAGA,CAACC,KAAa,EAAEL,WAAiB,KAAK;EAC5D,MAAMM,OAAO,GAAG,IAAIC,IAAI,CAACP,WAAW,CAAC;EACrCM,OAAO,CAACE,QAAQ,CAACR,WAAW,CAACR,QAAQ,CAAC,CAAC,GAAGa,KAAK,CAAC;EAEhD,IAAIL,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,EAAE,IAAIc,OAAO,CAACd,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE;IAC3Dc,OAAO,CAACG,WAAW,CAACT,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,IAAIK,WAAW,CAACR,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAIc,OAAO,CAACd,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;IAC3Dc,OAAO,CAACG,WAAW,CAACT,WAAW,CAACL,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;EACtD;EAEA,OAAOW,OAAO;AAClB,CAAC;AAED,OAAO,MAAMI,WAAW,GAAGC,KAAA;EAAA,IAAC;IAAEpB,KAAK;IAAEqB;EAA2B,CAAC,GAAAD,KAAA;EAAA,OAC7D1B,MAAM,CAAC,IAAIsB,IAAI,CAAC,IAAI,EAAEhB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE;IAAEqB;EAAO,CAAC,CAAC;AAAA","ignoreList":[]}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
import { getLanguage as getChaynsLanguage } from 'chayns-api';
|
|
2
2
|
import { format, isPast, isThisYear, isToday, isTomorrow, isYesterday } from 'date-fns';
|
|
3
|
-
import de from 'date-fns/locale
|
|
4
|
-
import enGB from 'date-fns/locale/en-GB/index';
|
|
5
|
-
import es from 'date-fns/locale/es/index';
|
|
6
|
-
import fr from 'date-fns/locale/fr/index';
|
|
7
|
-
import it from 'date-fns/locale/it/index';
|
|
8
|
-
import nl from 'date-fns/locale/nl/index';
|
|
9
|
-
import pl from 'date-fns/locale/pl/index';
|
|
10
|
-
import pt from 'date-fns/locale/pt/index';
|
|
11
|
-
import tr from 'date-fns/locale/tr/index';
|
|
12
|
-
import uk from 'date-fns/locale/uk/index';
|
|
3
|
+
import { de, enGB, es, fr, it, nl, pl, pt, tr, uk } from 'date-fns/locale';
|
|
13
4
|
import { TIME_TYPE_STRINGS } from '../constants/dateInfo';
|
|
14
5
|
export const getLanguage = () => {
|
|
15
6
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dateInfo.js","names":["getLanguage","getChaynsLanguage","format","isPast","isThisYear","isToday","isTomorrow","isYesterday","de","enGB","es","fr","it","nl","pl","pt","tr","uk","TIME_TYPE_STRINGS","translation","site","getTimeString","_ref","language","isMorning","getYearFormat","_ref2","date","shouldShowThisYear","getMonthFormat","_ref3","shouldUseShortText","getFormattedDayOfWeek","_ref4","shouldShowRelativeDayOfWeek","shouldShowDayOfWeek","code","locale","getFormattedTime","_ref5","shouldShowTime","timeFormat","hours","getHours","TimeType","getTimeTypeStrings","getTimeTillNow","_ref6","currentDate","time","value","type","Years","elapsedMilliseconds","getTime","Math","floor","Seconds","Minutes","Hours","Days","Weeks","Months","getFormattedPastTimeString","remainingMilliseconds","getFormattedFutureTimeString","timeTypeStrings","isSingular","seconds","days","weeks","months","years","minutes","past","singular","plural","future"],"sources":["../../../src/utils/dateInfo.ts"],"sourcesContent":["import { getLanguage as getChaynsLanguage } from 'chayns-api';\nimport { format, isPast, isThisYear, isToday, isTomorrow, isYesterday } from 'date-fns';\nimport de from 'date-fns/locale/de/index';\nimport enGB from 'date-fns/locale/en-GB/index';\nimport es from 'date-fns/locale/es/index';\nimport fr from 'date-fns/locale/fr/index';\nimport it from 'date-fns/locale/it/index';\nimport nl from 'date-fns/locale/nl/index';\nimport pl from 'date-fns/locale/pl/index';\nimport pt from 'date-fns/locale/pt/index';\nimport tr from 'date-fns/locale/tr/index';\nimport uk from 'date-fns/locale/uk/index';\nimport { TIME_TYPE_STRINGS, type TimeTypeStringsRecord } from '../constants/dateInfo';\n\nexport const getLanguage = (): Locale => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n switch (getChaynsLanguage().translation || getChaynsLanguage().site) {\n case 'en':\n return enGB;\n case 'nl':\n return nl;\n case 'fr':\n return fr;\n case 'it':\n return it;\n case 'pl':\n return pl;\n case 'pt':\n return pt;\n case 'es':\n return es;\n case 'tr':\n return tr;\n case 'uk':\n return uk;\n default:\n return de;\n }\n};\n\ninterface GetTimeStringProps {\n language?: string;\n isMorning?: boolean;\n}\n\nexport const getTimeString = ({ language, isMorning }: GetTimeStringProps) => {\n switch (language) {\n case 'en-GB':\n case 'pt':\n return isMorning ? 'AM' : 'PM';\n case 'nl':\n return 'uur';\n case 'fr':\n return 'heures';\n case 'de':\n return 'Uhr';\n case 'es':\n return 'h';\n default:\n return '';\n }\n};\n\ninterface GetFormattedYearOptions {\n date: Date;\n shouldShowThisYear?: boolean;\n}\n\nexport const getYearFormat = ({ date, shouldShowThisYear }: GetFormattedYearOptions) => {\n if (shouldShowThisYear) {\n return ' yyyy';\n }\n\n return isThisYear(date) ? '' : ' yyyy';\n};\n\ninterface GetFormattedMonthOptions {\n shouldUseShortText?: boolean;\n}\n\nexport const getMonthFormat = ({ shouldUseShortText }: GetFormattedMonthOptions) => {\n if (shouldUseShortText) {\n return 'LLL.';\n }\n\n return 'LLLL';\n};\n\ninterface GetFormattedDayOfWeekOptions {\n shouldShowDayOfWeek?: boolean;\n shouldShowRelativeDayOfWeek?: boolean;\n shouldUseShortText?: boolean;\n date: Date;\n language?: Locale;\n}\n\nexport const getFormattedDayOfWeek = ({\n shouldShowRelativeDayOfWeek,\n shouldShowDayOfWeek,\n shouldUseShortText,\n date,\n language,\n}: GetFormattedDayOfWeekOptions) => {\n if (!shouldShowDayOfWeek && !shouldShowRelativeDayOfWeek) {\n return '';\n }\n\n if (shouldShowRelativeDayOfWeek) {\n if (isToday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Today, ';\n case 'nl':\n return 'Vandaag, ';\n case 'fr':\n return \"Aujourd'hui, \";\n case 'it':\n return 'Oggi, ';\n case 'pl':\n return 'Dzisiaj, ';\n case 'pt':\n return 'Hoje, ';\n case 'es':\n return 'Hoy, ';\n case 'tr':\n return 'Bugün, ';\n case 'uk':\n return 'Сьогодні, ';\n default:\n return 'Heute, ';\n }\n }\n\n if (isTomorrow(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Tomorrow, ';\n case 'nl':\n return 'Morgen, ';\n case 'fr':\n return 'Demain, ';\n case 'it':\n return 'Domani, ';\n case 'pl':\n return 'Jutro, ';\n case 'pt':\n return 'Amanhã, ';\n case 'es':\n return 'Mañana, ';\n case 'tr':\n return 'Yarın, ';\n case 'uk':\n return 'Завтра, ';\n default:\n return 'Morgen, ';\n }\n }\n\n if (isYesterday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Yesterday, ';\n case 'nl':\n return 'Gisteren, ';\n case 'fr':\n return 'Hier, ';\n case 'it':\n return 'Ieri, ';\n case 'pl':\n return 'Wczoraj, ';\n case 'pt':\n return 'Ontem, ';\n case 'es':\n return 'Ayer, ';\n case 'tr':\n return 'Dün, ';\n case 'uk':\n return 'Вчора, ';\n default:\n return 'Gestern, ';\n }\n }\n }\n\n if (shouldUseShortText) {\n return format(date, 'E., ', { locale: language });\n }\n\n return format(date, 'EEEE, ', { locale: language });\n};\n\ninterface GetFormattedTimeOptions {\n shouldShowTime?: boolean;\n date: Date;\n language: Locale;\n}\n\nexport const getFormattedTime = ({ shouldShowTime, date, language }: GetFormattedTimeOptions) => {\n if (!shouldShowTime) {\n return '';\n }\n\n let timeFormat = 'HH:mm';\n\n if (language.code === 'en-GB' || language.code === 'pt') {\n timeFormat = 'KK:mm';\n }\n\n return `, ${format(date, timeFormat)} ${getTimeString({\n language: language.code,\n isMorning: isMorning(date),\n })}`;\n};\n\nexport const isMorning = (date: Date) => {\n const hours = date.getHours();\n\n return hours >= 0 && hours < 12;\n};\n\nexport interface Time {\n value: number;\n type: TimeType;\n isPast: boolean;\n}\n\nexport enum TimeType {\n Seconds,\n Minutes,\n Hours,\n Days,\n Weeks,\n Months,\n Years,\n}\n\nexport const getTimeTypeStrings = (language: string): TimeTypeStringsRecord | undefined =>\n TIME_TYPE_STRINGS[language === 'en-GB' ? 'en' : language];\n\ninterface GetTimeTillNowOptions {\n date: Date;\n currentDate: Date;\n language: Locale;\n}\n\nexport const getTimeTillNow = ({ date, currentDate, language }: GetTimeTillNowOptions): string => {\n const time: Time = {\n value: 0,\n type: TimeType.Years,\n isPast: false,\n };\n\n if (isPast(date)) {\n const elapsedMilliseconds = currentDate.getTime() - date.getTime();\n\n switch (true) {\n case elapsedMilliseconds < 60000:\n time.value = Math.floor(elapsedMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case elapsedMilliseconds < 3600000:\n time.value = Math.floor(elapsedMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case elapsedMilliseconds < 86400000:\n time.value = Math.floor(elapsedMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case elapsedMilliseconds < 604800000:\n time.value = Math.floor(elapsedMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case elapsedMilliseconds < 2592000000:\n time.value = Math.floor(elapsedMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case elapsedMilliseconds < 31536000000:\n time.value = Math.floor(elapsedMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(elapsedMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedPastTimeString(time, language)}`;\n }\n\n const remainingMilliseconds = date.getTime() - currentDate.getTime();\n\n switch (true) {\n case remainingMilliseconds < 60000:\n time.value = Math.floor(remainingMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case remainingMilliseconds < 3600000:\n time.value = Math.floor(remainingMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case remainingMilliseconds < 86400000:\n time.value = Math.floor(remainingMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case remainingMilliseconds < 604800000:\n time.value = Math.floor(remainingMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case remainingMilliseconds < 2592000000:\n time.value = Math.floor(remainingMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case remainingMilliseconds < 31536000000:\n time.value = Math.floor(remainingMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(remainingMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedFutureTimeString(time, language)}`;\n};\n\nexport const getFormattedPastTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.past;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n\nexport const getFormattedFutureTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.future;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"dateInfo.js","names":["getLanguage","getChaynsLanguage","format","isPast","isThisYear","isToday","isTomorrow","isYesterday","de","enGB","es","fr","it","nl","pl","pt","tr","uk","TIME_TYPE_STRINGS","translation","site","getTimeString","_ref","language","isMorning","getYearFormat","_ref2","date","shouldShowThisYear","getMonthFormat","_ref3","shouldUseShortText","getFormattedDayOfWeek","_ref4","shouldShowRelativeDayOfWeek","shouldShowDayOfWeek","code","locale","getFormattedTime","_ref5","shouldShowTime","timeFormat","hours","getHours","TimeType","getTimeTypeStrings","getTimeTillNow","_ref6","currentDate","time","value","type","Years","elapsedMilliseconds","getTime","Math","floor","Seconds","Minutes","Hours","Days","Weeks","Months","getFormattedPastTimeString","remainingMilliseconds","getFormattedFutureTimeString","timeTypeStrings","isSingular","seconds","days","weeks","months","years","minutes","past","singular","plural","future"],"sources":["../../../src/utils/dateInfo.ts"],"sourcesContent":["import { getLanguage as getChaynsLanguage } from 'chayns-api';\nimport {\n format,\n isPast,\n isThisYear,\n isToday,\n isTomorrow,\n isYesterday,\n type Locale,\n} from 'date-fns';\nimport { de, enGB, es, fr, it, nl, pl, pt, tr, uk } from 'date-fns/locale';\nimport { TIME_TYPE_STRINGS, type TimeTypeStringsRecord } from '../constants/dateInfo';\n\nexport const getLanguage = (): Locale => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n switch (getChaynsLanguage().translation || getChaynsLanguage().site) {\n case 'en':\n return enGB;\n case 'nl':\n return nl;\n case 'fr':\n return fr;\n case 'it':\n return it;\n case 'pl':\n return pl;\n case 'pt':\n return pt;\n case 'es':\n return es;\n case 'tr':\n return tr;\n case 'uk':\n return uk;\n default:\n return de;\n }\n};\n\ninterface GetTimeStringProps {\n language?: string;\n isMorning?: boolean;\n}\n\nexport const getTimeString = ({ language, isMorning }: GetTimeStringProps) => {\n switch (language) {\n case 'en-GB':\n case 'pt':\n return isMorning ? 'AM' : 'PM';\n case 'nl':\n return 'uur';\n case 'fr':\n return 'heures';\n case 'de':\n return 'Uhr';\n case 'es':\n return 'h';\n default:\n return '';\n }\n};\n\ninterface GetFormattedYearOptions {\n date: Date;\n shouldShowThisYear?: boolean;\n}\n\nexport const getYearFormat = ({ date, shouldShowThisYear }: GetFormattedYearOptions) => {\n if (shouldShowThisYear) {\n return ' yyyy';\n }\n\n return isThisYear(date) ? '' : ' yyyy';\n};\n\ninterface GetFormattedMonthOptions {\n shouldUseShortText?: boolean;\n}\n\nexport const getMonthFormat = ({ shouldUseShortText }: GetFormattedMonthOptions) => {\n if (shouldUseShortText) {\n return 'LLL.';\n }\n\n return 'LLLL';\n};\n\ninterface GetFormattedDayOfWeekOptions {\n shouldShowDayOfWeek?: boolean;\n shouldShowRelativeDayOfWeek?: boolean;\n shouldUseShortText?: boolean;\n date: Date;\n language?: Locale;\n}\n\nexport const getFormattedDayOfWeek = ({\n shouldShowRelativeDayOfWeek,\n shouldShowDayOfWeek,\n shouldUseShortText,\n date,\n language,\n}: GetFormattedDayOfWeekOptions) => {\n if (!shouldShowDayOfWeek && !shouldShowRelativeDayOfWeek) {\n return '';\n }\n\n if (shouldShowRelativeDayOfWeek) {\n if (isToday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Today, ';\n case 'nl':\n return 'Vandaag, ';\n case 'fr':\n return \"Aujourd'hui, \";\n case 'it':\n return 'Oggi, ';\n case 'pl':\n return 'Dzisiaj, ';\n case 'pt':\n return 'Hoje, ';\n case 'es':\n return 'Hoy, ';\n case 'tr':\n return 'Bugün, ';\n case 'uk':\n return 'Сьогодні, ';\n default:\n return 'Heute, ';\n }\n }\n\n if (isTomorrow(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Tomorrow, ';\n case 'nl':\n return 'Morgen, ';\n case 'fr':\n return 'Demain, ';\n case 'it':\n return 'Domani, ';\n case 'pl':\n return 'Jutro, ';\n case 'pt':\n return 'Amanhã, ';\n case 'es':\n return 'Mañana, ';\n case 'tr':\n return 'Yarın, ';\n case 'uk':\n return 'Завтра, ';\n default:\n return 'Morgen, ';\n }\n }\n\n if (isYesterday(date)) {\n switch (language?.code) {\n case 'en-GB':\n return 'Yesterday, ';\n case 'nl':\n return 'Gisteren, ';\n case 'fr':\n return 'Hier, ';\n case 'it':\n return 'Ieri, ';\n case 'pl':\n return 'Wczoraj, ';\n case 'pt':\n return 'Ontem, ';\n case 'es':\n return 'Ayer, ';\n case 'tr':\n return 'Dün, ';\n case 'uk':\n return 'Вчора, ';\n default:\n return 'Gestern, ';\n }\n }\n }\n\n if (shouldUseShortText) {\n return format(date, 'E., ', { locale: language });\n }\n\n return format(date, 'EEEE, ', { locale: language });\n};\n\ninterface GetFormattedTimeOptions {\n shouldShowTime?: boolean;\n date: Date;\n language: Locale;\n}\n\nexport const getFormattedTime = ({ shouldShowTime, date, language }: GetFormattedTimeOptions) => {\n if (!shouldShowTime) {\n return '';\n }\n\n let timeFormat = 'HH:mm';\n\n if (language.code === 'en-GB' || language.code === 'pt') {\n timeFormat = 'KK:mm';\n }\n\n return `, ${format(date, timeFormat)} ${getTimeString({\n language: language.code,\n isMorning: isMorning(date),\n })}`;\n};\n\nexport const isMorning = (date: Date) => {\n const hours = date.getHours();\n\n return hours >= 0 && hours < 12;\n};\n\nexport interface Time {\n value: number;\n type: TimeType;\n isPast: boolean;\n}\n\nexport enum TimeType {\n Seconds,\n Minutes,\n Hours,\n Days,\n Weeks,\n Months,\n Years,\n}\n\nexport const getTimeTypeStrings = (language: string): TimeTypeStringsRecord | undefined =>\n TIME_TYPE_STRINGS[language === 'en-GB' ? 'en' : language];\n\ninterface GetTimeTillNowOptions {\n date: Date;\n currentDate: Date;\n language: Locale;\n}\n\nexport const getTimeTillNow = ({ date, currentDate, language }: GetTimeTillNowOptions): string => {\n const time: Time = {\n value: 0,\n type: TimeType.Years,\n isPast: false,\n };\n\n if (isPast(date)) {\n const elapsedMilliseconds = currentDate.getTime() - date.getTime();\n\n switch (true) {\n case elapsedMilliseconds < 60000:\n time.value = Math.floor(elapsedMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case elapsedMilliseconds < 3600000:\n time.value = Math.floor(elapsedMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case elapsedMilliseconds < 86400000:\n time.value = Math.floor(elapsedMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case elapsedMilliseconds < 604800000:\n time.value = Math.floor(elapsedMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case elapsedMilliseconds < 2592000000:\n time.value = Math.floor(elapsedMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case elapsedMilliseconds < 31536000000:\n time.value = Math.floor(elapsedMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(elapsedMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedPastTimeString(time, language)}`;\n }\n\n const remainingMilliseconds = date.getTime() - currentDate.getTime();\n\n switch (true) {\n case remainingMilliseconds < 60000:\n time.value = Math.floor(remainingMilliseconds / 1000);\n time.type = TimeType.Seconds;\n break;\n case remainingMilliseconds < 3600000:\n time.value = Math.floor(remainingMilliseconds / 60000);\n time.type = TimeType.Minutes;\n break;\n case remainingMilliseconds < 86400000:\n time.value = Math.floor(remainingMilliseconds / 3600000);\n time.type = TimeType.Hours;\n break;\n case remainingMilliseconds < 604800000:\n time.value = Math.floor(remainingMilliseconds / 86400000);\n time.type = TimeType.Days;\n break;\n case remainingMilliseconds < 2592000000:\n time.value = Math.floor(remainingMilliseconds / 604800000);\n time.type = TimeType.Weeks;\n break;\n case remainingMilliseconds < 31536000000:\n time.value = Math.floor(remainingMilliseconds / 2592000000);\n time.type = TimeType.Months;\n break;\n default:\n time.value = Math.floor(remainingMilliseconds / 31536000000);\n time.type = TimeType.Years;\n break;\n }\n\n return `${time.value} ${getFormattedFutureTimeString(time, language)}`;\n};\n\nexport const getFormattedPastTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.past;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n\nexport const getFormattedFutureTimeString = (time: Time, language: Locale): string => {\n const { value, type } = time;\n const timeTypeStrings = getTimeTypeStrings(language.code ?? 'de');\n const isSingular = value === 1;\n\n if (!timeTypeStrings) {\n return '';\n }\n\n const { seconds, days, weeks, months, years, minutes, hours } = timeTypeStrings.future;\n\n switch (true) {\n case type === TimeType.Seconds:\n return isSingular ? seconds.singular : seconds.plural;\n case type === TimeType.Minutes:\n return isSingular ? minutes.singular : minutes.plural;\n case type === TimeType.Hours:\n return isSingular ? hours.singular : hours.plural;\n case type === TimeType.Days:\n return isSingular ? days.singular : days.plural;\n case type === TimeType.Weeks:\n return isSingular ? weeks.singular : weeks.plural;\n case type === TimeType.Months:\n return isSingular ? months.singular : months.plural;\n default:\n return isSingular ? years.singular : years.plural;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chayns-components/date",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.743",
|
|
4
4
|
"description": "A set of beautiful React components for developing your own applications with chayns.",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"browserslist": [
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"@types/react": "^18.3.3",
|
|
58
58
|
"@types/react-dom": "^18.3.0",
|
|
59
59
|
"@types/styled-components": "^5.1.34",
|
|
60
|
-
"@types/uuid": "^
|
|
60
|
+
"@types/uuid": "^10.0.0",
|
|
61
61
|
"babel-loader": "^9.1.3",
|
|
62
62
|
"cross-env": "^7.0.3",
|
|
63
63
|
"lerna": "^8.1.8",
|
|
@@ -67,9 +67,9 @@
|
|
|
67
67
|
"typescript": "^5.5.4"
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
|
-
"@chayns-components/core": "^5.0.0-beta.
|
|
71
|
-
"date-fns": "^
|
|
72
|
-
"uuid": "^
|
|
70
|
+
"@chayns-components/core": "^5.0.0-beta.742",
|
|
71
|
+
"date-fns": "^3.6.0",
|
|
72
|
+
"uuid": "^10.0.0"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|
|
75
75
|
"chayns-api": ">=1.0.73",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
"publishConfig": {
|
|
82
82
|
"access": "public"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "b9a8b5051917b28a3559106db7ddd13e378aa784"
|
|
85
85
|
}
|