@keenthemes/ktui 1.0.19 → 1.0.21

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.
Files changed (111) hide show
  1. package/dist/ktui.js +690 -166
  2. package/dist/ktui.min.js +1 -1
  3. package/dist/ktui.min.js.map +1 -1
  4. package/dist/styles.css +165 -31
  5. package/examples/image-input/file-upload-example.html +189 -0
  6. package/examples/select/remote-data_.html +5 -0
  7. package/examples/select/test-optimizations.html +227 -0
  8. package/examples/select/test-remote-search.html +151 -0
  9. package/examples/sticky/README.md +158 -0
  10. package/examples/sticky/debug-sticky.html +144 -0
  11. package/examples/sticky/test-runner.html +175 -0
  12. package/examples/sticky/test-sticky-logic.js +369 -0
  13. package/examples/sticky/test-sticky-positioning.html +386 -0
  14. package/examples/toast/example.html +52 -0
  15. package/lib/cjs/components/component.js +59 -5
  16. package/lib/cjs/components/component.js.map +1 -1
  17. package/lib/cjs/components/datatable/datatable-sort.js +4 -0
  18. package/lib/cjs/components/datatable/datatable-sort.js.map +1 -1
  19. package/lib/cjs/components/datatable/datatable.js +79 -12
  20. package/lib/cjs/components/datatable/datatable.js.map +1 -1
  21. package/lib/cjs/components/image-input/image-input.js +10 -2
  22. package/lib/cjs/components/image-input/image-input.js.map +1 -1
  23. package/lib/cjs/components/select/combobox.js +50 -20
  24. package/lib/cjs/components/select/combobox.js.map +1 -1
  25. package/lib/cjs/components/select/config.js +1 -0
  26. package/lib/cjs/components/select/config.js.map +1 -1
  27. package/lib/cjs/components/select/dropdown.js +4 -2
  28. package/lib/cjs/components/select/dropdown.js.map +1 -1
  29. package/lib/cjs/components/select/index.js.map +1 -1
  30. package/lib/cjs/components/select/option.js +2 -1
  31. package/lib/cjs/components/select/option.js.map +1 -1
  32. package/lib/cjs/components/select/remote.js +50 -50
  33. package/lib/cjs/components/select/remote.js.map +1 -1
  34. package/lib/cjs/components/select/search.js +15 -5
  35. package/lib/cjs/components/select/search.js.map +1 -1
  36. package/lib/cjs/components/select/select.js +273 -32
  37. package/lib/cjs/components/select/select.js.map +1 -1
  38. package/lib/cjs/components/select/tags.js +3 -1
  39. package/lib/cjs/components/select/tags.js.map +1 -1
  40. package/lib/cjs/components/select/templates.js +6 -0
  41. package/lib/cjs/components/select/templates.js.map +1 -1
  42. package/lib/cjs/components/select/utils.js +23 -10
  43. package/lib/cjs/components/select/utils.js.map +1 -1
  44. package/lib/cjs/components/stepper/stepper.js +59 -12
  45. package/lib/cjs/components/stepper/stepper.js.map +1 -1
  46. package/lib/cjs/components/sticky/sticky.js +52 -14
  47. package/lib/cjs/components/sticky/sticky.js.map +1 -1
  48. package/lib/esm/components/component.js +59 -5
  49. package/lib/esm/components/component.js.map +1 -1
  50. package/lib/esm/components/datatable/datatable-sort.js +4 -0
  51. package/lib/esm/components/datatable/datatable-sort.js.map +1 -1
  52. package/lib/esm/components/datatable/datatable.js +78 -12
  53. package/lib/esm/components/datatable/datatable.js.map +1 -1
  54. package/lib/esm/components/image-input/image-input.js +10 -2
  55. package/lib/esm/components/image-input/image-input.js.map +1 -1
  56. package/lib/esm/components/select/combobox.js +50 -20
  57. package/lib/esm/components/select/combobox.js.map +1 -1
  58. package/lib/esm/components/select/config.js +1 -0
  59. package/lib/esm/components/select/config.js.map +1 -1
  60. package/lib/esm/components/select/dropdown.js +4 -2
  61. package/lib/esm/components/select/dropdown.js.map +1 -1
  62. package/lib/esm/components/select/index.js +1 -1
  63. package/lib/esm/components/select/index.js.map +1 -1
  64. package/lib/esm/components/select/option.js +2 -1
  65. package/lib/esm/components/select/option.js.map +1 -1
  66. package/lib/esm/components/select/remote.js +50 -50
  67. package/lib/esm/components/select/remote.js.map +1 -1
  68. package/lib/esm/components/select/search.js +16 -6
  69. package/lib/esm/components/select/search.js.map +1 -1
  70. package/lib/esm/components/select/select.js +273 -32
  71. package/lib/esm/components/select/select.js.map +1 -1
  72. package/lib/esm/components/select/tags.js +3 -1
  73. package/lib/esm/components/select/tags.js.map +1 -1
  74. package/lib/esm/components/select/templates.js +6 -0
  75. package/lib/esm/components/select/templates.js.map +1 -1
  76. package/lib/esm/components/select/utils.js +23 -10
  77. package/lib/esm/components/select/utils.js.map +1 -1
  78. package/lib/esm/components/stepper/stepper.js +59 -12
  79. package/lib/esm/components/stepper/stepper.js.map +1 -1
  80. package/lib/esm/components/sticky/sticky.js +52 -14
  81. package/lib/esm/components/sticky/sticky.js.map +1 -1
  82. package/package.json +2 -2
  83. package/src/components/component.ts +19 -4
  84. package/src/components/datatable/datatable-sort.ts +6 -0
  85. package/src/components/datatable/datatable.ts +98 -15
  86. package/src/components/datatable/types.ts +5 -1
  87. package/src/components/image-input/image-input.ts +11 -2
  88. package/src/components/image-input/types.ts +1 -0
  89. package/src/components/input/input-group.css +1 -1
  90. package/src/components/input/input.css +1 -1
  91. package/src/components/scrollable/scrollable.css +3 -3
  92. package/src/components/select/combobox.ts +84 -34
  93. package/src/components/select/config.ts +2 -0
  94. package/src/components/select/dropdown.ts +20 -11
  95. package/src/components/select/index.ts +6 -1
  96. package/src/components/select/option.ts +7 -6
  97. package/src/components/select/remote.ts +51 -52
  98. package/src/components/select/search.ts +59 -44
  99. package/src/components/select/select.css +26 -17
  100. package/src/components/select/select.ts +472 -101
  101. package/src/components/select/tags.ts +9 -3
  102. package/src/components/select/templates.ts +10 -0
  103. package/src/components/select/utils.ts +55 -20
  104. package/src/components/select/variants.css +0 -1
  105. package/src/components/stepper/stepper.ts +2 -2
  106. package/src/components/sticky/sticky.ts +47 -16
  107. package/src/components/sticky/types.ts +3 -0
  108. package/src/components/table/table.css +1 -1
  109. package/src/components/textarea/textarea.css +1 -1
  110. package/src/components/toast/toast.css +84 -47
  111. package/src/components/toast/types.ts +3 -0
@@ -32,7 +32,10 @@ var KTSticky = /** @class */ (function (_super) {
32
32
  name: '',
33
33
  class: '',
34
34
  top: '',
35
+ middle: false,
36
+ bottom: '',
35
37
  start: '',
38
+ center: false,
36
39
  end: '',
37
40
  width: '',
38
41
  zindex: '',
@@ -175,7 +178,10 @@ var KTSticky = /** @class */ (function (_super) {
175
178
  return false;
176
179
  var width = this._getOption('width');
177
180
  var top = this._getOption('top');
181
+ var middle = this._getOption('middle');
182
+ var bottom = this._getOption('bottom');
178
183
  var start = this._getOption('start');
184
+ var center = this._getOption('center');
179
185
  var end = this._getOption('end');
180
186
  var height = this._calculateHeight();
181
187
  var zindex = this._getOption('zindex');
@@ -193,29 +199,56 @@ var KTSticky = /** @class */ (function (_super) {
193
199
  }
194
200
  this._element.style.width = "".concat(Math.round(parseFloat(width)), "px");
195
201
  }
196
- if (top) {
197
- this._element.style.top = "".concat(top, "px");
202
+ if (middle === true) {
203
+ this._element.style.insetBlockStart = "50%";
198
204
  }
199
- if (start) {
200
- if (start === 'auto') {
201
- var offsetLeft = KTDom.offset(this._element).left;
202
- if (offsetLeft >= 0) {
203
- this._element.style.insetInlineStart = "".concat(offsetLeft, "px");
205
+ else {
206
+ if (top) {
207
+ if (top === 'auto') {
208
+ this._element.style.insetBlockStart = "0px";
209
+ }
210
+ else {
211
+ this._element.style.insetBlockStart = "".concat(top, "px");
204
212
  }
205
213
  }
206
214
  else {
207
- this._element.style.insetInlineStart = "".concat(start, "px");
215
+ if (bottom) {
216
+ if (bottom === 'auto') {
217
+ this._element.style.insetBlockEnd = "0px";
218
+ }
219
+ else {
220
+ this._element.style.insetBlockEnd = "".concat(bottom, "px");
221
+ }
222
+ }
208
223
  }
209
224
  }
210
- if (end) {
211
- if (end === 'auto') {
212
- var offseRight = KTDom.offset(this._element).right;
213
- if (offseRight >= 0) {
214
- this._element.style.insetInlineEnd = "".concat(offseRight, "px");
225
+ if (center === true) {
226
+ this._element.style.insetInlineStart = "50%";
227
+ }
228
+ else {
229
+ if (start) {
230
+ if (start === 'auto') {
231
+ var offsetLeft = KTDom.offset(this._element).left;
232
+ if (offsetLeft >= 0) {
233
+ this._element.style.insetInlineStart = "".concat(offsetLeft, "px");
234
+ }
235
+ }
236
+ else {
237
+ this._element.style.insetInlineStart = "".concat(start, "px");
215
238
  }
216
239
  }
217
240
  else {
218
- this._element.style.insetInlineEnd = "".concat(end, "px");
241
+ if (end) {
242
+ if (end === 'auto') {
243
+ var offsetRight = KTDom.offset(this._element).right;
244
+ if (offsetRight >= 0) {
245
+ this._element.style.insetInlineEnd = "".concat(offsetRight, "px");
246
+ }
247
+ }
248
+ else {
249
+ this._element.style.insetInlineEnd = "".concat(end, "px");
250
+ }
251
+ }
219
252
  }
220
253
  }
221
254
  if (zindex) {
@@ -236,6 +269,11 @@ var KTSticky = /** @class */ (function (_super) {
236
269
  if (!this._element)
237
270
  return;
238
271
  this._element.style.top = '';
272
+ this._element.style.bottom = '';
273
+ this._element.style.insetInlineStart = '';
274
+ this._element.style.insetInlineEnd = '';
275
+ this._element.style.insetBlockStart = '';
276
+ this._element.style.insetBlockEnd = '';
239
277
  this._element.style.width = '';
240
278
  this._element.style.left = '';
241
279
  this._element.style.right = '';
@@ -1 +1 @@
1
- {"version":3,"file":"sticky.js","sourceRoot":"","sources":["../../../../src/components/sticky/sticky.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sticky.js","sourceRoot":"","sources":["../../../../src/components/sticky/sticky.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenthemes/ktui",
3
- "version": "1.0.19",
3
+ "version": "1.0.21",
4
4
  "description": "Free & Open-Source Tailwind UI Components by Keenthemes",
5
5
  "homepage": "https://ktui.io",
6
6
  "repository": {
@@ -80,7 +80,7 @@
80
80
  "mini-svg-data-uri": "^1.4.4",
81
81
  "prettier": "^3.5.3",
82
82
  "source-map-loader": "^5.0.0",
83
- "tailwindcss": "^4.1.7",
83
+ "tailwindcss": "^4.1.11",
84
84
  "terser-webpack-plugin": "^5.3.14",
85
85
  "ts-loader": "^9.5.2",
86
86
  "typescript": "^5.8.3",
@@ -43,10 +43,25 @@ export default class KTComponent {
43
43
  KTData.set(this._element, this._name, this);
44
44
  }
45
45
 
46
- protected _fireEvent(eventType: string, payload: object = null): void {
47
- this._events.get(eventType)?.forEach((callable) => {
48
- callable(payload);
49
- });
46
+ protected async _fireEvent(
47
+ eventType: string,
48
+ payload: object = null,
49
+ ): Promise<void> {
50
+ const callbacks = this._events.get(eventType);
51
+
52
+ if (callbacks instanceof Map == false) {
53
+ return;
54
+ }
55
+
56
+ await Promise.all(
57
+ Array.from(callbacks.values())
58
+ .filter((callable) => {
59
+ return typeof callable === 'function';
60
+ })
61
+ .map((callable) => {
62
+ return Promise.resolve(callable(payload));
63
+ }),
64
+ );
50
65
  }
51
66
 
52
67
  protected _dispatchEvent(eventType: string, payload: object = null): void {
@@ -128,6 +128,12 @@ export function createSortHandler<T = KTDataTableDataInterface>(
128
128
  headers.forEach((header) => {
129
129
  // If the sort class is not found, it's not a sortable column
130
130
  if (!header.querySelector(`.${config.sort?.classes?.base}`)) return;
131
+
132
+ // Check if sorting is disabled for this column
133
+ const sortDisabled =
134
+ header.getAttribute('data-kt-datatable-column-sort') === 'false';
135
+ if (sortDisabled) return;
136
+
131
137
  const sortAttribute =
132
138
  header.getAttribute('data-kt-datatable-column-sort') ||
133
139
  header.getAttribute('data-kt-datatable-column');
@@ -499,7 +499,11 @@ export class KTDataTable<T extends KTDataTableDataInterface>
499
499
  // Set search value
500
500
  if (searchElement) {
501
501
  searchElement.value =
502
- search === undefined || search === null ? '' : typeof search === 'string' ? search : String(search);
502
+ search === undefined || search === null
503
+ ? ''
504
+ : typeof search === 'string'
505
+ ? search
506
+ : String(search);
503
507
  }
504
508
 
505
509
  if (searchElement) {
@@ -834,7 +838,7 @@ export class KTDataTable<T extends KTDataTableDataInterface>
834
838
  private _createUrl(
835
839
  pathOrUrl: string,
836
840
  baseUrl: string | null = window.location.origin,
837
- ) : URL {
841
+ ): URL {
838
842
  // Regular expression to check if the input is a full URL
839
843
  const isFullUrl = /^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(pathOrUrl);
840
844
 
@@ -988,10 +992,12 @@ export class KTDataTable<T extends KTDataTableDataInterface>
988
992
 
989
993
  if (typeof columnDef.render === 'function') {
990
994
  const result = columnDef.render.call(this, item[key], item, this);
991
- if (result instanceof HTMLElement || result instanceof DocumentFragment) {
995
+ if (
996
+ result instanceof HTMLElement ||
997
+ result instanceof DocumentFragment
998
+ ) {
992
999
  td.appendChild(result);
993
- }
994
- else if (typeof result === 'string') {
1000
+ } else if (typeof result === 'string') {
995
1001
  td.innerHTML = result as string;
996
1002
  }
997
1003
  } else {
@@ -1423,8 +1429,79 @@ export class KTDataTable<T extends KTDataTableDataInterface>
1423
1429
  return id;
1424
1430
  }
1425
1431
 
1432
+ /**
1433
+ * Clean up all event listeners, handlers, and DOM nodes created by this instance.
1434
+ * This method is called before re-rendering or when disposing the component.
1435
+ */
1426
1436
  private _dispose() {
1427
- // Remove all event listeners and clean up resources
1437
+ // --- 1. Remove search input event listener (debounced) ---
1438
+ const tableId: string = this._tableId();
1439
+ const searchElement: HTMLInputElement | null =
1440
+ document.querySelector<HTMLInputElement>(
1441
+ `[data-kt-datatable-search="#${tableId}"]`,
1442
+ );
1443
+ if (searchElement && (searchElement as any)._debouncedSearch) {
1444
+ searchElement.removeEventListener(
1445
+ 'keyup',
1446
+ (searchElement as any)._debouncedSearch,
1447
+ );
1448
+ delete (searchElement as any)._debouncedSearch;
1449
+ }
1450
+
1451
+ // --- 2. Remove page size dropdown event listener ---
1452
+ if (this._sizeElement && this._sizeElement.onchange) {
1453
+ this._sizeElement.onchange = null;
1454
+ }
1455
+
1456
+ // --- 3. Remove all pagination button event listeners ---
1457
+ if (this._paginationElement) {
1458
+ // Remove all child nodes (buttons) to ensure no lingering listeners
1459
+ while (this._paginationElement.firstChild) {
1460
+ this._paginationElement.removeChild(this._paginationElement.firstChild);
1461
+ }
1462
+ }
1463
+
1464
+ // --- 4. Dispose of handler objects (checkbox, sort) ---
1465
+ // KTDataTableCheckboxAPI does not have a dispose method, but we can remove header checkbox listener
1466
+ if (
1467
+ this._checkbox &&
1468
+ typeof (this._checkbox as any).dispose === 'function'
1469
+ ) {
1470
+ (this._checkbox as any).dispose();
1471
+ } else {
1472
+ // Remove header checkbox event listener if possible
1473
+ const headerCheckElement = this._element.querySelector<HTMLInputElement>(
1474
+ this._config.attributes.check,
1475
+ );
1476
+ if (headerCheckElement) {
1477
+ headerCheckElement.replaceWith(headerCheckElement.cloneNode(true));
1478
+ }
1479
+ }
1480
+ // KTDataTableSortAPI does not have a dispose method, but we can remove th click listeners by replacing them
1481
+ if (this._theadElement) {
1482
+ const ths = this._theadElement.querySelectorAll('th');
1483
+ ths.forEach((th) => {
1484
+ th.replaceWith(th.cloneNode(true));
1485
+ });
1486
+ }
1487
+
1488
+ // --- 5. Remove spinner DOM node if it exists ---
1489
+ const spinner = this._element.querySelector<HTMLElement>(
1490
+ this._config.attributes.spinner,
1491
+ );
1492
+ if (spinner && spinner.parentNode) {
1493
+ spinner.parentNode.removeChild(spinner);
1494
+ }
1495
+ this._element.classList.remove(this._config.loadingClass);
1496
+
1497
+ // --- 6. Remove instance reference from the DOM element ---
1498
+ if ((this._element as any).instance) {
1499
+ delete (this._element as any).instance;
1500
+ }
1501
+
1502
+ // --- 7. (Optional) Clear localStorage state ---
1503
+ // Uncomment the following line if you want to clear state on dispose:
1504
+ // this._deleteState();
1428
1505
  }
1429
1506
 
1430
1507
  private _debounce(func: Function, wait: number) {
@@ -1595,12 +1672,10 @@ export class KTDataTable<T extends KTDataTableDataInterface>
1595
1672
 
1596
1673
  /**
1597
1674
  * Create KTDataTable instances for all elements with a data-kt-datatable="true" attribute.
1598
- *
1599
- * This function should be called after the control(s) have been
1600
- * loaded and parsed by the browser. It will create instances of
1601
- * KTDataTable for all elements with a data-kt-datatable="true" attribute.
1675
+ * This function is now browser-guarded and must be called explicitly.
1602
1676
  */
1603
1677
  public static createInstances(): void {
1678
+ if (typeof document === 'undefined') return;
1604
1679
  const elements = document.querySelectorAll<HTMLElement>(
1605
1680
  '[data-kt-datatable="true"]',
1606
1681
  );
@@ -1634,11 +1709,10 @@ export class KTDataTable<T extends KTDataTableDataInterface>
1634
1709
 
1635
1710
  /**
1636
1711
  * Initializes all KTDataTable instances on the page.
1637
- *
1638
- * This function should be called after the control(s) have been
1639
- * loaded and parsed by the browser.
1712
+ * This function is now browser-guarded and must be called explicitly.
1640
1713
  */
1641
1714
  public static init(): void {
1715
+ if (typeof document === 'undefined') return;
1642
1716
  // Create instances of KTDataTable for all elements with a
1643
1717
  // data-kt-datatable="true" attribute
1644
1718
  KTDataTable.createInstances();
@@ -1699,6 +1773,15 @@ export class KTDataTable<T extends KTDataTableDataInterface>
1699
1773
  // Other plugin methods can be added here
1700
1774
  }
1701
1775
 
1702
- if (typeof window !== 'undefined') {
1703
- window.KTDataTable = KTDataTable;
1776
+ /**
1777
+ * NOTE: This module is now PURE. No side effects or DOM/global assignments occur on import.
1778
+ * To auto-initialize all datatables on the page, call the exported `initAllDataTables()` function explicitly in the browser.
1779
+ */
1780
+
1781
+ export function initAllDataTables(): void {
1782
+ if (typeof document !== 'undefined') {
1783
+ KTDataTable.createInstances();
1784
+ // Optionally assign to window for legacy support
1785
+ window.KTDataTable = KTDataTable;
1786
+ }
1704
1787
  }
@@ -90,7 +90,7 @@ export interface KTDataTableConfigInterface {
90
90
  item: KTDataTableDataInterface[keyof KTDataTableDataInterface] | string,
91
91
  data: KTDataTableDataInterface,
92
92
  context: KTDataTableInterface,
93
- ) => string;
93
+ ) => string | HTMLElement | DocumentFragment;
94
94
  checkbox?: boolean;
95
95
  createdCell?: (
96
96
  cell: HTMLTableCellElement,
@@ -192,9 +192,13 @@ export interface KTDataTableCheckConfigInterface {
192
192
 
193
193
  export interface KTDataTableCheckInterface {
194
194
  toggle(): void;
195
+
195
196
  check(): void;
197
+
196
198
  uncheck(): void;
199
+
197
200
  isChecked(): boolean;
201
+
198
202
  getChecked(): string[];
199
203
  }
200
204
 
@@ -26,6 +26,7 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
26
26
  protected _previewElement: HTMLElement;
27
27
  protected _previewUrl: string = '';
28
28
  protected _lastMode: string;
29
+ protected _selectedFile: File | null = null;
29
30
 
30
31
  constructor(
31
32
  element: HTMLElement,
@@ -87,6 +88,7 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
87
88
  };
88
89
 
89
90
  reader.readAsDataURL(this._inputElement.files[0]);
91
+ this._selectedFile = this._inputElement.files[0];
90
92
  this._inputElement.value = '';
91
93
  this._hiddenElement.value = '';
92
94
  this._lastMode = 'new';
@@ -125,6 +127,7 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
125
127
 
126
128
  this._inputElement.value = '';
127
129
  this._hiddenElement.value = '';
130
+ this._selectedFile = null;
128
131
 
129
132
  this._lastMode = 'saved';
130
133
  } else if (this._lastMode == 'saved') {
@@ -138,6 +141,7 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
138
141
 
139
142
  this._hiddenElement.value = '1';
140
143
  this._inputElement.value = '';
144
+ this._selectedFile = null;
141
145
 
142
146
  this._lastMode = 'placeholder';
143
147
  } else if (this._lastMode == 'placeholder') {
@@ -154,6 +158,7 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
154
158
 
155
159
  this._inputElement.value = '';
156
160
  this._hiddenElement.value = '';
161
+ this._selectedFile = null;
157
162
 
158
163
  this._lastMode = 'saved';
159
164
  }
@@ -187,11 +192,11 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
187
192
  }
188
193
 
189
194
  public isEmpty(): boolean {
190
- return this._inputElement.value.length === 0;
195
+ return this._selectedFile === null;
191
196
  }
192
197
 
193
198
  public isChanged(): boolean {
194
- return this._inputElement.value.length > 0;
199
+ return this._selectedFile !== null;
195
200
  }
196
201
 
197
202
  public remove(): void {
@@ -210,6 +215,10 @@ export class KTImageInput extends KTComponent implements KTImageInputInterface {
210
215
  return this._getPreviewUrl();
211
216
  }
212
217
 
218
+ public getSelectedFile(): File | null {
219
+ return this._selectedFile;
220
+ }
221
+
213
222
  public static getInstance(element: HTMLElement): KTImageInput {
214
223
  if (!element) return null;
215
224
 
@@ -9,4 +9,5 @@ export interface KTImageInputConfigInterface {
9
9
 
10
10
  export interface KTImageInputInterface {
11
11
  remove(): void;
12
+ getSelectedFile(): File | null;
12
13
  }
@@ -7,7 +7,7 @@
7
7
  /* Base input group styles */
8
8
  .kt-input-group {
9
9
  @apply flex items-stretch relative;
10
-
10
+
11
11
  .kt-input {
12
12
  @apply grow z-1;
13
13
  }
@@ -9,7 +9,7 @@
9
9
  .kt-input {
10
10
  @apply outline-0 block w-full bg-background border border-input shadow-xs shadow-[rgba(0,0,0,0.05)] transition-[color,box-shadow] text-foreground placeholder:text-muted-foreground;
11
11
  @apply focus-visible:ring-ring/30 focus-visible:border-ring focus-visible:outline-none focus-visible:ring-[3px];
12
- @apply disabled:cursor-not-allowed disabled:opacity-60;
12
+ @apply disabled:cursor-not-allowed disabled:opacity-60;
13
13
  @apply [&[readonly]]:bg-muted/80 [&[readonly]]:cursor-not-allowed [&[readonly]]:text-secondary-foreground/80;
14
14
  @apply file:h-full [&[type=file]]:py-0;
15
15
  @apply file:border-solid file:border-input file:bg-transparent file:font-medium file:not-italic file:text-foreground file:p-0 file:border-0 file:border-e;
@@ -7,7 +7,7 @@
7
7
  :root {
8
8
  --kt-scrollable-scrollbar-size: 5px;
9
9
  --kt-scrollable-thumb-color: var(--color-accent);
10
- }
10
+ }
11
11
 
12
12
  .kt-scrollable::-webkit-scrollbar {
13
13
  width: var(--kt-scrollable-scrollbar-size);
@@ -21,10 +21,10 @@
21
21
  .kt-scrollable::-webkit-scrollbar-thumb {
22
22
  background: var(--kt-scrollable-thumb-color);
23
23
  border-radius: var(--kt-scrollable-scrollbar-size);
24
- }
24
+ }
25
25
 
26
26
  /* Firefox */
27
- @-moz-document url-prefix() {
27
+ @-moz-document url-prefix() {
28
28
  .kt-scrollable {
29
29
  scrollbar-width: thin;
30
30
  scrollbar-color: var(--kt-scrollable-thumb-color) transparent;