@servicetitan/datetime-utils 29.0.2 → 29.2.0

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/index.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,95 @@
1
+ import { Container } from '@servicetitan/react-ioc';
2
+ import { CULTURE_TOKEN } from '@servicetitan/culture';
3
+ import { DateTimeUtils } from '..';
4
+ const rootContainer = new Container();
5
+ rootContainer.bind(DateTimeUtils).toSelf();
6
+ const initContainer = () => {
7
+ const container = new Container();
8
+ container.parent = rootContainer;
9
+ container.bind(CULTURE_TOKEN).toConstantValue({
10
+ Name: 'en-US',
11
+ DateTimeFormat: {
12
+ DateSeparator: '/',
13
+ LongDatePattern: 'dddd, MMMM d, yyyy',
14
+ ShortDatePattern: 'M/d/yyyy',
15
+ ShortTimePattern: 'h:mm tt',
16
+ },
17
+ NumberFormat: {
18
+ CurrencyPositivePattern: '%s%v',
19
+ CurrencyNegativePattern: '%s-%v',
20
+ CurrencySymbol: '$',
21
+ CurrencyDecimalSeparator: '.',
22
+ CurrencyGroupSeparator: ',',
23
+ CurrencyDecimalDigits: 2,
24
+ NumberDecimalSeparator: '.',
25
+ NumberGroupSeparator: ',',
26
+ NumberDecimalDigits: 2,
27
+ },
28
+ });
29
+ return { container };
30
+ };
31
+ const dateTimeSpaceSafe = (dateTime) => dateTime.replace(' ', ' '); // Node 18.13+ uses NNBSP before "AM"/"PM" https://github.com/nodejs/node/issues/46123 we replace it with regular whitespace for test compatibility purposes
32
+ describe('DateTimeUtils', () => {
33
+ let dateUtils;
34
+ let date;
35
+ beforeEach(() => {
36
+ const { container } = initContainer();
37
+ dateUtils = container.get(DateTimeUtils);
38
+ date = new Date(2020, 0, 9, 21, 41, 54);
39
+ });
40
+ test('getLocale', () => {
41
+ expect(dateUtils.getLocale()).toEqual('en-US');
42
+ });
43
+ test('format', () => {
44
+ expect(dateUtils.format(date, {
45
+ weekday: 'short',
46
+ month: 'long',
47
+ day: 'numeric',
48
+ })).toEqual('Thu, January 9');
49
+ expect(dateUtils.format(date, {
50
+ weekday: 'long',
51
+ month: 'long',
52
+ day: 'numeric',
53
+ })).toEqual('Thursday, January 9');
54
+ });
55
+ test('formatDate', () => {
56
+ expect(dateUtils.formatDate(date)).toEqual('1/9/20');
57
+ });
58
+ test('formatDateShort', () => {
59
+ expect(dateUtils.formatDateShort(date)).toEqual('Jan 9');
60
+ });
61
+ test('formatDateFull', () => {
62
+ expect(dateUtils.formatDateFull(date)).toEqual('01/09/2020');
63
+ });
64
+ test('formatDateTimeFull', () => {
65
+ expect(dateTimeSpaceSafe(dateUtils.formatDateTimeFull(date))).toEqual('01/09/2020 09:41 PM');
66
+ });
67
+ test('formatDateTimeShort', () => {
68
+ expect(dateTimeSpaceSafe(dateUtils.formatDateTimeShort(date))).toEqual('1/9/20 9:41 PM');
69
+ });
70
+ test('formatDateTimeShortest', () => {
71
+ expect(dateTimeSpaceSafe(dateUtils.formatDateTimeShortest(date))).toEqual('Jan 9 9:41 PM');
72
+ });
73
+ test('formatShortTime', () => {
74
+ expect(dateTimeSpaceSafe(dateUtils.formatShortTime(date))).toEqual('9:41 PM');
75
+ });
76
+ test('formatFullTime', () => {
77
+ expect(dateTimeSpaceSafe(dateUtils.formatFullTime(date))).toEqual('09:41 PM');
78
+ });
79
+ test('formatShortWeekday', () => {
80
+ expect(dateUtils.formatShortWeekday(date)).toEqual('Thu');
81
+ });
82
+ test('formatShortMonth', () => {
83
+ expect(dateUtils.formatShortMonth(date)).toEqual('Jan');
84
+ });
85
+ test('formatFullMonth', () => {
86
+ expect(dateUtils.formatFullMonth(date)).toEqual('January');
87
+ });
88
+ test('formatFullMonthDate', () => {
89
+ expect(dateUtils.formatFullMonthDate(date)).toEqual('January 9, 2020');
90
+ });
91
+ test('formatShortMonthOrdinalDate', () => {
92
+ expect(dateUtils.formatShortMonthOrdinalDate(date)).toEqual('Jan 9th, 2020');
93
+ });
94
+ });
95
+ //# sourceMappingURL=index.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/__tests__/index.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAsB/D,qBACa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,qBAAqB,CAAsB;IACnD,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,uBAAuB,CAAsB;IACrD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,sBAAsB,CAAsB;IACpD,OAAO,CAAC,wBAAwB,CAAsB;IACtD,OAAO,CAAC,yBAAyB,CAAsB;gBAEpB,OAAO,EAAE,OAAO;IA8CnD;;;;;;;;;OASG;IACH,MAAM,SAAU,IAAI,YAAY,KAAK,qBAAqB,KAAG,MAAM,CAEjE;IAEF;;;OAGG;IACH,UAAU,SAAU,IAAI,KAAG,MAAM,CAE/B;IAEF;;;OAGG;IACH,eAAe,SAAU,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,cAAc,SAAU,IAAI,KAAG,MAAM,CAEnC;IAEF;;;OAGG;IACH,kBAAkB,SAAU,IAAI,KAAG,MAAM,CAEvC;IAEF;;;OAGG;IACH,mBAAmB,SAAU,IAAI,KAAG,MAAM,CAExC;IAEF;;;OAGG;IACH,sBAAsB,SAAU,IAAI,KAAG,MAAM,CAE3C;IAEF;;;OAGG;IACH,eAAe,SAAU,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,cAAc,SAAU,IAAI,KAAG,MAAM,CAEnC;IAEF;;;OAGG;IACH,qBAAqB,SAAU,IAAI,KAAG,MAAM,CAE1C;IAEF;;;OAGG;IACH,sBAAsB,SAAU,IAAI,KAAG,MAAM,CAE3C;IAEF;;;OAGG;IACH,kBAAkB,SAAU,IAAI,KAAG,MAAM,CAEvC;IAEF;;;OAGG;IACH,gBAAgB,SAAU,IAAI,KAAG,MAAM,CAErC;IAEF;;;OAGG;IACH,eAAe,SAAU,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,mBAAmB,SAAU,IAAI,KAAG,MAAM,CAExC;IAEF;;;OAGG;IACH,2BAA2B,SAAU,IAAI,KAAG,MAAM,CAGhD;IAEF;;;OAGG;IACH,oBAAoB,SAAU,IAAI,KAAG,MAAM,CAEzC;IAEF,SAAS,QAAO,MAAM,CAEpB;CACL"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAsB/D,qBACa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,qBAAqB,CAAsB;IACnD,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,uBAAuB,CAAsB;IACrD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,sBAAsB,CAAsB;IACpD,OAAO,CAAC,wBAAwB,CAAsB;IACtD,OAAO,CAAC,yBAAyB,CAAsB;gBAEpB,OAAO,EAAE,OAAO;IA8CnD;;;;;;;;;OASG;IACH,MAAM,GAAI,MAAM,IAAI,EAAE,UAAU,IAAI,CAAC,qBAAqB,KAAG,MAAM,CAEjE;IAEF;;;OAGG;IACH,UAAU,GAAI,MAAM,IAAI,KAAG,MAAM,CAE/B;IAEF;;;OAGG;IACH,eAAe,GAAI,MAAM,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,cAAc,GAAI,MAAM,IAAI,KAAG,MAAM,CAEnC;IAEF;;;OAGG;IACH,kBAAkB,GAAI,MAAM,IAAI,KAAG,MAAM,CAEvC;IAEF;;;OAGG;IACH,mBAAmB,GAAI,MAAM,IAAI,KAAG,MAAM,CAExC;IAEF;;;OAGG;IACH,sBAAsB,GAAI,MAAM,IAAI,KAAG,MAAM,CAE3C;IAEF;;;OAGG;IACH,eAAe,GAAI,MAAM,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,cAAc,GAAI,MAAM,IAAI,KAAG,MAAM,CAEnC;IAEF;;;OAGG;IACH,qBAAqB,GAAI,MAAM,IAAI,KAAG,MAAM,CAE1C;IAEF;;;OAGG;IACH,sBAAsB,GAAI,MAAM,IAAI,KAAG,MAAM,CAE3C;IAEF;;;OAGG;IACH,kBAAkB,GAAI,MAAM,IAAI,KAAG,MAAM,CAEvC;IAEF;;;OAGG;IACH,gBAAgB,GAAI,MAAM,IAAI,KAAG,MAAM,CAErC;IAEF;;;OAGG;IACH,eAAe,GAAI,MAAM,IAAI,KAAG,MAAM,CAEpC;IAEF;;;OAGG;IACH,mBAAmB,GAAI,MAAM,IAAI,KAAG,MAAM,CAExC;IAEF;;;OAGG;IACH,2BAA2B,GAAI,MAAM,IAAI,KAAG,MAAM,CAGhD;IAEF;;;OAGG;IACH,oBAAoB,GAAI,MAAM,IAAI,KAAG,MAAM,CAEzC;IAEF,SAAS,QAAO,MAAM,CAEpB;CACL"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/datetime-utils",
3
- "version": "29.0.2",
3
+ "version": "29.2.0",
4
4
  "description": "",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/date-time-formatting",
6
6
  "repository": {
@@ -16,11 +16,11 @@
16
16
  "src"
17
17
  ],
18
18
  "devDependencies": {
19
- "@servicetitan/culture": "^29.0.2",
20
- "@servicetitan/react-ioc": "^24.0.3"
19
+ "@servicetitan/culture": "^29.2.0",
20
+ "@servicetitan/react-ioc": "^30.0.0"
21
21
  },
22
22
  "peerDependencies": {
23
- "@servicetitan/culture": "^29.0.2",
23
+ "@servicetitan/culture": "^29.2.0",
24
24
  "@servicetitan/react-ioc": ">21.0.0"
25
25
  },
26
26
  "publishConfig": {
@@ -29,5 +29,5 @@
29
29
  "cli": {
30
30
  "webpack": false
31
31
  },
32
- "gitHead": "2ed620c39e72df388562839151b451eb8dbfbf83"
32
+ "gitHead": "ca96fa4e0aaf009f3d5b6a1a8f7cfc489e60dcdf"
33
33
  }