@midseelee/date-fns-buddhist-adapter 1.0.0 → 1.0.2
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.md +11 -4
- package/dist/__tests__/index.spec.d.ts +1 -0
- package/dist/__tests__/index.spec.js +69 -0
- package/dist/__tests__/index.spec.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.js +21 -13
- package/dist/index.js.map +1 -0
- package/dist/models/adapters.d.ts +11 -4
- package/dist/models/adapters.js.map +1 -0
- package/dist/models/fields.js.map +1 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/timezone.js.map +1 -0
- package/package.json +10 -3
- package/.claude/settings.local.json +0 -9
- package/jest.config.ts +0 -15
package/README.md
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
```
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
|
|
1
5
|
# @midseelee/date-fns-buddhist-adapter
|
|
2
6
|
|
|
3
7
|
> Forked from [ascendcorp/date-fns-buddhist-adapter](https://github.com/ascendcorp/date-fns-buddhist-adapter)
|
|
@@ -17,15 +21,18 @@ bun add @midseelee/date-fns-buddhist-adapter
|
|
|
17
21
|
## Usage
|
|
18
22
|
|
|
19
23
|
```typescript
|
|
20
|
-
import AdapterDateFns from '@midseelee/date-fns-buddhist-adapter'
|
|
21
24
|
import { LocalizationProvider } from '@mui/x-date-pickers'
|
|
22
25
|
import { DatePicker } from '@mui/x-date-pickers/DatePicker'
|
|
23
|
-
import {
|
|
26
|
+
import { th } from 'date-fns/locale/th'
|
|
27
|
+
import AdapterDateFns from '@midseelee/date-fns-buddhist-adapter'
|
|
24
28
|
|
|
25
29
|
function App() {
|
|
26
30
|
return (
|
|
27
|
-
<LocalizationProvider
|
|
28
|
-
|
|
31
|
+
<LocalizationProvider
|
|
32
|
+
dateAdapter={AdapterDateFns}
|
|
33
|
+
adapterLocale={th}
|
|
34
|
+
>
|
|
35
|
+
<DatePicker label="วันที่ (พ.ศ.)" />
|
|
29
36
|
</LocalizationProvider>
|
|
30
37
|
)
|
|
31
38
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { th } from 'date-fns/locale';
|
|
2
|
+
import AdapterDateFns from '..';
|
|
3
|
+
describe('AdapterDateFns', () => {
|
|
4
|
+
describe('Default locale', () => {
|
|
5
|
+
const adapter = new AdapterDateFns();
|
|
6
|
+
let date;
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
date = adapter.date('2023-06-09T23:44:00.000Z');
|
|
9
|
+
});
|
|
10
|
+
it('getWeekdays: should start on Sunday', () => {
|
|
11
|
+
const result = adapter.getWeekdays();
|
|
12
|
+
expect(result).toStrictEqual(['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']);
|
|
13
|
+
});
|
|
14
|
+
it('getWeekArray: should start on Sunday', () => {
|
|
15
|
+
const result = adapter.getWeekArray(date);
|
|
16
|
+
expect(adapter.formatByString(result[0][0], 'EEEEEE')).toEqual('Su');
|
|
17
|
+
});
|
|
18
|
+
it('is12HourCycleInCurrentLocale: should have meridiem', () => {
|
|
19
|
+
expect(adapter.is12HourCycleInCurrentLocale()).toEqual(true);
|
|
20
|
+
});
|
|
21
|
+
it('should formatting correctly', () => {
|
|
22
|
+
const expectDate = (format, expected) => {
|
|
23
|
+
expect(adapter.format(date, format)).toEqual(expected);
|
|
24
|
+
};
|
|
25
|
+
expectDate('fullDate', 'Jun 10, 2566');
|
|
26
|
+
expectDate('fullDateWithWeekday', 'Saturday, June 10th, 2566');
|
|
27
|
+
expectDate('fullDateTime', 'Jun 10, 2566 6:44 AM');
|
|
28
|
+
expectDate('fullDateTime12h', 'Jun 10, 2566 06:44 am');
|
|
29
|
+
expectDate('fullDateTime24h', 'Jun 10, 2566 06:44');
|
|
30
|
+
expectDate('keyboardDate', '06/10/2566');
|
|
31
|
+
expectDate('keyboardDateTime', '06/10/2566 6:44 AM');
|
|
32
|
+
expectDate('keyboardDateTime12h', '06/10/2566 06:44 am');
|
|
33
|
+
expectDate('keyboardDateTime24h', '06/10/2566 06:44');
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
describe('TH locale', () => {
|
|
37
|
+
const adapter = new AdapterDateFns({ locale: th });
|
|
38
|
+
let date;
|
|
39
|
+
beforeEach(() => {
|
|
40
|
+
date = adapter.date('2023-06-09T23:44:00.000Z');
|
|
41
|
+
});
|
|
42
|
+
it('getWeekdays: should start on วันอาทิตย์', () => {
|
|
43
|
+
const result = adapter.getWeekdays();
|
|
44
|
+
expect(result).toStrictEqual(['อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.']);
|
|
45
|
+
});
|
|
46
|
+
it('getWeekArray: should start on วันอาทิตย์', () => {
|
|
47
|
+
const result = adapter.getWeekArray(date);
|
|
48
|
+
expect(adapter.formatByString(result[0][0], 'EEEEEE')).toEqual('อา.');
|
|
49
|
+
});
|
|
50
|
+
it('is12HourCycleInCurrentLocale: should have not meridiem', () => {
|
|
51
|
+
expect(adapter.is12HourCycleInCurrentLocale()).toEqual(false);
|
|
52
|
+
});
|
|
53
|
+
it('should formatting correctly', () => {
|
|
54
|
+
const expectDate = (format, expected) => {
|
|
55
|
+
expect(adapter.format(date, format)).toEqual(expected);
|
|
56
|
+
};
|
|
57
|
+
expectDate('fullDate', '10 มิ.ย. 2566');
|
|
58
|
+
expectDate('fullDateWithWeekday', 'วันเสาร์ที่ 10 มิถุนายน 2566');
|
|
59
|
+
expectDate('fullDateTime', '10 มิ.ย. 2566 6:44 น.');
|
|
60
|
+
expectDate('fullDateTime12h', '10 มิ.ย. 2566 06:44 ก่อนเที่ยง');
|
|
61
|
+
expectDate('fullDateTime24h', '10 มิ.ย. 2566 06:44');
|
|
62
|
+
expectDate('keyboardDate', '10/06/2566');
|
|
63
|
+
expectDate('keyboardDateTime', '10/06/2566 6:44 น.');
|
|
64
|
+
expectDate('keyboardDateTime12h', '10/06/2566 06:44 ก่อนเที่ยง');
|
|
65
|
+
expectDate('keyboardDateTime24h', '10/06/2566 06:44');
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=index.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../src/__tests__/index.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { enUS as defaultLocale } from 'date-fns/locale/en-US';
|
|
2
|
-
import type { AdapterFormats, AdapterOptions, AdapterUnits, FieldFormatTokenMap, MuiPickersAdapter } from './models';
|
|
2
|
+
import type { AdapterFormats, AdapterOptions, AdapterUnits, DateBuilderReturnType, FieldFormatTokenMap, MuiPickersAdapter } from './models';
|
|
3
3
|
type DateFnsLocale = typeof defaultLocale;
|
|
4
4
|
export default class AdapterDateFns implements MuiPickersAdapter<Date, DateFnsLocale> {
|
|
5
5
|
isMUIAdapter: boolean;
|
|
@@ -51,7 +51,7 @@ export default class AdapterDateFns implements MuiPickersAdapter<Date, DateFnsLo
|
|
|
51
51
|
endOfYear: (value: Date) => Date;
|
|
52
52
|
getYear: (value: Date) => number;
|
|
53
53
|
setYear: (value: Date, count: number) => Date;
|
|
54
|
-
date: (value?:
|
|
54
|
+
date: <T extends string | null | undefined = undefined>(value?: T) => DateBuilderReturnType<T, Date>;
|
|
55
55
|
dateWithTimezone: (value: string | null | undefined) => Date | null;
|
|
56
56
|
getTimezone: () => string;
|
|
57
57
|
setTimezone: (value: Date) => Date;
|
|
@@ -70,6 +70,8 @@ export default class AdapterDateFns implements MuiPickersAdapter<Date, DateFnsLo
|
|
|
70
70
|
getMinutes: (date: Date) => number;
|
|
71
71
|
getDate: (value: Date) => number;
|
|
72
72
|
getMonth: (date: Date) => number;
|
|
73
|
+
getDayOfWeek: (date: Date) => number;
|
|
74
|
+
getInvalidDate: () => Date;
|
|
73
75
|
getDaysInMonth: (date: Date) => number;
|
|
74
76
|
setMonth: (date: Date, count: number) => Date;
|
|
75
77
|
setDate: (value: Date, date: number) => Date;
|
|
@@ -81,6 +83,6 @@ export default class AdapterDateFns implements MuiPickersAdapter<Date, DateFnsLo
|
|
|
81
83
|
getWeekdays: () => string[];
|
|
82
84
|
getWeekArray: (date: Date) => Date[][];
|
|
83
85
|
getWeekNumber: (value: Date) => number;
|
|
84
|
-
getYearRange: (
|
|
86
|
+
getYearRange: (range: [Date, Date]) => Date[];
|
|
85
87
|
}
|
|
86
88
|
export {};
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { addDays, addHours, addMinutes, addMonths, addSeconds, addWeeks, addYears, differenceInDays, differenceInHours, differenceInMilliseconds, differenceInMinutes, differenceInMonths, differenceInQuarters, differenceInSeconds, differenceInWeeks, differenceInYears, eachDayOfInterval, endOfDay, endOfMonth, endOfWeek, endOfYear, format, formatISO, getDate, getDay, getDaysInMonth, getHours, getMilliseconds, getSeconds, getWeek, getYear, isAfter, isBefore, isEqual, isSameDay, isSameHour, isSameMonth, isSameYear, isValid, isWithinInterval, parse as dateFnsParse, parseISO, setDate, setHours, setMilliseconds, setMinutes, setMonth, setSeconds, setYear, startOfDay, startOfMonth, startOfWeek, startOfYear, } from 'date-fns';
|
|
2
|
-
import { enUS as defaultLocale } from 'date-fns/locale/en-US';
|
|
3
2
|
const formatTokenMap = {
|
|
4
3
|
// Year
|
|
5
4
|
y: { sectionType: 'year', contentType: 'digit', maxLength: 4 },
|
|
@@ -59,6 +58,7 @@ const formatTokenMap = {
|
|
|
59
58
|
};
|
|
60
59
|
const defaultFormats = {
|
|
61
60
|
dayOfMonth: 'd',
|
|
61
|
+
dayOfMonthFull: 'dd',
|
|
62
62
|
fullDate: 'PP',
|
|
63
63
|
fullDateWithWeekday: 'PPPP',
|
|
64
64
|
fullDateTime: 'PP p',
|
|
@@ -115,7 +115,6 @@ export default class AdapterDateFns {
|
|
|
115
115
|
.map((token) => {
|
|
116
116
|
const firstCharacter = token[0];
|
|
117
117
|
if (firstCharacter === 'p' || firstCharacter === 'P') {
|
|
118
|
-
const locale = this.locale || defaultLocale;
|
|
119
118
|
// Use the locale's format function to expand format strings
|
|
120
119
|
return this.formatByString(new Date(), token);
|
|
121
120
|
}
|
|
@@ -174,25 +173,28 @@ export default class AdapterDateFns {
|
|
|
174
173
|
return isValid(this.date(value));
|
|
175
174
|
};
|
|
176
175
|
getDiff = (value, comparing, unit) => {
|
|
176
|
+
const comparingDate = comparing instanceof Date
|
|
177
|
+
? comparing
|
|
178
|
+
: this.date(comparing);
|
|
177
179
|
switch (unit) {
|
|
178
180
|
case 'years':
|
|
179
|
-
return differenceInYears(value,
|
|
181
|
+
return differenceInYears(value, comparingDate);
|
|
180
182
|
case 'quarters':
|
|
181
|
-
return differenceInQuarters(value,
|
|
183
|
+
return differenceInQuarters(value, comparingDate);
|
|
182
184
|
case 'months':
|
|
183
|
-
return differenceInMonths(value,
|
|
185
|
+
return differenceInMonths(value, comparingDate);
|
|
184
186
|
case 'weeks':
|
|
185
|
-
return differenceInWeeks(value,
|
|
187
|
+
return differenceInWeeks(value, comparingDate);
|
|
186
188
|
case 'days':
|
|
187
|
-
return differenceInDays(value,
|
|
189
|
+
return differenceInDays(value, comparingDate);
|
|
188
190
|
case 'hours':
|
|
189
|
-
return differenceInHours(value,
|
|
191
|
+
return differenceInHours(value, comparingDate);
|
|
190
192
|
case 'minutes':
|
|
191
|
-
return differenceInMinutes(value,
|
|
193
|
+
return differenceInMinutes(value, comparingDate);
|
|
192
194
|
case 'seconds':
|
|
193
|
-
return differenceInSeconds(value,
|
|
195
|
+
return differenceInSeconds(value, comparingDate);
|
|
194
196
|
default: {
|
|
195
|
-
return differenceInMilliseconds(value,
|
|
197
|
+
return differenceInMilliseconds(value, comparingDate);
|
|
196
198
|
}
|
|
197
199
|
}
|
|
198
200
|
};
|
|
@@ -266,7 +268,6 @@ export default class AdapterDateFns {
|
|
|
266
268
|
return setYear(value, count);
|
|
267
269
|
};
|
|
268
270
|
date = (value) => {
|
|
269
|
-
//
|
|
270
271
|
if (typeof value === 'undefined') {
|
|
271
272
|
return new Date();
|
|
272
273
|
}
|
|
@@ -390,6 +391,12 @@ export default class AdapterDateFns {
|
|
|
390
391
|
getMonth = (date) => {
|
|
391
392
|
return date.getMonth();
|
|
392
393
|
};
|
|
394
|
+
getDayOfWeek = (date) => {
|
|
395
|
+
return getDay(date);
|
|
396
|
+
};
|
|
397
|
+
getInvalidDate = () => {
|
|
398
|
+
return new Date('Invalid Date');
|
|
399
|
+
};
|
|
393
400
|
getDaysInMonth = (date) => {
|
|
394
401
|
return getDaysInMonth(date);
|
|
395
402
|
};
|
|
@@ -450,7 +457,8 @@ export default class AdapterDateFns {
|
|
|
450
457
|
getWeekNumber = (value) => {
|
|
451
458
|
return getWeek(value, { locale: this.locale });
|
|
452
459
|
};
|
|
453
|
-
getYearRange = (
|
|
460
|
+
getYearRange = (range) => {
|
|
461
|
+
const [start, end] = range;
|
|
454
462
|
const startDate = startOfYear(start);
|
|
455
463
|
const endDate = endOfYear(end);
|
|
456
464
|
const years = [];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,11 @@ export interface AdapterFormats {
|
|
|
21
21
|
* @example "1"
|
|
22
22
|
*/
|
|
23
23
|
dayOfMonth: string;
|
|
24
|
+
/**
|
|
25
|
+
* The day of the month with leading zero.
|
|
26
|
+
* @example "01"
|
|
27
|
+
*/
|
|
28
|
+
dayOfMonthFull: string;
|
|
24
29
|
/**
|
|
25
30
|
* The name of the day of the week.
|
|
26
31
|
* @example "Wednesday"
|
|
@@ -171,6 +176,9 @@ export type AdapterOptions<TLocale, TInstance> = {
|
|
|
171
176
|
formats?: Partial<AdapterFormats>;
|
|
172
177
|
locale?: TLocale;
|
|
173
178
|
} & PropertyIfNotNever<'instance', TInstance>;
|
|
179
|
+
export type DateBuilderReturnType<T extends string | null | undefined, TDate> = [
|
|
180
|
+
T
|
|
181
|
+
] extends [null] ? null : TDate;
|
|
174
182
|
export interface MuiPickersAdapter<TDate, TLocale = any> {
|
|
175
183
|
/**
|
|
176
184
|
* A boolean confirming that the adapter used is an MUI adapter.
|
|
@@ -202,7 +210,7 @@ export interface MuiPickersAdapter<TDate, TLocale = any> {
|
|
|
202
210
|
* @param {any} value The optional value to parse.
|
|
203
211
|
* @returns {TDate | null} The parsed date.
|
|
204
212
|
*/
|
|
205
|
-
date(value?:
|
|
213
|
+
date<T extends string | null | undefined>(value?: T): DateBuilderReturnType<T, TDate>;
|
|
206
214
|
/**
|
|
207
215
|
* Create a date in the date library format.
|
|
208
216
|
* If no `value` parameter is provided, creates a date with the current timestamp.
|
|
@@ -703,11 +711,10 @@ export interface MuiPickersAdapter<TDate, TLocale = any> {
|
|
|
703
711
|
/**
|
|
704
712
|
* Create a list with all the years between the start end the end date.
|
|
705
713
|
* @template TDate
|
|
706
|
-
* @param {TDate}
|
|
707
|
-
* @param {TDate} end The end of the range.
|
|
714
|
+
* @param {[TDate, TDate]} range The range [start, end].
|
|
708
715
|
* @returns {TDate[]} List of all the years between the start end the end date.
|
|
709
716
|
*/
|
|
710
|
-
getYearRange(
|
|
717
|
+
getYearRange(range: [TDate, TDate]): TDate[];
|
|
711
718
|
/**
|
|
712
719
|
* Allow to customize how the "am"` and "pm" strings are rendered.
|
|
713
720
|
* @param {"am" | "pm"} meridiem The string to render.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/models/adapters.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/models/fields.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timezone.js","sourceRoot":"","sources":["../../src/models/timezone.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@midseelee/date-fns-buddhist-adapter",
|
|
3
|
-
"repository": "
|
|
4
|
-
"version": "1.0.
|
|
3
|
+
"repository": "git@github.com:Sh0ckWaveZero/date-fns-buddhist-adapter.git",
|
|
4
|
+
"version": "1.0.2",
|
|
5
5
|
"description": "date-fns adapter with Buddhist years functionality",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"private": false,
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"README.md",
|
|
12
|
+
"LICENSE"
|
|
13
|
+
],
|
|
9
14
|
"scripts": {
|
|
10
15
|
"test": "jest",
|
|
11
16
|
"test:watch": "jest --watch",
|
|
@@ -20,7 +25,9 @@
|
|
|
20
25
|
"typecheck": "tsc --noEmit",
|
|
21
26
|
"clean": "rm -rf dist",
|
|
22
27
|
"rebuild": "bun run clean && bun run build",
|
|
23
|
-
"example:dev": "cd example &&
|
|
28
|
+
"example:dev": "cd example && bun run dev",
|
|
29
|
+
"example:install": "cd example && bun install",
|
|
30
|
+
"example:build": "cd example && bun run build",
|
|
24
31
|
"start": "bun src/index.ts"
|
|
25
32
|
},
|
|
26
33
|
"keywords": [
|
package/jest.config.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { Config } from 'jest'
|
|
2
|
-
|
|
3
|
-
const config: Config = {
|
|
4
|
-
roots: ['<rootDir>/src'],
|
|
5
|
-
preset: 'ts-jest',
|
|
6
|
-
testEnvironment: 'node',
|
|
7
|
-
clearMocks: true,
|
|
8
|
-
collectCoverage: false,
|
|
9
|
-
collectCoverageFrom: ['src/**/*.ts', '!**/node_modules/**'],
|
|
10
|
-
coverageDirectory: 'coverage',
|
|
11
|
-
coverageProvider: 'v8',
|
|
12
|
-
coverageReporters: ['text-summary'],
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export default config
|