@keenthemes/ktui 1.2.1 → 1.2.3
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/ktui.js +2216 -845
- package/dist/ktui.min.js +1 -1
- package/dist/ktui.min.js.map +1 -1
- package/dist/styles.css +24 -197
- package/lib/cjs/components/carousel/carousel.d.ts +102 -0
- package/lib/cjs/components/carousel/carousel.d.ts.map +1 -0
- package/lib/cjs/components/carousel/carousel.js +769 -0
- package/lib/cjs/components/carousel/carousel.js.map +1 -0
- package/lib/cjs/components/carousel/index.d.ts +7 -0
- package/lib/cjs/components/carousel/index.d.ts.map +1 -0
- package/lib/cjs/components/carousel/index.js +10 -0
- package/lib/cjs/components/carousel/index.js.map +1 -0
- package/lib/cjs/components/carousel/types.d.ts +36 -0
- package/lib/cjs/components/carousel/types.d.ts.map +1 -0
- package/lib/cjs/components/carousel/types.js +7 -0
- package/lib/cjs/components/carousel/types.js.map +1 -0
- package/lib/cjs/components/component.d.ts +3 -3
- package/lib/cjs/components/component.d.ts.map +1 -1
- package/lib/cjs/components/component.js +9 -1
- package/lib/cjs/components/component.js.map +1 -1
- package/lib/cjs/components/datatable/datatable-checkbox.d.ts +1 -1
- package/lib/cjs/components/datatable/datatable-checkbox.d.ts.map +1 -1
- package/lib/cjs/components/datatable/datatable-checkbox.js +1 -1
- package/lib/cjs/components/datatable/datatable-checkbox.js.map +1 -1
- package/lib/cjs/components/datatable/datatable-sort.d.ts +1 -1
- package/lib/cjs/components/datatable/datatable-sort.d.ts.map +1 -1
- package/lib/cjs/components/datatable/datatable-sort.js.map +1 -1
- package/lib/cjs/components/datatable/datatable.d.ts +2 -0
- package/lib/cjs/components/datatable/datatable.d.ts.map +1 -1
- package/lib/cjs/components/datatable/datatable.js +30 -17
- package/lib/cjs/components/datatable/datatable.js.map +1 -1
- package/lib/cjs/components/datatable/types.d.ts +2 -1
- package/lib/cjs/components/datatable/types.d.ts.map +1 -1
- package/lib/cjs/components/drawer/drawer.d.ts.map +1 -1
- package/lib/cjs/components/drawer/drawer.js +3 -16
- package/lib/cjs/components/drawer/drawer.js.map +1 -1
- package/lib/cjs/components/dropdown/dropdown.d.ts +1 -1
- package/lib/cjs/components/dropdown/dropdown.d.ts.map +1 -1
- package/lib/cjs/components/dropdown/dropdown.js +2 -3
- package/lib/cjs/components/dropdown/dropdown.js.map +1 -1
- package/lib/cjs/components/modal/modal.d.ts.map +1 -1
- package/lib/cjs/components/modal/modal.js +19 -13
- package/lib/cjs/components/modal/modal.js.map +1 -1
- package/lib/cjs/components/pin-input/index.d.ts +3 -0
- package/lib/cjs/components/pin-input/index.d.ts.map +1 -0
- package/lib/cjs/components/pin-input/index.js +6 -0
- package/lib/cjs/components/pin-input/index.js.map +1 -0
- package/lib/cjs/components/pin-input/pin-input.d.ts +56 -0
- package/lib/cjs/components/pin-input/pin-input.d.ts.map +1 -0
- package/lib/cjs/components/pin-input/pin-input.js +455 -0
- package/lib/cjs/components/pin-input/pin-input.js.map +1 -0
- package/lib/cjs/components/pin-input/types.d.ts +41 -0
- package/lib/cjs/components/pin-input/types.d.ts.map +1 -0
- package/lib/cjs/components/pin-input/types.js +6 -0
- package/lib/cjs/components/pin-input/types.js.map +1 -0
- package/lib/cjs/components/rating/rating.d.ts.map +1 -1
- package/lib/cjs/components/rating/rating.js.map +1 -1
- package/lib/cjs/components/select/combobox.d.ts.map +1 -1
- package/lib/cjs/components/select/combobox.js +25 -15
- package/lib/cjs/components/select/combobox.js.map +1 -1
- package/lib/cjs/components/select/config.d.ts +2 -2
- package/lib/cjs/components/select/config.d.ts.map +1 -1
- package/lib/cjs/components/select/config.js +10 -9
- package/lib/cjs/components/select/config.js.map +1 -1
- package/lib/cjs/components/select/dropdown.js.map +1 -1
- package/lib/cjs/components/select/option.d.ts +2 -1
- package/lib/cjs/components/select/option.d.ts.map +1 -1
- package/lib/cjs/components/select/option.js +9 -3
- package/lib/cjs/components/select/option.js.map +1 -1
- package/lib/cjs/components/select/remote.d.ts +1 -0
- package/lib/cjs/components/select/remote.d.ts.map +1 -1
- package/lib/cjs/components/select/remote.js +21 -14
- package/lib/cjs/components/select/remote.js.map +1 -1
- package/lib/cjs/components/select/search.d.ts +1 -1
- package/lib/cjs/components/select/search.d.ts.map +1 -1
- package/lib/cjs/components/select/search.js +34 -25
- package/lib/cjs/components/select/search.js.map +1 -1
- package/lib/cjs/components/select/select.d.ts +5 -3
- package/lib/cjs/components/select/select.d.ts.map +1 -1
- package/lib/cjs/components/select/select.js +31 -31
- package/lib/cjs/components/select/select.js.map +1 -1
- package/lib/cjs/components/select/tags.d.ts.map +1 -1
- package/lib/cjs/components/select/tags.js +22 -13
- package/lib/cjs/components/select/tags.js.map +1 -1
- package/lib/cjs/components/select/templates.d.ts.map +1 -1
- package/lib/cjs/components/select/templates.js +4 -4
- package/lib/cjs/components/select/templates.js.map +1 -1
- package/lib/cjs/components/select/types.d.ts +1 -1
- package/lib/cjs/components/select/types.d.ts.map +1 -1
- package/lib/cjs/components/select/utils.d.ts +4 -4
- package/lib/cjs/components/select/utils.d.ts.map +1 -1
- package/lib/cjs/components/select/utils.js +2 -3
- package/lib/cjs/components/select/utils.js.map +1 -1
- package/lib/cjs/components/sticky/sticky.d.ts +1 -1
- package/lib/cjs/components/sticky/sticky.d.ts.map +1 -1
- package/lib/cjs/components/sticky/sticky.js +13 -13
- package/lib/cjs/components/sticky/sticky.js.map +1 -1
- package/lib/cjs/components/theme-switch/theme-switch.d.ts +3 -0
- package/lib/cjs/components/theme-switch/theme-switch.d.ts.map +1 -1
- package/lib/cjs/components/theme-switch/theme-switch.js +17 -4
- package/lib/cjs/components/theme-switch/theme-switch.js.map +1 -1
- package/lib/cjs/components/toast/toast.d.ts.map +1 -1
- package/lib/cjs/components/toast/toast.js +17 -9
- package/lib/cjs/components/toast/toast.js.map +1 -1
- package/lib/cjs/components/toast/types.d.ts +3 -0
- package/lib/cjs/components/toast/types.d.ts.map +1 -1
- package/lib/cjs/components/toggle/toggle.d.ts +2 -0
- package/lib/cjs/components/toggle/toggle.d.ts.map +1 -1
- package/lib/cjs/components/toggle/toggle.js +11 -2
- package/lib/cjs/components/toggle/toggle.js.map +1 -1
- package/lib/cjs/components/toggle-password/toggle-password.d.ts.map +1 -1
- package/lib/cjs/components/toggle-password/toggle-password.js.map +1 -1
- package/lib/cjs/helpers/dom.d.ts +4 -4
- package/lib/cjs/helpers/dom.d.ts.map +1 -1
- package/lib/cjs/helpers/dom.js +8 -10
- package/lib/cjs/helpers/dom.js.map +1 -1
- package/lib/cjs/helpers/event-handler.d.ts +1 -1
- package/lib/cjs/helpers/event-handler.d.ts.map +1 -1
- package/lib/cjs/helpers/event-handler.js +3 -1
- package/lib/cjs/helpers/event-handler.js.map +1 -1
- package/lib/cjs/helpers/utils.d.ts +1 -1
- package/lib/cjs/helpers/utils.d.ts.map +1 -1
- package/lib/cjs/helpers/utils.js +4 -1
- package/lib/cjs/helpers/utils.js.map +1 -1
- package/lib/cjs/index.d.ts +8 -0
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +9 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/types.d.ts +1 -1
- package/lib/cjs/types.d.ts.map +1 -1
- package/lib/esm/components/carousel/carousel.d.ts +102 -0
- package/lib/esm/components/carousel/carousel.d.ts.map +1 -0
- package/lib/esm/components/carousel/carousel.js +766 -0
- package/lib/esm/components/carousel/carousel.js.map +1 -0
- package/lib/esm/components/carousel/index.d.ts +7 -0
- package/lib/esm/components/carousel/index.d.ts.map +1 -0
- package/lib/esm/components/carousel/index.js +6 -0
- package/lib/esm/components/carousel/index.js.map +1 -0
- package/lib/esm/components/carousel/types.d.ts +36 -0
- package/lib/esm/components/carousel/types.d.ts.map +1 -0
- package/lib/esm/components/carousel/types.js +6 -0
- package/lib/esm/components/carousel/types.js.map +1 -0
- package/lib/esm/components/component.d.ts +3 -3
- package/lib/esm/components/component.d.ts.map +1 -1
- package/lib/esm/components/component.js +9 -1
- package/lib/esm/components/component.js.map +1 -1
- package/lib/esm/components/datatable/datatable-checkbox.d.ts +1 -1
- package/lib/esm/components/datatable/datatable-checkbox.d.ts.map +1 -1
- package/lib/esm/components/datatable/datatable-checkbox.js +1 -1
- package/lib/esm/components/datatable/datatable-checkbox.js.map +1 -1
- package/lib/esm/components/datatable/datatable-sort.d.ts +1 -1
- package/lib/esm/components/datatable/datatable-sort.d.ts.map +1 -1
- package/lib/esm/components/datatable/datatable-sort.js.map +1 -1
- package/lib/esm/components/datatable/datatable.d.ts +2 -0
- package/lib/esm/components/datatable/datatable.d.ts.map +1 -1
- package/lib/esm/components/datatable/datatable.js +30 -17
- package/lib/esm/components/datatable/datatable.js.map +1 -1
- package/lib/esm/components/datatable/types.d.ts +2 -1
- package/lib/esm/components/datatable/types.d.ts.map +1 -1
- package/lib/esm/components/drawer/drawer.d.ts.map +1 -1
- package/lib/esm/components/drawer/drawer.js +3 -16
- package/lib/esm/components/drawer/drawer.js.map +1 -1
- package/lib/esm/components/dropdown/dropdown.d.ts +1 -1
- package/lib/esm/components/dropdown/dropdown.d.ts.map +1 -1
- package/lib/esm/components/dropdown/dropdown.js +2 -3
- package/lib/esm/components/dropdown/dropdown.js.map +1 -1
- package/lib/esm/components/modal/modal.d.ts.map +1 -1
- package/lib/esm/components/modal/modal.js +19 -13
- package/lib/esm/components/modal/modal.js.map +1 -1
- package/lib/esm/components/pin-input/index.d.ts +3 -0
- package/lib/esm/components/pin-input/index.d.ts.map +1 -0
- package/lib/esm/components/pin-input/index.js +2 -0
- package/lib/esm/components/pin-input/index.js.map +1 -0
- package/lib/esm/components/pin-input/pin-input.d.ts +56 -0
- package/lib/esm/components/pin-input/pin-input.d.ts.map +1 -0
- package/lib/esm/components/pin-input/pin-input.js +452 -0
- package/lib/esm/components/pin-input/pin-input.js.map +1 -0
- package/lib/esm/components/pin-input/types.d.ts +41 -0
- package/lib/esm/components/pin-input/types.d.ts.map +1 -0
- package/lib/esm/components/pin-input/types.js +5 -0
- package/lib/esm/components/pin-input/types.js.map +1 -0
- package/lib/esm/components/rating/rating.d.ts.map +1 -1
- package/lib/esm/components/rating/rating.js.map +1 -1
- package/lib/esm/components/select/combobox.d.ts.map +1 -1
- package/lib/esm/components/select/combobox.js +25 -15
- package/lib/esm/components/select/combobox.js.map +1 -1
- package/lib/esm/components/select/config.d.ts +2 -2
- package/lib/esm/components/select/config.d.ts.map +1 -1
- package/lib/esm/components/select/config.js +10 -9
- package/lib/esm/components/select/config.js.map +1 -1
- package/lib/esm/components/select/dropdown.js.map +1 -1
- package/lib/esm/components/select/option.d.ts +2 -1
- package/lib/esm/components/select/option.d.ts.map +1 -1
- package/lib/esm/components/select/option.js +9 -3
- package/lib/esm/components/select/option.js.map +1 -1
- package/lib/esm/components/select/remote.d.ts +1 -0
- package/lib/esm/components/select/remote.d.ts.map +1 -1
- package/lib/esm/components/select/remote.js +21 -14
- package/lib/esm/components/select/remote.js.map +1 -1
- package/lib/esm/components/select/search.d.ts +1 -1
- package/lib/esm/components/select/search.d.ts.map +1 -1
- package/lib/esm/components/select/search.js +34 -25
- package/lib/esm/components/select/search.js.map +1 -1
- package/lib/esm/components/select/select.d.ts +5 -3
- package/lib/esm/components/select/select.d.ts.map +1 -1
- package/lib/esm/components/select/select.js +31 -31
- package/lib/esm/components/select/select.js.map +1 -1
- package/lib/esm/components/select/tags.d.ts.map +1 -1
- package/lib/esm/components/select/tags.js +22 -13
- package/lib/esm/components/select/tags.js.map +1 -1
- package/lib/esm/components/select/templates.d.ts.map +1 -1
- package/lib/esm/components/select/templates.js +4 -4
- package/lib/esm/components/select/templates.js.map +1 -1
- package/lib/esm/components/select/types.d.ts +1 -1
- package/lib/esm/components/select/types.d.ts.map +1 -1
- package/lib/esm/components/select/utils.d.ts +4 -4
- package/lib/esm/components/select/utils.d.ts.map +1 -1
- package/lib/esm/components/select/utils.js +2 -3
- package/lib/esm/components/select/utils.js.map +1 -1
- package/lib/esm/components/sticky/sticky.d.ts +1 -1
- package/lib/esm/components/sticky/sticky.d.ts.map +1 -1
- package/lib/esm/components/sticky/sticky.js +13 -13
- package/lib/esm/components/sticky/sticky.js.map +1 -1
- package/lib/esm/components/theme-switch/theme-switch.d.ts +3 -0
- package/lib/esm/components/theme-switch/theme-switch.d.ts.map +1 -1
- package/lib/esm/components/theme-switch/theme-switch.js +17 -4
- package/lib/esm/components/theme-switch/theme-switch.js.map +1 -1
- package/lib/esm/components/toast/toast.d.ts.map +1 -1
- package/lib/esm/components/toast/toast.js +17 -9
- package/lib/esm/components/toast/toast.js.map +1 -1
- package/lib/esm/components/toast/types.d.ts +3 -0
- package/lib/esm/components/toast/types.d.ts.map +1 -1
- package/lib/esm/components/toggle/toggle.d.ts +2 -0
- package/lib/esm/components/toggle/toggle.d.ts.map +1 -1
- package/lib/esm/components/toggle/toggle.js +11 -2
- package/lib/esm/components/toggle/toggle.js.map +1 -1
- package/lib/esm/components/toggle-password/toggle-password.d.ts.map +1 -1
- package/lib/esm/components/toggle-password/toggle-password.js.map +1 -1
- package/lib/esm/helpers/dom.d.ts +4 -4
- package/lib/esm/helpers/dom.d.ts.map +1 -1
- package/lib/esm/helpers/dom.js +8 -10
- package/lib/esm/helpers/dom.js.map +1 -1
- package/lib/esm/helpers/event-handler.d.ts +1 -1
- package/lib/esm/helpers/event-handler.d.ts.map +1 -1
- package/lib/esm/helpers/event-handler.js +3 -1
- package/lib/esm/helpers/event-handler.js.map +1 -1
- package/lib/esm/helpers/utils.d.ts +1 -1
- package/lib/esm/helpers/utils.d.ts.map +1 -1
- package/lib/esm/helpers/utils.js +4 -1
- package/lib/esm/helpers/utils.js.map +1 -1
- package/lib/esm/index.d.ts +8 -0
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +6 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/types.d.ts +1 -1
- package/lib/esm/types.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/components/carousel/__tests__/carousel.test.ts +326 -0
- package/src/components/carousel/carousel.css +42 -0
- package/src/components/carousel/carousel.ts +847 -0
- package/src/components/carousel/index.ts +11 -0
- package/src/components/carousel/types.ts +38 -0
- package/src/components/clipboard/__tests__/clipboard.test.ts +4 -4
- package/src/components/component.ts +15 -5
- package/src/components/datatable/__tests__/currency-sort.test.ts +4 -3
- package/src/components/datatable/__tests__/pagination-reset.test.ts +7 -4
- package/src/components/datatable/__tests__/setup.ts +1 -1
- package/src/components/datatable/datatable-checkbox.ts +6 -4
- package/src/components/datatable/datatable-sort.ts +27 -7
- package/src/components/datatable/datatable.ts +64 -37
- package/src/components/datatable/types.ts +3 -1
- package/src/components/drawer/drawer.ts +3 -18
- package/src/components/dropdown/dropdown.ts +2 -3
- package/src/components/modal/modal.ts +22 -14
- package/src/components/pin-input/__tests__/pin-input.test.ts +928 -0
- package/src/components/pin-input/index.ts +6 -0
- package/src/components/pin-input/pin-input.ts +499 -0
- package/src/components/pin-input/types.ts +45 -0
- package/src/components/rating/rating.ts +0 -1
- package/src/components/repeater/__tests__/repeater.test.ts +5 -5
- package/src/components/select/__tests__/ux-behaviors.test.ts +4 -3
- package/src/components/select/combobox.ts +23 -16
- package/src/components/select/config.ts +15 -14
- package/src/components/select/dropdown.ts +1 -1
- package/src/components/select/option.ts +14 -4
- package/src/components/select/remote.ts +68 -56
- package/src/components/select/search.ts +30 -27
- package/src/components/select/select.ts +41 -37
- package/src/components/select/tags.ts +14 -8
- package/src/components/select/templates.ts +11 -6
- package/src/components/select/types.ts +1 -1
- package/src/components/select/utils.ts +7 -9
- package/src/components/sticky/sticky.ts +2 -2
- package/src/components/theme-switch/theme-switch.ts +22 -4
- package/src/components/toast/toast.ts +34 -21
- package/src/components/toast/types.ts +5 -1
- package/src/components/toggle/toggle.ts +12 -2
- package/src/components/toggle-password/toggle-password.ts +0 -1
- package/src/helpers/dom.ts +14 -17
- package/src/helpers/event-handler.ts +5 -6
- package/src/helpers/utils.ts +5 -2
- package/src/index.ts +18 -0
- package/src/types.ts +1 -1
- package/styles.css +1 -0
package/src/helpers/dom.ts
CHANGED
|
@@ -16,21 +16,17 @@ const KTDom = {
|
|
|
16
16
|
return dir === 'rtl';
|
|
17
17
|
},
|
|
18
18
|
|
|
19
|
-
isElement(element:
|
|
20
|
-
|
|
21
|
-
return true;
|
|
22
|
-
} else {
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
19
|
+
isElement(element: unknown): element is HTMLElement {
|
|
20
|
+
return element instanceof HTMLElement;
|
|
25
21
|
},
|
|
26
22
|
|
|
27
|
-
getElement(element: HTMLElement | string): HTMLElement {
|
|
23
|
+
getElement(element: HTMLElement | string | null): HTMLElement | null {
|
|
28
24
|
if (this.isElement(element)) {
|
|
29
|
-
return element
|
|
25
|
+
return element;
|
|
30
26
|
}
|
|
31
27
|
|
|
32
|
-
if (element &&
|
|
33
|
-
return document.querySelector(KTUtils.parseSelector(element
|
|
28
|
+
if (typeof element === 'string' && element.length > 0) {
|
|
29
|
+
return document.querySelector(KTUtils.parseSelector(element));
|
|
34
30
|
}
|
|
35
31
|
|
|
36
32
|
return null;
|
|
@@ -151,7 +147,7 @@ const KTDom = {
|
|
|
151
147
|
|
|
152
148
|
children(element: HTMLElement, selector: string): Array<HTMLElement> {
|
|
153
149
|
if (!element || !element.childNodes) {
|
|
154
|
-
return
|
|
150
|
+
return [];
|
|
155
151
|
}
|
|
156
152
|
|
|
157
153
|
const result: Array<HTMLElement> = [];
|
|
@@ -170,7 +166,7 @@ const KTDom = {
|
|
|
170
166
|
return result;
|
|
171
167
|
},
|
|
172
168
|
|
|
173
|
-
child(element: HTMLElement, selector: string): HTMLElement {
|
|
169
|
+
child(element: HTMLElement, selector: string): HTMLElement | null {
|
|
174
170
|
const children = KTDom.children(element, selector);
|
|
175
171
|
|
|
176
172
|
return children ? children[0] : null;
|
|
@@ -236,7 +232,7 @@ const KTDom = {
|
|
|
236
232
|
},
|
|
237
233
|
|
|
238
234
|
reflow(element: HTMLElement): void {
|
|
239
|
-
element.offsetHeight;
|
|
235
|
+
void element.offsetHeight;
|
|
240
236
|
},
|
|
241
237
|
|
|
242
238
|
insertAfter(element: HTMLElement, referenceNode: HTMLElement) {
|
|
@@ -277,7 +273,7 @@ const KTDom = {
|
|
|
277
273
|
return 1;
|
|
278
274
|
},
|
|
279
275
|
|
|
280
|
-
isParentOrElementHidden(element: HTMLElement): boolean {
|
|
276
|
+
isParentOrElementHidden(element: HTMLElement | null): boolean {
|
|
281
277
|
if (!element) {
|
|
282
278
|
return false;
|
|
283
279
|
}
|
|
@@ -380,9 +376,10 @@ const KTDom = {
|
|
|
380
376
|
for (const key of keys) {
|
|
381
377
|
let normalizedKey = key.replace(prefix, '');
|
|
382
378
|
normalizedKey = KTUtils.uncapitalize(normalizedKey);
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
379
|
+
const datasetValue = element.dataset[key];
|
|
380
|
+
if (typeof datasetValue === 'string') {
|
|
381
|
+
attributes[normalizedKey] = KTUtils.parseDataAttribute(datasetValue);
|
|
382
|
+
}
|
|
386
383
|
}
|
|
387
384
|
|
|
388
385
|
return attributes;
|
|
@@ -14,23 +14,22 @@ const KTDelegatedEventHandlers: KTDelegatedEventHandlersInterface = {};
|
|
|
14
14
|
|
|
15
15
|
const KTEventHandler = {
|
|
16
16
|
on: function (
|
|
17
|
-
element: HTMLElement,
|
|
17
|
+
element: HTMLElement | null,
|
|
18
18
|
selector: string,
|
|
19
19
|
eventName: string,
|
|
20
20
|
handler: KTCallableType,
|
|
21
21
|
): string {
|
|
22
22
|
if (element === null) {
|
|
23
|
-
return
|
|
23
|
+
return '';
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
const eventId = KTUtils.geUID('event');
|
|
27
27
|
|
|
28
|
-
KTDelegatedEventHandlers[eventId] = (
|
|
29
|
-
event
|
|
30
|
-
) => {
|
|
28
|
+
KTDelegatedEventHandlers[eventId] = (event?: Event) => {
|
|
29
|
+
if (!event) return;
|
|
31
30
|
// Fix: Check selector dynamically instead of pre-computing targets
|
|
32
31
|
// This allows event delegation to work with dynamically added elements
|
|
33
|
-
let target = event.target as HTMLElement;
|
|
32
|
+
let target = event.target as HTMLElement | null;
|
|
34
33
|
|
|
35
34
|
while (target && target !== element) {
|
|
36
35
|
// Check if current target matches the selector
|
package/src/helpers/utils.ts
CHANGED
|
@@ -50,7 +50,7 @@ const KTUtils = {
|
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
52
|
|
|
53
|
-
parseJson(value: string):
|
|
53
|
+
parseJson(value: string): unknown | null {
|
|
54
54
|
return value && value.length > 0
|
|
55
55
|
? JSON.parse(decodeURIComponent(value))
|
|
56
56
|
: null;
|
|
@@ -134,13 +134,16 @@ const KTUtils = {
|
|
|
134
134
|
},
|
|
135
135
|
|
|
136
136
|
stringToObject: <T>(value: KTOptionType): T | null => {
|
|
137
|
+
if (value === null) {
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
137
140
|
try {
|
|
138
141
|
const parsed = JSON.parse(value.toString() as string);
|
|
139
142
|
if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
|
|
140
143
|
return parsed as T;
|
|
141
144
|
}
|
|
142
145
|
return null;
|
|
143
|
-
} catch
|
|
146
|
+
} catch {
|
|
144
147
|
return null;
|
|
145
148
|
}
|
|
146
149
|
},
|
package/src/index.ts
CHANGED
|
@@ -32,6 +32,8 @@ import { KTRating } from './components/rating';
|
|
|
32
32
|
import { KTRepeater } from './components/repeater';
|
|
33
33
|
import { KTClipboard } from './components/clipboard';
|
|
34
34
|
import { KTRangeSlider } from './components/range-slider';
|
|
35
|
+
import { KTPinInput } from './components/pin-input';
|
|
36
|
+
import { KTCarousel } from './components/carousel';
|
|
35
37
|
|
|
36
38
|
export { KTDropdown } from './components/dropdown';
|
|
37
39
|
export { KTModal } from './components/modal';
|
|
@@ -58,6 +60,8 @@ export { KTRating } from './components/rating';
|
|
|
58
60
|
export { KTRepeater } from './components/repeater';
|
|
59
61
|
export { KTClipboard } from './components/clipboard';
|
|
60
62
|
export { KTRangeSlider } from './components/range-slider';
|
|
63
|
+
export { KTPinInput } from './components/pin-input';
|
|
64
|
+
export { KTCarousel } from './components/carousel';
|
|
61
65
|
|
|
62
66
|
export type {
|
|
63
67
|
KTAccordionConfigInterface,
|
|
@@ -122,6 +126,16 @@ export type {
|
|
|
122
126
|
KTRangeSliderEventPayloadInterface,
|
|
123
127
|
KTRangeSliderInterface,
|
|
124
128
|
} from './components/range-slider';
|
|
129
|
+
export type {
|
|
130
|
+
KTPinInputConfigInterface,
|
|
131
|
+
KTPinInputEventPayloadInterface,
|
|
132
|
+
KTPinInputInterface,
|
|
133
|
+
} from './components/pin-input';
|
|
134
|
+
export type {
|
|
135
|
+
KTCarouselConfigInterface,
|
|
136
|
+
KTCarouselChangePayloadInterface,
|
|
137
|
+
KTCarouselInterface,
|
|
138
|
+
} from './components/carousel';
|
|
125
139
|
export type {
|
|
126
140
|
KTScrollableConfigInterface,
|
|
127
141
|
KTScrollableInterface,
|
|
@@ -195,6 +209,8 @@ const KTComponents = {
|
|
|
195
209
|
KTRepeater.init();
|
|
196
210
|
KTClipboard.init();
|
|
197
211
|
KTRangeSlider.init();
|
|
212
|
+
KTPinInput.init();
|
|
213
|
+
KTCarousel.init();
|
|
198
214
|
},
|
|
199
215
|
};
|
|
200
216
|
|
|
@@ -229,6 +245,8 @@ declare global {
|
|
|
229
245
|
KTRepeater: typeof KTRepeater;
|
|
230
246
|
KTClipboard: typeof KTClipboard;
|
|
231
247
|
KTRangeSlider: typeof KTRangeSlider;
|
|
248
|
+
KTPinInput: typeof KTPinInput;
|
|
249
|
+
KTCarousel: typeof KTCarousel;
|
|
232
250
|
KTComponents: typeof KTComponents;
|
|
233
251
|
}
|
|
234
252
|
}
|
package/src/types.ts
CHANGED
package/styles.css
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
@import './src/components/btn/btn.css';
|
|
10
10
|
@import './src/components/label/label.css';
|
|
11
11
|
@import './src/components/card/card.css';
|
|
12
|
+
@import './src/components/carousel/carousel.css';
|
|
12
13
|
@import './src/components/checkbox/checkbox.css';
|
|
13
14
|
@import './src/components/collapse/collapse.css';
|
|
14
15
|
@import './src/components/datatable/datatable.css';
|