@servicetitan/dte-unlayer 0.107.0 → 0.109.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.
- package/dist/editor-core-source.d.ts +2 -2
- package/dist/editor-core-source.d.ts.map +1 -1
- package/dist/editor-core-source.js +2 -2
- package/dist/editor-core-source.js.map +1 -1
- package/dist/shared/date-calc.d.ts +6 -0
- package/dist/shared/date-calc.d.ts.map +1 -1
- package/dist/shared/date-calc.js +13 -0
- package/dist/shared/date-calc.js.map +1 -1
- package/package.json +1 -1
- package/src/editor-core-source.ts +2 -2
- package/src/shared/date-calc.ts +16 -0
package/src/shared/date-calc.ts
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
export const MAX_DATE_CALC_DAYS = 365;
|
|
2
2
|
|
|
3
|
+
export const DATE_RANGE_YEARS = 2;
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Returns true if the date's year falls within [currentYear - DATE_RANGE_YEARS, currentYear + DATE_RANGE_YEARS].
|
|
7
|
+
* Invalid or unparseable dates return false.
|
|
8
|
+
*/
|
|
9
|
+
export function isDateWithinRange(dateInput: string | Date): boolean {
|
|
10
|
+
const d = typeof dateInput === 'string' ? new Date(dateInput) : dateInput;
|
|
11
|
+
if (!isFinite(d.getTime())) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
const currentYear = new Date().getUTCFullYear();
|
|
15
|
+
const year = d.getUTCFullYear();
|
|
16
|
+
return year >= currentYear - DATE_RANGE_YEARS && year <= currentYear + DATE_RANGE_YEARS;
|
|
17
|
+
}
|
|
18
|
+
|
|
3
19
|
export interface DateCalcOptions {
|
|
4
20
|
holidays?: string[];
|
|
5
21
|
}
|