@keenthemes/ktui 1.1.0 → 1.1.1
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 +0 -27
- package/dist/ktui.js +6790 -14063
- package/dist/ktui.min.js +1 -1
- package/dist/ktui.min.js.map +1 -1
- package/dist/styles.css +1132 -2705
- package/lib/cjs/components/datatable/__tests__/pagination-reset.test.js +596 -0
- package/lib/cjs/components/datatable/__tests__/pagination-reset.test.js.map +1 -0
- package/lib/cjs/components/datatable/__tests__/race-conditions.test.js +548 -0
- package/lib/cjs/components/datatable/__tests__/race-conditions.test.js.map +1 -0
- package/lib/cjs/components/datatable/__tests__/setup.js +63 -0
- package/lib/cjs/components/datatable/__tests__/setup.js.map +1 -0
- package/lib/cjs/components/datatable/datatable.js +92 -30
- package/lib/cjs/components/datatable/datatable.js.map +1 -1
- package/lib/cjs/index.js +1 -10
- package/lib/cjs/index.js.map +1 -1
- package/lib/esm/components/datatable/__tests__/pagination-reset.test.js +594 -0
- package/lib/esm/components/datatable/__tests__/pagination-reset.test.js.map +1 -0
- package/lib/esm/components/datatable/__tests__/race-conditions.test.js +546 -0
- package/lib/esm/components/datatable/__tests__/race-conditions.test.js.map +1 -0
- package/lib/esm/components/datatable/__tests__/setup.js +58 -0
- package/lib/esm/components/datatable/__tests__/setup.js.map +1 -0
- package/lib/esm/components/datatable/datatable.js +92 -30
- package/lib/esm/components/datatable/datatable.js.map +1 -1
- package/lib/esm/index.js +0 -7
- package/lib/esm/index.js.map +1 -1
- package/package.json +7 -9
- package/src/components/alert/alert.css +188 -429
- package/src/components/datatable/__tests__/pagination-reset.test.ts +657 -0
- package/src/components/datatable/__tests__/race-conditions.test.ts +455 -0
- package/src/components/datatable/__tests__/setup.ts +67 -0
- package/src/components/datatable/datatable.ts +66 -11
- package/src/components/input/input.css +0 -1
- package/src/components/select/select.css +0 -1
- package/src/components/select/variants.css +4 -0
- package/src/components/textarea/textarea.css +0 -1
- package/src/index.ts +0 -10
- package/styles.css +0 -1
- package/lib/cjs/components/alert/alert.js +0 -1025
- package/lib/cjs/components/alert/alert.js.map +0 -1
- package/lib/cjs/components/alert/index.js +0 -20
- package/lib/cjs/components/alert/index.js.map +0 -1
- package/lib/cjs/components/alert/templates.js +0 -120
- package/lib/cjs/components/alert/templates.js.map +0 -1
- package/lib/cjs/components/alert/types.js +0 -7
- package/lib/cjs/components/alert/types.js.map +0 -1
- package/lib/cjs/components/datepicker/config/config.js +0 -42
- package/lib/cjs/components/datepicker/config/config.js.map +0 -1
- package/lib/cjs/components/datepicker/config/index.js +0 -24
- package/lib/cjs/components/datepicker/config/index.js.map +0 -1
- package/lib/cjs/components/datepicker/config/interfaces.js +0 -7
- package/lib/cjs/components/datepicker/config/interfaces.js.map +0 -1
- package/lib/cjs/components/datepicker/config/types.js +0 -7
- package/lib/cjs/components/datepicker/config/types.js.map +0 -1
- package/lib/cjs/components/datepicker/core/event-manager.js +0 -135
- package/lib/cjs/components/datepicker/core/event-manager.js.map +0 -1
- package/lib/cjs/components/datepicker/core/focus-manager.js +0 -167
- package/lib/cjs/components/datepicker/core/focus-manager.js.map +0 -1
- package/lib/cjs/components/datepicker/core/helpers.js +0 -219
- package/lib/cjs/components/datepicker/core/helpers.js.map +0 -1
- package/lib/cjs/components/datepicker/core/index.js +0 -25
- package/lib/cjs/components/datepicker/core/index.js.map +0 -1
- package/lib/cjs/components/datepicker/core/unified-state-manager.js +0 -394
- package/lib/cjs/components/datepicker/core/unified-state-manager.js.map +0 -1
- package/lib/cjs/components/datepicker/datepicker.js +0 -2252
- package/lib/cjs/components/datepicker/datepicker.js.map +0 -1
- package/lib/cjs/components/datepicker/index.js +0 -24
- package/lib/cjs/components/datepicker/index.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/index.js +0 -23
- package/lib/cjs/components/datepicker/ui/index.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/input/dropdown.js +0 -489
- package/lib/cjs/components/datepicker/ui/input/dropdown.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/input/index.js +0 -23
- package/lib/cjs/components/datepicker/ui/input/index.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/input/segmented-input.js +0 -640
- package/lib/cjs/components/datepicker/ui/input/segmented-input.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/renderers/calendar.js +0 -446
- package/lib/cjs/components/datepicker/ui/renderers/calendar.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/renderers/footer.js +0 -42
- package/lib/cjs/components/datepicker/ui/renderers/footer.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/renderers/header.js +0 -32
- package/lib/cjs/components/datepicker/ui/renderers/header.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/renderers/index.js +0 -25
- package/lib/cjs/components/datepicker/ui/renderers/index.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/renderers/time-picker.js +0 -384
- package/lib/cjs/components/datepicker/ui/renderers/time-picker.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/templates/index.js +0 -22
- package/lib/cjs/components/datepicker/ui/templates/index.js.map +0 -1
- package/lib/cjs/components/datepicker/ui/templates/templates.js +0 -253
- package/lib/cjs/components/datepicker/ui/templates/templates.js.map +0 -1
- package/lib/cjs/components/datepicker/utils/date-formatters.js +0 -88
- package/lib/cjs/components/datepicker/utils/date-formatters.js.map +0 -1
- package/lib/cjs/components/datepicker/utils/date-utils.js +0 -194
- package/lib/cjs/components/datepicker/utils/date-utils.js.map +0 -1
- package/lib/cjs/components/datepicker/utils/index.js +0 -24
- package/lib/cjs/components/datepicker/utils/index.js.map +0 -1
- package/lib/cjs/components/datepicker/utils/time-utils.js +0 -213
- package/lib/cjs/components/datepicker/utils/time-utils.js.map +0 -1
- package/lib/esm/components/alert/alert.js +0 -1022
- package/lib/esm/components/alert/alert.js.map +0 -1
- package/lib/esm/components/alert/index.js +0 -4
- package/lib/esm/components/alert/index.js.map +0 -1
- package/lib/esm/components/alert/templates.js +0 -112
- package/lib/esm/components/alert/templates.js.map +0 -1
- package/lib/esm/components/alert/types.js +0 -6
- package/lib/esm/components/alert/types.js.map +0 -1
- package/lib/esm/components/datepicker/config/config.js +0 -39
- package/lib/esm/components/datepicker/config/config.js.map +0 -1
- package/lib/esm/components/datepicker/config/index.js +0 -8
- package/lib/esm/components/datepicker/config/index.js.map +0 -1
- package/lib/esm/components/datepicker/config/interfaces.js +0 -6
- package/lib/esm/components/datepicker/config/interfaces.js.map +0 -1
- package/lib/esm/components/datepicker/config/types.js +0 -6
- package/lib/esm/components/datepicker/config/types.js.map +0 -1
- package/lib/esm/components/datepicker/core/event-manager.js +0 -133
- package/lib/esm/components/datepicker/core/event-manager.js.map +0 -1
- package/lib/esm/components/datepicker/core/focus-manager.js +0 -164
- package/lib/esm/components/datepicker/core/focus-manager.js.map +0 -1
- package/lib/esm/components/datepicker/core/helpers.js +0 -211
- package/lib/esm/components/datepicker/core/helpers.js.map +0 -1
- package/lib/esm/components/datepicker/core/index.js +0 -9
- package/lib/esm/components/datepicker/core/index.js.map +0 -1
- package/lib/esm/components/datepicker/core/unified-state-manager.js +0 -391
- package/lib/esm/components/datepicker/core/unified-state-manager.js.map +0 -1
- package/lib/esm/components/datepicker/datepicker.js +0 -2248
- package/lib/esm/components/datepicker/datepicker.js.map +0 -1
- package/lib/esm/components/datepicker/index.js +0 -7
- package/lib/esm/components/datepicker/index.js.map +0 -1
- package/lib/esm/components/datepicker/ui/index.js +0 -7
- package/lib/esm/components/datepicker/ui/index.js.map +0 -1
- package/lib/esm/components/datepicker/ui/input/dropdown.js +0 -486
- package/lib/esm/components/datepicker/ui/input/dropdown.js.map +0 -1
- package/lib/esm/components/datepicker/ui/input/index.js +0 -7
- package/lib/esm/components/datepicker/ui/input/index.js.map +0 -1
- package/lib/esm/components/datepicker/ui/input/segmented-input.js +0 -637
- package/lib/esm/components/datepicker/ui/input/segmented-input.js.map +0 -1
- package/lib/esm/components/datepicker/ui/renderers/calendar.js +0 -443
- package/lib/esm/components/datepicker/ui/renderers/calendar.js.map +0 -1
- package/lib/esm/components/datepicker/ui/renderers/footer.js +0 -39
- package/lib/esm/components/datepicker/ui/renderers/footer.js.map +0 -1
- package/lib/esm/components/datepicker/ui/renderers/header.js +0 -29
- package/lib/esm/components/datepicker/ui/renderers/header.js.map +0 -1
- package/lib/esm/components/datepicker/ui/renderers/index.js +0 -9
- package/lib/esm/components/datepicker/ui/renderers/index.js.map +0 -1
- package/lib/esm/components/datepicker/ui/renderers/time-picker.js +0 -381
- package/lib/esm/components/datepicker/ui/renderers/time-picker.js.map +0 -1
- package/lib/esm/components/datepicker/ui/templates/index.js +0 -6
- package/lib/esm/components/datepicker/ui/templates/index.js.map +0 -1
- package/lib/esm/components/datepicker/ui/templates/templates.js +0 -242
- package/lib/esm/components/datepicker/ui/templates/templates.js.map +0 -1
- package/lib/esm/components/datepicker/utils/date-formatters.js +0 -83
- package/lib/esm/components/datepicker/utils/date-formatters.js.map +0 -1
- package/lib/esm/components/datepicker/utils/date-utils.js +0 -184
- package/lib/esm/components/datepicker/utils/date-utils.js.map +0 -1
- package/lib/esm/components/datepicker/utils/index.js +0 -8
- package/lib/esm/components/datepicker/utils/index.js.map +0 -1
- package/lib/esm/components/datepicker/utils/time-utils.js +0 -201
- package/lib/esm/components/datepicker/utils/time-utils.js.map +0 -1
- package/src/components/alert/alert.ts +0 -990
- package/src/components/alert/index.ts +0 -4
- package/src/components/alert/templates.ts +0 -110
- package/src/components/alert/tests/accessibility/aria-roles.test.ts +0 -19
- package/src/components/alert/tests/accessibility/focus-management.test.ts +0 -19
- package/src/components/alert/tests/accessibility/keyboard-nav.test.ts +0 -22
- package/src/components/alert/tests/actions/confirm-cancel.test.ts +0 -122
- package/src/components/alert/tests/actions/input-field.test.ts +0 -180
- package/src/components/alert/tests/alert.basic.test.ts +0 -126
- package/src/components/alert/tests/alert.config.test.ts +0 -75
- package/src/components/alert/tests/alert.templates.test.ts +0 -17
- package/src/components/alert/tests/config/attribute-config.test.ts +0 -94
- package/src/components/alert/tests/config/json-config.test.ts +0 -119
- package/src/components/alert/tests/config/merging.test.ts +0 -89
- package/src/components/alert/tests/dismissal/auto-dismiss.test.ts +0 -96
- package/src/components/alert/tests/dismissal/escape-key-dismiss.test.ts +0 -105
- package/src/components/alert/tests/dismissal/manual-dismiss.test.ts +0 -90
- package/src/components/alert/tests/dismissal/outside-click-dismiss.test.ts +0 -91
- package/src/components/alert/tests/edge-cases/invalid-config.test.ts +0 -19
- package/src/components/alert/tests/edge-cases/multiple-alerts.test.ts +0 -19
- package/src/components/alert/tests/rendering/custom-content.test.ts +0 -81
- package/src/components/alert/tests/rendering/info-alert.test.ts +0 -84
- package/src/components/alert/tests/rendering/success-alert.test.ts +0 -100
- package/src/components/alert/tests/templates/default-templates.test.ts +0 -16
- package/src/components/alert/tests/templates/user-templates.test.ts +0 -16
- package/src/components/alert/types.ts +0 -145
- package/src/components/datepicker/__tests__/datepicker-events.test.ts +0 -356
- package/src/components/datepicker/__tests__/datepicker-init.test.ts +0 -343
- package/src/components/datepicker/__tests__/datepicker-integration.test.ts +0 -435
- package/src/components/datepicker/__tests__/datepicker-timezone.test.ts +0 -220
- package/src/components/datepicker/__tests__/segmented-input-focus.test.ts +0 -380
- package/src/components/datepicker/__tests__/selective-state-updates.test.ts +0 -400
- package/src/components/datepicker/__tests__/state-manager.test.ts +0 -421
- package/src/components/datepicker/__tests__/time-preservation.test.ts +0 -387
- package/src/components/datepicker/config/config.ts +0 -40
- package/src/components/datepicker/config/index.ts +0 -8
- package/src/components/datepicker/config/interfaces.ts +0 -82
- package/src/components/datepicker/config/types.ts +0 -188
- package/src/components/datepicker/core/event-manager.ts +0 -159
- package/src/components/datepicker/core/focus-manager.ts +0 -201
- package/src/components/datepicker/core/helpers.ts +0 -231
- package/src/components/datepicker/core/index.ts +0 -9
- package/src/components/datepicker/core/unified-state-manager.ts +0 -459
- package/src/components/datepicker/datepicker.css +0 -435
- package/src/components/datepicker/datepicker.ts +0 -2548
- package/src/components/datepicker/index.ts +0 -8
- package/src/components/datepicker/ui/index.ts +0 -7
- package/src/components/datepicker/ui/input/dropdown.ts +0 -552
- package/src/components/datepicker/ui/input/index.ts +0 -7
- package/src/components/datepicker/ui/input/segmented-input.ts +0 -638
- package/src/components/datepicker/ui/renderers/__tests__/calendar-optimizations.test.ts +0 -611
- package/src/components/datepicker/ui/renderers/calendar.ts +0 -530
- package/src/components/datepicker/ui/renderers/footer.ts +0 -43
- package/src/components/datepicker/ui/renderers/header.ts +0 -33
- package/src/components/datepicker/ui/renderers/index.ts +0 -9
- package/src/components/datepicker/ui/renderers/time-picker.ts +0 -438
- package/src/components/datepicker/ui/templates/index.ts +0 -6
- package/src/components/datepicker/ui/templates/templates.ts +0 -306
- package/src/components/datepicker/utils/__tests__/date-formatters.test.ts +0 -160
- package/src/components/datepicker/utils/__tests__/date-utils-keys.test.ts +0 -86
- package/src/components/datepicker/utils/__tests__/date-utils-timezone.test.ts +0 -215
- package/src/components/datepicker/utils/date-formatters.ts +0 -85
- package/src/components/datepicker/utils/date-utils.ts +0 -172
- package/src/components/datepicker/utils/index.ts +0 -8
- package/src/components/datepicker/utils/time-utils.ts +0 -221
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* templates.ts - Unified template system for KTDatepicker
|
|
4
|
-
* Consolidates all template functionality including default templates, merging logic,
|
|
5
|
-
* rendering utilities, and template management into a single, unified system.
|
|
6
|
-
*/
|
|
7
|
-
var __assign = (this && this.__assign) || function () {
|
|
8
|
-
__assign = Object.assign || function(t) {
|
|
9
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
10
|
-
s = arguments[i];
|
|
11
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
12
|
-
t[p] = s[p];
|
|
13
|
-
}
|
|
14
|
-
return t;
|
|
15
|
-
};
|
|
16
|
-
return __assign.apply(this, arguments);
|
|
17
|
-
};
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.TemplateRenderer = exports.defaultTemplates = void 0;
|
|
20
|
-
exports.mergeTemplates = mergeTemplates;
|
|
21
|
-
exports.getMergedTemplates = getMergedTemplates;
|
|
22
|
-
exports.renderTemplateString = renderTemplateString;
|
|
23
|
-
exports.mergeClassData = mergeClassData;
|
|
24
|
-
exports.isTemplateFunction = isTemplateFunction;
|
|
25
|
-
exports.renderTemplateToDOM = renderTemplateToDOM;
|
|
26
|
-
exports.createTemplateRenderer = createTemplateRenderer;
|
|
27
|
-
exports.getTemplateStrings = getTemplateStrings;
|
|
28
|
-
// Default template strings for all UI fragments
|
|
29
|
-
exports.defaultTemplates = {
|
|
30
|
-
// Add role="dialog" and aria-modal to the dropdown container
|
|
31
|
-
container: "<div data-kt-datepicker-container {{class}}></div>",
|
|
32
|
-
header: "<div data-kt-datepicker-header {{class}}\">{{prevButton}}<span data-kt-datepicker-month-year>{{month}} {{year}}</span>{{nextButton}}</div>",
|
|
33
|
-
footer: "<div data-kt-datepicker-footer {{class}}\">{{todayButton}} {{clearButton}} {{applyButton}}</div>",
|
|
34
|
-
// Add role="grid" and aria-label to the calendar grid
|
|
35
|
-
calendarGrid: "<table data-kt-datepicker-calendar-grid role=\"grid\" aria-label=\"Calendar\" aria-readonly=\"true\" {{class}}>{{calendar}}</table>",
|
|
36
|
-
// Add role="gridcell" to dayCell, aria-selected, and tabindex for keyboard nav
|
|
37
|
-
dayCell: "<td data-kt-datepicker-day role=\"gridcell\" {{attributes}} {{class}}><button type=\"button\" data-day=\"{{day}}\" aria-label=\"Select {{day}}\" tabindex=\"-1\">{{day}}</button></td>",
|
|
38
|
-
// Month/year selectors (add aria-live for dynamic updates)
|
|
39
|
-
monthYearSelect: "<div data-kt-datepicker-monthyear-select aria-live=\"polite\" {{class}}>{{monthSelect}} {{yearSelect}}</div>",
|
|
40
|
-
monthSelection: "<div data-kt-datepicker-month-selection {{class}}>{{months}}</div>",
|
|
41
|
-
yearSelection: "<div data-kt-datepicker-year-selection {{class}}>{{years}}</div>",
|
|
42
|
-
inputWrapper: "<div data-kt-datepicker-input-wrapper class=\"flex items-center {{class}}\">{{input}} {{icon}}</div>",
|
|
43
|
-
segmentedDateInput: "<div data-kt-datepicker-segmented-input class=\"flex items-center {{class}}\">{{segments}}</div>",
|
|
44
|
-
segmentedDateRangeInput: "<div data-kt-datepicker-segmented-range-input class=\"flex items-center {{class}}\">{{start}}{{separator}}{{end}}</div>",
|
|
45
|
-
/**
|
|
46
|
-
* Template for a single date segment (e.g., day, month, year)
|
|
47
|
-
* Placeholders: segmentType, segmentValue, ariaLabel, ariaValueNow, ariaValueText, ariaValueMin, ariaValueMax, tabindex, contenteditable
|
|
48
|
-
*/
|
|
49
|
-
dateSegment: "<span data-segment=\"{{segmentType}}\" role=\"spinbutton\" aria-label=\"{{ariaLabel}}\" aria-valuenow=\"{{ariaValueNow}}\" aria-valuetext=\"{{ariaValueText}}\" aria-valuemin=\"{{ariaValueMin}}\" aria-valuemax=\"{{ariaValueMax}}\" tabindex=\"{{tabindex}}\" contenteditable=\"{{contenteditable}}\" {{class}}>{{segmentValue}}</span>",
|
|
50
|
-
/**
|
|
51
|
-
* Template for a segment separator (e.g., / or space)
|
|
52
|
-
* Placeholders: separator
|
|
53
|
-
*/
|
|
54
|
-
segmentSeparator: "<span data-segment-separator {{class}}>{{separator}}</span>",
|
|
55
|
-
placeholder: "<span data-kt-datepicker-placeholder {{class}}>{{placeholder}}</span>",
|
|
56
|
-
displayWrapper: "<div data-kt-datepicker-display-wrapper {{class}}>{{value}}</div>",
|
|
57
|
-
displayElement: "<span data-kt-datepicker-display-element {{class}}>{{value}}</span>",
|
|
58
|
-
timePanel: "<div data-kt-datepicker-time-panel {{class}}>{{hours}}:{{minutes}}:{{seconds}} {{amPm}}</div>",
|
|
59
|
-
multiDateTag: "<span data-kt-datepicker-multidate-tag {{class}}>{{date}} <button>{{removeButton}}</button></span>",
|
|
60
|
-
emptyState: "<div data-kt-datepicker-empty {{class}}>{{message}}</div>",
|
|
61
|
-
// Add aria-haspopup and aria-expanded to calendar button
|
|
62
|
-
calendarButton: "<button type=\"button\" data-kt-datepicker-calendar-btn aria-label=\"Open calendar\" aria-haspopup=\"dialog\" aria-expanded=\"false\" {{class}}>\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\"/>\n <path d=\"M16 2v4M8 2v4M3 10h18\"/>\n </svg>\n </button>",
|
|
63
|
-
// Add role="dialog" and aria-modal to dropdown
|
|
64
|
-
dropdown: "<div data-kt-datepicker-dropdown role=\"dialog\" aria-modal=\"true\" aria-label=\"Date picker\" class=\"hidden {{class}}\"></div>",
|
|
65
|
-
prevButton: "<button type=\"button\" data-kt-datepicker-prev aria-label=\"Previous month\" {{class}}>\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"m15 18-6-6 6-6\"/>\n </svg>\n </button>",
|
|
66
|
-
nextButton: "<button type=\"button\" data-kt-datepicker-next aria-label=\"Next month\" {{class}}>\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"m9 18 6-6-6-6\"/>\n </svg>\n </button>",
|
|
67
|
-
// Add role="row" to calendar table rows
|
|
68
|
-
calendarTable: "<table data-kt-datepicker-calendar-table role=\"grid\" aria-label=\"Calendar\" aria-readonly=\"true\" {{class}}><thead><tr role=\"row\">\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{sunday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{monday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{tuesday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{wednesday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{thursday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{friday}}</th>\n <th class=\"py-1 px-1 text-xs font-semibold text-gray-500 dark:text-gray-400\">{{saturday}}</th>\n </tr></thead>{{body}}</table>",
|
|
69
|
-
calendarBody: "<tbody data-kt-datepicker-calendar-body {{class}}>{{rows}}</tbody>",
|
|
70
|
-
calendarRow: "<tr data-kt-datepicker-calendar-row role=\"row\" {{class}}>{{cells}}</tr>",
|
|
71
|
-
todayButton: "<button type=\"button\" data-kt-datepicker-today {{class}}>Today</button>",
|
|
72
|
-
clearButton: "<button type=\"button\" data-kt-datepicker-clear {{class}}>Clear</button>",
|
|
73
|
-
applyButton: "<button type=\"button\" data-kt-datepicker-apply {{class}}>Apply</button>",
|
|
74
|
-
/**
|
|
75
|
-
* Container for multiple calendar months (horizontal multi-month view)
|
|
76
|
-
*/
|
|
77
|
-
multiMonthContainer: "<div data-kt-datepicker-multimonth-container class=\"flex flex-col md:flex-row gap-4 {{class}}\">{{calendars}}</div>",
|
|
78
|
-
// Time picker templates
|
|
79
|
-
timePickerWrapper: "<div data-kt-datepicker-time-picker {{class}}>{{timeDisplay}} {{timeControls}}</div>",
|
|
80
|
-
timeDisplay: "<div data-kt-datepicker-time-display {{class}}>{{timeValue}}</div>",
|
|
81
|
-
timeControls: "<div data-kt-datepicker-time-controls {{class}}>{{timeUnits}} {{ampmControl}}</div>",
|
|
82
|
-
timeUnit: "<div data-kt-datepicker-time-unit data-kt-datepicker-time-unit=\"{{unitType}}\" {{class}}>{{upButton}} {{valueDisplay}} {{downButton}}</div>",
|
|
83
|
-
timeUpButton: "<button type=\"button\" data-kt-datepicker-time-up aria-label=\"Increment {{unitType}}\" {{class}} {{disabled}}>\u25B2</button>",
|
|
84
|
-
timeDownButton: "<button type=\"button\" data-kt-datepicker-time-down aria-label=\"Decrement {{unitType}}\" {{class}} {{disabled}}>\u25BC</button>",
|
|
85
|
-
timeValue: "<span data-kt-datepicker-time-value {{class}}>{{value}}</span>",
|
|
86
|
-
timeSeparator: "<span data-kt-datepicker-time-separator {{class}}>{{separator}}</span>",
|
|
87
|
-
ampmControl: "<div data-kt-datepicker-ampm-control {{class}}>{{ampmButton}}</div>",
|
|
88
|
-
ampmButton: "<button type=\"button\" data-kt-datepicker-ampm-button aria-label=\"Toggle AM/PM\" {{class}} {{disabled}}>{{ampmValue}}</button>",
|
|
89
|
-
/**
|
|
90
|
-
* Panel wrapper for header + calendar
|
|
91
|
-
*/
|
|
92
|
-
panel: "<div data-kt-datepicker-panel {{class}}>{{header}}{{calendar}}</div>",
|
|
93
|
-
/**
|
|
94
|
-
* Live region for accessibility announcements
|
|
95
|
-
*/
|
|
96
|
-
liveRegion: "<div data-kt-datepicker-live aria-live=\"polite\" {{class}}></div>",
|
|
97
|
-
/**
|
|
98
|
-
* Container for range input start date segment
|
|
99
|
-
*/
|
|
100
|
-
rangeStartContainer: "<div data-kt-datepicker-segmented-start {{class}}></div>",
|
|
101
|
-
/**
|
|
102
|
-
* Container for range input end date segment
|
|
103
|
-
*/
|
|
104
|
-
rangeEndContainer: "<div data-kt-datepicker-segmented-end {{class}}></div>",
|
|
105
|
-
};
|
|
106
|
-
/**
|
|
107
|
-
* Merges default templates with user overrides.
|
|
108
|
-
* User overrides take precedence.
|
|
109
|
-
*/
|
|
110
|
-
function mergeTemplates(defaults, overrides) {
|
|
111
|
-
return __assign(__assign({}, defaults), (overrides || {}));
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Merges default, config, and user templates (string or function)
|
|
115
|
-
* Precedence: default < config < user
|
|
116
|
-
*/
|
|
117
|
-
function getMergedTemplates(configTemplates, userTemplates) {
|
|
118
|
-
return __assign(__assign(__assign({}, exports.defaultTemplates), (configTemplates || {})), (userTemplates || {}));
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Renders a template string with data using {{key}} placeholders.
|
|
122
|
-
* Enhanced to handle class placeholders specifically.
|
|
123
|
-
*/
|
|
124
|
-
function renderTemplateString(template, data) {
|
|
125
|
-
return template.replace(/{{(\w+)}}/g, function (_, key) {
|
|
126
|
-
var value = data[key];
|
|
127
|
-
if (value !== undefined) {
|
|
128
|
-
return String(value);
|
|
129
|
-
}
|
|
130
|
-
return '';
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Merges class data with template data for rendering.
|
|
135
|
-
* Extracts class for specific template key from config classes object.
|
|
136
|
-
*/
|
|
137
|
-
function mergeClassData(templateKey, templateData, configClasses) {
|
|
138
|
-
var classValue = (configClasses === null || configClasses === void 0 ? void 0 : configClasses[templateKey]) || '';
|
|
139
|
-
return __assign(__assign({}, templateData), { class: classValue });
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Checks if a template is a function.
|
|
143
|
-
*/
|
|
144
|
-
function isTemplateFunction(tpl) {
|
|
145
|
-
return typeof tpl === 'function';
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Renders a template string with data and returns a DocumentFragment.
|
|
149
|
-
* Usage: const frag = renderTemplateToDOM(template, data)
|
|
150
|
-
*/
|
|
151
|
-
function renderTemplateToDOM(template, data) {
|
|
152
|
-
if (data === void 0) { data = {}; }
|
|
153
|
-
var html = renderTemplateString(template, data);
|
|
154
|
-
var frag = document.createDocumentFragment();
|
|
155
|
-
var temp = document.createElement('div');
|
|
156
|
-
temp.innerHTML = html;
|
|
157
|
-
while (temp.firstChild) {
|
|
158
|
-
frag.appendChild(temp.firstChild);
|
|
159
|
-
}
|
|
160
|
-
return frag;
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Unified template renderer for all datepicker UI components
|
|
164
|
-
* Ensures consistent template usage and eliminates scattered rendering logic
|
|
165
|
-
*/
|
|
166
|
-
var TemplateRenderer = /** @class */ (function () {
|
|
167
|
-
function TemplateRenderer(templates) {
|
|
168
|
-
this._templates = templates;
|
|
169
|
-
}
|
|
170
|
-
/**
|
|
171
|
-
* Render a template with data and return HTML string
|
|
172
|
-
*/
|
|
173
|
-
TemplateRenderer.prototype.renderTemplateString = function (options) {
|
|
174
|
-
var templateKey = options.templateKey, data = options.data, configClasses = options.configClasses, fallbackTemplate = options.fallbackTemplate;
|
|
175
|
-
// Get template from template set
|
|
176
|
-
var template = this._templates[templateKey];
|
|
177
|
-
// Use fallback if template not found
|
|
178
|
-
if (!template && fallbackTemplate) {
|
|
179
|
-
template = fallbackTemplate;
|
|
180
|
-
}
|
|
181
|
-
// Validate template exists
|
|
182
|
-
if (!template) {
|
|
183
|
-
throw new Error("Template not found for key: ".concat(templateKey));
|
|
184
|
-
}
|
|
185
|
-
// Merge class data
|
|
186
|
-
var mergedData = mergeClassData(templateKey, data, configClasses);
|
|
187
|
-
// Render template
|
|
188
|
-
if (isTemplateFunction(template)) {
|
|
189
|
-
return template(mergedData);
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
return renderTemplateString(template, mergedData);
|
|
193
|
-
}
|
|
194
|
-
};
|
|
195
|
-
/**
|
|
196
|
-
* Render a template with data and return HTMLElement
|
|
197
|
-
*/
|
|
198
|
-
TemplateRenderer.prototype.renderTemplateToElement = function (options) {
|
|
199
|
-
var html = this.renderTemplateString(options);
|
|
200
|
-
var fragment = renderTemplateToDOM(html);
|
|
201
|
-
var element = fragment.firstElementChild;
|
|
202
|
-
if (!element) {
|
|
203
|
-
throw new Error("Failed to render template to element for key: ".concat(options.templateKey));
|
|
204
|
-
}
|
|
205
|
-
return element;
|
|
206
|
-
};
|
|
207
|
-
/**
|
|
208
|
-
* Render a template with data and return DocumentFragment
|
|
209
|
-
*/
|
|
210
|
-
TemplateRenderer.prototype.renderTemplateToFragment = function (options) {
|
|
211
|
-
var html = this.renderTemplateString(options);
|
|
212
|
-
return renderTemplateToDOM(html);
|
|
213
|
-
};
|
|
214
|
-
/**
|
|
215
|
-
* Check if a template exists
|
|
216
|
-
*/
|
|
217
|
-
TemplateRenderer.prototype.hasTemplate = function (templateKey) {
|
|
218
|
-
return !!this._templates[templateKey];
|
|
219
|
-
};
|
|
220
|
-
/**
|
|
221
|
-
* Get template by key
|
|
222
|
-
*/
|
|
223
|
-
TemplateRenderer.prototype.getTemplate = function (templateKey) {
|
|
224
|
-
return this._templates[templateKey];
|
|
225
|
-
};
|
|
226
|
-
/**
|
|
227
|
-
* Update templates
|
|
228
|
-
*/
|
|
229
|
-
TemplateRenderer.prototype.updateTemplates = function (templates) {
|
|
230
|
-
this._templates = templates;
|
|
231
|
-
};
|
|
232
|
-
/**
|
|
233
|
-
* Get all templates
|
|
234
|
-
*/
|
|
235
|
-
TemplateRenderer.prototype.getTemplates = function () {
|
|
236
|
-
return __assign({}, this._templates);
|
|
237
|
-
};
|
|
238
|
-
return TemplateRenderer;
|
|
239
|
-
}());
|
|
240
|
-
exports.TemplateRenderer = TemplateRenderer;
|
|
241
|
-
/**
|
|
242
|
-
* Factory function to create a template renderer
|
|
243
|
-
*/
|
|
244
|
-
function createTemplateRenderer(templates) {
|
|
245
|
-
return new TemplateRenderer(templates);
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* Returns the merged template set for a given config.
|
|
249
|
-
*/
|
|
250
|
-
function getTemplateStrings(config) {
|
|
251
|
-
return mergeTemplates(exports.defaultTemplates, config === null || config === void 0 ? void 0 : config.templates);
|
|
252
|
-
}
|
|
253
|
-
//# sourceMappingURL=templates.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../../../src/components/datepicker/ui/templates/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* date-formatters.ts - Date formatting and comparison utilities for KTDatepicker
|
|
4
|
-
* Provides pure utility functions for date formatting, comparison, and normalization.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.formatDate = formatDate;
|
|
8
|
-
exports.isSameDay = isSameDay;
|
|
9
|
-
exports.normalizeDateToMidnight = normalizeDateToMidnight;
|
|
10
|
-
/**
|
|
11
|
-
* Formats a Date object according to the provided format string.
|
|
12
|
-
*
|
|
13
|
-
* Supported tokens:
|
|
14
|
-
* yyyy - 4-digit year
|
|
15
|
-
* yy - 2-digit year
|
|
16
|
-
* MM - 2-digit month (01-12)
|
|
17
|
-
* M - 1/2-digit month (1-12)
|
|
18
|
-
* dd - 2-digit day (01-31)
|
|
19
|
-
* d - 1/2-digit day (1-31)
|
|
20
|
-
* HH - 2-digit hour (00-23)
|
|
21
|
-
* H - 1/2-digit hour (0-23)
|
|
22
|
-
* mm - 2-digit minute (00-59)
|
|
23
|
-
* m - 1/2-digit minute (0-59)
|
|
24
|
-
* ss - 2-digit second (00-59)
|
|
25
|
-
* s - 1/2-digit second (0-59)
|
|
26
|
-
* a - AM/PM indicator
|
|
27
|
-
*
|
|
28
|
-
* @param date Date object to format
|
|
29
|
-
* @param format Format string with tokens
|
|
30
|
-
* @returns Formatted date string, or empty string if date is invalid
|
|
31
|
-
*
|
|
32
|
-
* @example
|
|
33
|
-
* formatDate(new Date(2024, 0, 15), 'yyyy-MM-dd') // Returns "2024-01-15"
|
|
34
|
-
* formatDate(new Date(2024, 0, 15, 14, 30), 'HH:mm') // Returns "14:30"
|
|
35
|
-
*/
|
|
36
|
-
function formatDate(date, format) {
|
|
37
|
-
if (!(date instanceof Date) || isNaN(date.getTime()))
|
|
38
|
-
return '';
|
|
39
|
-
return format
|
|
40
|
-
.replace(/yyyy/g, date.getFullYear().toString())
|
|
41
|
-
.replace(/yy/g, date.getFullYear().toString().slice(-2))
|
|
42
|
-
.replace(/MM/g, String(date.getMonth() + 1).padStart(2, '0'))
|
|
43
|
-
.replace(/M(?![a-zA-Z])/g, String(date.getMonth() + 1))
|
|
44
|
-
.replace(/dd/g, String(date.getDate()).padStart(2, '0'))
|
|
45
|
-
.replace(/d(?![a-zA-Z])/g, String(date.getDate()))
|
|
46
|
-
.replace(/HH/g, String(date.getHours()).padStart(2, '0'))
|
|
47
|
-
.replace(/H(?![a-zA-Z])/g, String(date.getHours()))
|
|
48
|
-
.replace(/mm/g, String(date.getMinutes()).padStart(2, '0'))
|
|
49
|
-
.replace(/m(?![a-zA-Z])/g, String(date.getMinutes()))
|
|
50
|
-
.replace(/ss/g, String(date.getSeconds()).padStart(2, '0'))
|
|
51
|
-
.replace(/s(?![a-zA-Z])/g, String(date.getSeconds()))
|
|
52
|
-
.replace(/a/g, date.getHours() >= 12 ? 'PM' : 'AM');
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Checks if two dates represent the same calendar day.
|
|
56
|
-
* Compares year, month, and day components, ignoring time.
|
|
57
|
-
*
|
|
58
|
-
* @param a First date to compare
|
|
59
|
-
* @param b Second date to compare
|
|
60
|
-
* @returns True if both dates represent the same day, false otherwise
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* isSameDay(new Date(2024, 0, 15, 10, 30), new Date(2024, 0, 15, 14, 45)) // Returns true
|
|
64
|
-
* isSameDay(new Date(2024, 0, 15), new Date(2024, 0, 16)) // Returns false
|
|
65
|
-
*/
|
|
66
|
-
function isSameDay(a, b) {
|
|
67
|
-
return a.getFullYear() === b.getFullYear() &&
|
|
68
|
-
a.getMonth() === b.getMonth() &&
|
|
69
|
-
a.getDate() === b.getDate();
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Normalizes a date to local midnight (00:00:00) in the local timezone.
|
|
73
|
-
* Useful for date-only comparisons where time components should be ignored.
|
|
74
|
-
*
|
|
75
|
-
* @param date Date object to normalize
|
|
76
|
-
* @returns New Date object set to local midnight (00:00:00)
|
|
77
|
-
*
|
|
78
|
-
* @example
|
|
79
|
-
* const date = new Date(2024, 0, 15, 14, 30, 45);
|
|
80
|
-
* const normalized = normalizeDateToMidnight(date);
|
|
81
|
-
* // normalized represents 2024-01-15 00:00:00 in local timezone
|
|
82
|
-
*/
|
|
83
|
-
function normalizeDateToMidnight(date) {
|
|
84
|
-
var normalized = new Date(date);
|
|
85
|
-
normalized.setHours(0, 0, 0, 0);
|
|
86
|
-
return normalized;
|
|
87
|
-
}
|
|
88
|
-
//# sourceMappingURL=date-formatters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date-formatters.js","sourceRoot":"","sources":["../../../../../src/components/datepicker/utils/date-formatters.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4BH,gCAgBC;AAcD,8BAIC;AAcD,0DAIC;AA9ED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAgB,UAAU,CAAC,IAAU,EAAE,MAAc;IACpD,IAAI,CAAC,CAAC,IAAI,YAAY,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IAChE,OAAO,MAAM;SACX,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;SAC/C,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACvD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC5D,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;SACtD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACvD,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;SACjD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACxD,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;SAClD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC1D,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;SACpD,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC1D,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;SACpD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,SAAS,CAAC,CAAO,EAAE,CAAO;IACzC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE;QACzC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE;QAC7B,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,uBAAuB,CAAC,IAAU;IACjD,IAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,OAAO,UAAU,CAAC;AACnB,CAAC"}
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* date-utils.ts - Shared date parsing/formatting utilities for KTDatepicker
|
|
4
|
-
* Exports parseDateFromFormat for use in datepicker and segmented input.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.parseDateFromFormat = parseDateFromFormat;
|
|
8
|
-
exports.getSegmentOrderFromFormat = getSegmentOrderFromFormat;
|
|
9
|
-
exports.formatDateToLocalString = formatDateToLocalString;
|
|
10
|
-
exports.normalizeDateToLocalMidnight = normalizeDateToLocalMidnight;
|
|
11
|
-
exports.isSameLocalDay = isSameLocalDay;
|
|
12
|
-
exports.parseLocalDate = parseLocalDate;
|
|
13
|
-
exports.getDateKey = getDateKey;
|
|
14
|
-
exports.isSameDayByKey = isSameDayByKey;
|
|
15
|
-
/**
|
|
16
|
-
* Parses a date string according to a format string (supports yyyy, yy, MM, M, dd, d).
|
|
17
|
-
* @param str Date string
|
|
18
|
-
* @param format Format string
|
|
19
|
-
* @returns Date object or null if parsing fails
|
|
20
|
-
*/
|
|
21
|
-
function parseDateFromFormat(str, format) {
|
|
22
|
-
if (!str || !format)
|
|
23
|
-
return null;
|
|
24
|
-
// Supported tokens: yyyy, yy, MM, M, dd, d
|
|
25
|
-
var tokenRegex = /(yyyy|yy|MM|M|dd|d)/g;
|
|
26
|
-
var tokens = [];
|
|
27
|
-
var regexStr = '';
|
|
28
|
-
var lastIndex = 0;
|
|
29
|
-
var match;
|
|
30
|
-
while ((match = tokenRegex.exec(format)) !== null) {
|
|
31
|
-
// Add any literal text between tokens
|
|
32
|
-
if (match.index > lastIndex) {
|
|
33
|
-
regexStr += format.slice(lastIndex, match.index).replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
34
|
-
}
|
|
35
|
-
tokens.push(match[0]);
|
|
36
|
-
switch (match[0]) {
|
|
37
|
-
case 'yyyy':
|
|
38
|
-
regexStr += '(\\d{4})';
|
|
39
|
-
break;
|
|
40
|
-
case 'yy':
|
|
41
|
-
regexStr += '(\\d{2})';
|
|
42
|
-
break;
|
|
43
|
-
case 'MM':
|
|
44
|
-
regexStr += '(\\d{2})';
|
|
45
|
-
break;
|
|
46
|
-
case 'M':
|
|
47
|
-
regexStr += '(\\d{1,2})';
|
|
48
|
-
break;
|
|
49
|
-
case 'dd':
|
|
50
|
-
regexStr += '(\\d{2})';
|
|
51
|
-
break;
|
|
52
|
-
case 'd':
|
|
53
|
-
regexStr += '(\\d{1,2})';
|
|
54
|
-
break;
|
|
55
|
-
}
|
|
56
|
-
lastIndex = match.index + match[0].length;
|
|
57
|
-
}
|
|
58
|
-
// Add any trailing literal text
|
|
59
|
-
if (lastIndex < format.length) {
|
|
60
|
-
regexStr += format.slice(lastIndex).replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
61
|
-
}
|
|
62
|
-
var regex = new RegExp('^' + regexStr + '$');
|
|
63
|
-
var matchResult = regex.exec(str);
|
|
64
|
-
if (!matchResult)
|
|
65
|
-
return null;
|
|
66
|
-
var year = 1970, month = 1, day = 1;
|
|
67
|
-
var matchIdx = 1;
|
|
68
|
-
for (var _i = 0, tokens_1 = tokens; _i < tokens_1.length; _i++) {
|
|
69
|
-
var token = tokens_1[_i];
|
|
70
|
-
var val = matchResult[matchIdx++] || '';
|
|
71
|
-
switch (token) {
|
|
72
|
-
case 'yyyy':
|
|
73
|
-
year = parseInt(val, 10);
|
|
74
|
-
break;
|
|
75
|
-
case 'yy':
|
|
76
|
-
year = 2000 + parseInt(val, 10);
|
|
77
|
-
break;
|
|
78
|
-
case 'MM':
|
|
79
|
-
case 'M':
|
|
80
|
-
month = parseInt(val, 10);
|
|
81
|
-
break;
|
|
82
|
-
case 'dd':
|
|
83
|
-
case 'd':
|
|
84
|
-
day = parseInt(val, 10);
|
|
85
|
-
break;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return new Date(year, month - 1, day);
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Extracts segment order from a format string for use in segmented input.
|
|
92
|
-
* @param format Format string (e.g., 'dd/MM/yyyy', 'yyyy-MM-dd')
|
|
93
|
-
* @returns Array of segment types in the order they appear in the format
|
|
94
|
-
*/
|
|
95
|
-
function getSegmentOrderFromFormat(format) {
|
|
96
|
-
if (!format)
|
|
97
|
-
return ['month', 'day', 'year']; // Default fallback
|
|
98
|
-
var segments = [];
|
|
99
|
-
var tokenRegex = /(yyyy|yy|MM|M|dd|d)/g;
|
|
100
|
-
var match;
|
|
101
|
-
while ((match = tokenRegex.exec(format)) !== null) {
|
|
102
|
-
switch (match[0]) {
|
|
103
|
-
case 'yyyy':
|
|
104
|
-
case 'yy':
|
|
105
|
-
segments.push('year');
|
|
106
|
-
break;
|
|
107
|
-
case 'MM':
|
|
108
|
-
case 'M':
|
|
109
|
-
segments.push('month');
|
|
110
|
-
break;
|
|
111
|
-
case 'dd':
|
|
112
|
-
case 'd':
|
|
113
|
-
segments.push('day');
|
|
114
|
-
break;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
// Remove duplicates while preserving order
|
|
118
|
-
var uniqueSegments = segments.filter(function (segment, index) { return segments.indexOf(segment) === index; });
|
|
119
|
-
// Ensure we have all required segments, add missing ones at the end
|
|
120
|
-
var requiredSegments = ['day', 'month', 'year'];
|
|
121
|
-
requiredSegments.forEach(function (segment) {
|
|
122
|
-
if (!uniqueSegments.includes(segment)) {
|
|
123
|
-
uniqueSegments.push(segment);
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
return uniqueSegments;
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Formats a date to a local timezone string in YYYY-MM-DD format.
|
|
130
|
-
* Uses local timezone components to prevent date shifts from UTC conversion.
|
|
131
|
-
* @param date Date object to format
|
|
132
|
-
* @returns Date string in YYYY-MM-DD format using local timezone
|
|
133
|
-
*/
|
|
134
|
-
function formatDateToLocalString(date) {
|
|
135
|
-
var year = date.getFullYear();
|
|
136
|
-
var month = String(date.getMonth() + 1).padStart(2, '0');
|
|
137
|
-
var day = String(date.getDate()).padStart(2, '0');
|
|
138
|
-
return "".concat(year, "-").concat(month, "-").concat(day);
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Normalizes a date to local midnight (00:00:00) in the local timezone.
|
|
142
|
-
* Useful for date-only comparisons where time components should be ignored.
|
|
143
|
-
* @param date Date object to normalize
|
|
144
|
-
* @returns New Date object set to local midnight
|
|
145
|
-
*/
|
|
146
|
-
function normalizeDateToLocalMidnight(date) {
|
|
147
|
-
var normalized = new Date(date);
|
|
148
|
-
normalized.setHours(0, 0, 0, 0);
|
|
149
|
-
return normalized;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Checks if two dates represent the same calendar day in local timezone.
|
|
153
|
-
* Compares year, month, and day components, ignoring time.
|
|
154
|
-
* @param a First date
|
|
155
|
-
* @param b Second date
|
|
156
|
-
* @returns True if both dates represent the same day in local timezone
|
|
157
|
-
*/
|
|
158
|
-
function isSameLocalDay(a, b) {
|
|
159
|
-
return a.getFullYear() === b.getFullYear() &&
|
|
160
|
-
a.getMonth() === b.getMonth() &&
|
|
161
|
-
a.getDate() === b.getDate();
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Parses a date string (YYYY-MM-DD format) into a Date object at local midnight.
|
|
165
|
-
* Creates a local timezone date to avoid timezone-related date shifts.
|
|
166
|
-
* @param dateStr Date string in YYYY-MM-DD format
|
|
167
|
-
* @returns Date object representing the date at local midnight
|
|
168
|
-
*/
|
|
169
|
-
function parseLocalDate(dateStr) {
|
|
170
|
-
// Parse YYYY-MM-DD string and create local date at midnight
|
|
171
|
-
var _a = dateStr.split('-').map(Number), year = _a[0], month = _a[1], day = _a[2];
|
|
172
|
-
return new Date(year, month - 1, day, 0, 0, 0, 0);
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Converts a date to a numeric key for O(1) date comparisons.
|
|
176
|
-
* Format: year * 10000 + month * 100 + day
|
|
177
|
-
* This enables efficient Set/Map lookups for date matching.
|
|
178
|
-
* @param date Date object to convert
|
|
179
|
-
* @returns Numeric key representing the date (e.g., 20241225 for Dec 25, 2024)
|
|
180
|
-
*/
|
|
181
|
-
function getDateKey(date) {
|
|
182
|
-
return date.getFullYear() * 10000 + (date.getMonth() + 1) * 100 + date.getDate();
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Checks if two dates have the same date key (same calendar day).
|
|
186
|
-
* Optimized version using numeric keys for O(1) comparison.
|
|
187
|
-
* @param a First date
|
|
188
|
-
* @param b Second date
|
|
189
|
-
* @returns True if both dates have the same date key
|
|
190
|
-
*/
|
|
191
|
-
function isSameDayByKey(a, b) {
|
|
192
|
-
return getDateKey(a) === getDateKey(b);
|
|
193
|
-
}
|
|
194
|
-
//# sourceMappingURL=date-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date-utils.js","sourceRoot":"","sources":["../../../../../src/components/datepicker/utils/date-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* utils/index.ts - Utility module exports
|
|
4
|
-
* Provides date and time utility functions for KTDatepicker
|
|
5
|
-
*/
|
|
6
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
18
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
__exportStar(require("./date-utils"), exports);
|
|
22
|
-
__exportStar(require("./date-formatters"), exports);
|
|
23
|
-
__exportStar(require("./time-utils"), exports);
|
|
24
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/datepicker/utils/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,+CAA6B;AAC7B,oDAAkC;AAClC,+CAA6B"}
|