@keenthemes/ktui 1.2.3 → 1.2.5
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 +2244 -1061
- package/dist/ktui.min.js +1 -1
- package/dist/ktui.min.js.map +1 -1
- package/dist/styles.css +185 -40
- package/lib/cjs/components/context-menu/context-menu.d.ts +66 -0
- package/lib/cjs/components/context-menu/context-menu.d.ts.map +1 -0
- package/lib/cjs/components/context-menu/context-menu.js +423 -0
- package/lib/cjs/components/context-menu/context-menu.js.map +1 -0
- package/lib/cjs/components/context-menu/index.d.ts +7 -0
- package/lib/cjs/components/context-menu/index.d.ts.map +1 -0
- package/lib/cjs/components/context-menu/index.js +10 -0
- package/lib/cjs/components/context-menu/index.js.map +1 -0
- package/lib/cjs/components/context-menu/types.d.ts +30 -0
- package/lib/cjs/components/context-menu/types.d.ts.map +1 -0
- package/lib/cjs/components/context-menu/types.js +7 -0
- package/lib/cjs/components/context-menu/types.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-checkbox.d.ts.map +1 -1
- package/lib/cjs/components/datatable/datatable-checkbox.js +34 -15
- package/lib/cjs/components/datatable/datatable-checkbox.js.map +1 -1
- package/lib/cjs/components/datatable/datatable-contracts.d.ts +66 -0
- package/lib/cjs/components/datatable/datatable-contracts.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-contracts.js +7 -0
- package/lib/cjs/components/datatable/datatable-contracts.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-event-adapter.d.ts +7 -0
- package/lib/cjs/components/datatable/datatable-event-adapter.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-event-adapter.js +16 -0
- package/lib/cjs/components/datatable/datatable-event-adapter.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-local-provider.d.ts +25 -0
- package/lib/cjs/components/datatable/datatable-local-provider.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-local-provider.js +190 -0
- package/lib/cjs/components/datatable/datatable-local-provider.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-pagination-renderer.d.ts +15 -0
- package/lib/cjs/components/datatable/datatable-pagination-renderer.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-pagination-renderer.js +144 -0
- package/lib/cjs/components/datatable/datatable-pagination-renderer.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-remote-provider.d.ts +25 -0
- package/lib/cjs/components/datatable/datatable-remote-provider.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-remote-provider.js +191 -0
- package/lib/cjs/components/datatable/datatable-remote-provider.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-state-store.d.ts +21 -0
- package/lib/cjs/components/datatable/datatable-state-store.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-state-store.js +81 -0
- package/lib/cjs/components/datatable/datatable-state-store.js.map +1 -0
- package/lib/cjs/components/datatable/datatable-table-renderer.d.ts +16 -0
- package/lib/cjs/components/datatable/datatable-table-renderer.d.ts.map +1 -0
- package/lib/cjs/components/datatable/datatable-table-renderer.js +141 -0
- package/lib/cjs/components/datatable/datatable-table-renderer.js.map +1 -0
- package/lib/cjs/components/datatable/datatable.d.ts +9 -87
- package/lib/cjs/components/datatable/datatable.d.ts.map +1 -1
- package/lib/cjs/components/datatable/datatable.js +234 -740
- package/lib/cjs/components/datatable/datatable.js.map +1 -1
- package/lib/cjs/components/dropdown/dropdown.d.ts +2 -2
- package/lib/cjs/components/dropdown/dropdown.d.ts.map +1 -1
- package/lib/cjs/components/dropdown/dropdown.js +68 -31
- package/lib/cjs/components/dropdown/dropdown.js.map +1 -1
- package/lib/cjs/components/input-number/index.d.ts +7 -0
- package/lib/cjs/components/input-number/index.d.ts.map +1 -0
- package/lib/cjs/components/input-number/index.js +10 -0
- package/lib/cjs/components/input-number/index.js.map +1 -0
- package/lib/cjs/components/input-number/input-number.d.ts +40 -0
- package/lib/cjs/components/input-number/input-number.d.ts.map +1 -0
- package/lib/cjs/components/input-number/input-number.js +248 -0
- package/lib/cjs/components/input-number/input-number.js.map +1 -0
- package/lib/cjs/components/input-number/types.d.ts +30 -0
- package/lib/cjs/components/input-number/types.d.ts.map +1 -0
- package/lib/cjs/components/input-number/types.js +7 -0
- package/lib/cjs/components/input-number/types.js.map +1 -0
- package/lib/cjs/components/select/config.d.ts +1 -0
- package/lib/cjs/components/select/config.d.ts.map +1 -1
- package/lib/cjs/components/select/config.js +2 -1
- package/lib/cjs/components/select/config.js.map +1 -1
- package/lib/cjs/components/select/index.d.ts +1 -1
- package/lib/cjs/components/select/index.d.ts.map +1 -1
- package/lib/cjs/components/select/select.d.ts +8 -1
- package/lib/cjs/components/select/select.d.ts.map +1 -1
- package/lib/cjs/components/select/select.js +14 -1
- 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 +10 -0
- package/lib/cjs/components/select/tags.js.map +1 -1
- package/lib/cjs/index.d.ts +9 -1
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +11 -7
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/init-all.d.ts +6 -0
- package/lib/cjs/init-all.d.ts.map +1 -0
- package/lib/cjs/init-all.js +17 -0
- package/lib/cjs/init-all.js.map +1 -0
- package/lib/cjs/legacy.d.ts +8 -0
- package/lib/cjs/legacy.d.ts.map +1 -0
- package/lib/cjs/legacy.js +26 -0
- package/lib/cjs/legacy.js.map +1 -0
- package/lib/esm/components/context-menu/context-menu.d.ts +66 -0
- package/lib/esm/components/context-menu/context-menu.d.ts.map +1 -0
- package/lib/esm/components/context-menu/context-menu.js +420 -0
- package/lib/esm/components/context-menu/context-menu.js.map +1 -0
- package/lib/esm/components/context-menu/index.d.ts +7 -0
- package/lib/esm/components/context-menu/index.d.ts.map +1 -0
- package/lib/esm/components/context-menu/index.js +6 -0
- package/lib/esm/components/context-menu/index.js.map +1 -0
- package/lib/esm/components/context-menu/types.d.ts +30 -0
- package/lib/esm/components/context-menu/types.d.ts.map +1 -0
- package/lib/esm/components/context-menu/types.js +6 -0
- package/lib/esm/components/context-menu/types.js.map +1 -0
- package/lib/esm/components/datatable/datatable-checkbox.d.ts.map +1 -1
- package/lib/esm/components/datatable/datatable-checkbox.js +34 -15
- package/lib/esm/components/datatable/datatable-checkbox.js.map +1 -1
- package/lib/esm/components/datatable/datatable-contracts.d.ts +66 -0
- package/lib/esm/components/datatable/datatable-contracts.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-contracts.js +6 -0
- package/lib/esm/components/datatable/datatable-contracts.js.map +1 -0
- package/lib/esm/components/datatable/datatable-event-adapter.d.ts +7 -0
- package/lib/esm/components/datatable/datatable-event-adapter.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-event-adapter.js +13 -0
- package/lib/esm/components/datatable/datatable-event-adapter.js.map +1 -0
- package/lib/esm/components/datatable/datatable-local-provider.d.ts +25 -0
- package/lib/esm/components/datatable/datatable-local-provider.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-local-provider.js +187 -0
- package/lib/esm/components/datatable/datatable-local-provider.js.map +1 -0
- package/lib/esm/components/datatable/datatable-pagination-renderer.d.ts +15 -0
- package/lib/esm/components/datatable/datatable-pagination-renderer.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-pagination-renderer.js +141 -0
- package/lib/esm/components/datatable/datatable-pagination-renderer.js.map +1 -0
- package/lib/esm/components/datatable/datatable-remote-provider.d.ts +25 -0
- package/lib/esm/components/datatable/datatable-remote-provider.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-remote-provider.js +188 -0
- package/lib/esm/components/datatable/datatable-remote-provider.js.map +1 -0
- package/lib/esm/components/datatable/datatable-state-store.d.ts +21 -0
- package/lib/esm/components/datatable/datatable-state-store.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-state-store.js +78 -0
- package/lib/esm/components/datatable/datatable-state-store.js.map +1 -0
- package/lib/esm/components/datatable/datatable-table-renderer.d.ts +16 -0
- package/lib/esm/components/datatable/datatable-table-renderer.d.ts.map +1 -0
- package/lib/esm/components/datatable/datatable-table-renderer.js +138 -0
- package/lib/esm/components/datatable/datatable-table-renderer.js.map +1 -0
- package/lib/esm/components/datatable/datatable.d.ts +9 -87
- package/lib/esm/components/datatable/datatable.d.ts.map +1 -1
- package/lib/esm/components/datatable/datatable.js +234 -740
- package/lib/esm/components/datatable/datatable.js.map +1 -1
- package/lib/esm/components/dropdown/dropdown.d.ts +2 -2
- package/lib/esm/components/dropdown/dropdown.d.ts.map +1 -1
- package/lib/esm/components/dropdown/dropdown.js +68 -31
- package/lib/esm/components/dropdown/dropdown.js.map +1 -1
- package/lib/esm/components/input-number/index.d.ts +7 -0
- package/lib/esm/components/input-number/index.d.ts.map +1 -0
- package/lib/esm/components/input-number/index.js +6 -0
- package/lib/esm/components/input-number/index.js.map +1 -0
- package/lib/esm/components/input-number/input-number.d.ts +40 -0
- package/lib/esm/components/input-number/input-number.d.ts.map +1 -0
- package/lib/esm/components/input-number/input-number.js +245 -0
- package/lib/esm/components/input-number/input-number.js.map +1 -0
- package/lib/esm/components/input-number/types.d.ts +30 -0
- package/lib/esm/components/input-number/types.d.ts.map +1 -0
- package/lib/esm/components/input-number/types.js +6 -0
- package/lib/esm/components/input-number/types.js.map +1 -0
- package/lib/esm/components/select/config.d.ts +1 -0
- package/lib/esm/components/select/config.d.ts.map +1 -1
- package/lib/esm/components/select/config.js +2 -1
- package/lib/esm/components/select/config.js.map +1 -1
- package/lib/esm/components/select/index.d.ts +1 -1
- package/lib/esm/components/select/index.d.ts.map +1 -1
- package/lib/esm/components/select/select.d.ts +8 -1
- package/lib/esm/components/select/select.d.ts.map +1 -1
- package/lib/esm/components/select/select.js +14 -1
- 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 +11 -1
- package/lib/esm/components/select/tags.js.map +1 -1
- package/lib/esm/index.d.ts +9 -1
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +7 -5
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/init-all.d.ts +6 -0
- package/lib/esm/init-all.d.ts.map +1 -0
- package/lib/esm/init-all.js +13 -0
- package/lib/esm/init-all.js.map +1 -0
- package/lib/esm/legacy.d.ts +8 -0
- package/lib/esm/legacy.d.ts.map +1 -0
- package/lib/esm/legacy.js +8 -0
- package/lib/esm/legacy.js.map +1 -0
- package/package.json +35 -11
- package/src/__tests__/entrypoints.test.ts +71 -0
- package/src/components/context-menu/__tests__/context-menu.test.ts +117 -0
- package/src/components/context-menu/context-menu.css +32 -0
- package/src/components/context-menu/context-menu.ts +529 -0
- package/src/components/context-menu/index.ts +10 -0
- package/src/components/context-menu/types.ts +32 -0
- package/src/components/datatable/__tests__/architecture-boundaries.test.ts +259 -0
- package/src/components/datatable/datatable-checkbox.ts +34 -23
- package/src/components/datatable/datatable-contracts.ts +96 -0
- package/src/components/datatable/datatable-event-adapter.ts +21 -0
- package/src/components/datatable/datatable-local-provider.ts +193 -0
- package/src/components/datatable/datatable-pagination-renderer.ts +225 -0
- package/src/components/datatable/datatable-remote-provider.ts +178 -0
- package/src/components/datatable/datatable-state-store.ts +94 -0
- package/src/components/datatable/datatable-table-renderer.ts +214 -0
- package/src/components/datatable/datatable.ts +250 -918
- package/src/components/dropdown/dropdown.ts +86 -58
- package/src/components/input/input-group.css +14 -1
- package/src/components/input-number/__tests__/input-number.test.ts +278 -0
- package/src/components/input-number/index.ts +11 -0
- package/src/components/input-number/input-number.ts +267 -0
- package/src/components/input-number/types.ts +32 -0
- package/src/components/select/__tests__/ux-behaviors.test.ts +72 -0
- package/src/components/select/config.ts +3 -1
- package/src/components/select/index.ts +1 -1
- package/src/components/select/select.css +23 -20
- package/src/components/select/select.ts +15 -1
- package/src/components/select/tags.ts +14 -1
- package/src/index.ts +18 -5
- package/src/init-all.ts +15 -0
- package/src/legacy.ts +9 -0
- package/styles.css +1 -0
|
@@ -20,19 +20,25 @@ export function createCheckboxHandler(element, config, fireEvent) {
|
|
|
20
20
|
var targetElements = null;
|
|
21
21
|
// Default: preserve selection across all pages
|
|
22
22
|
var preserveSelection = ((_a = config.checkbox) === null || _a === void 0 ? void 0 : _a.preserveSelection) !== false;
|
|
23
|
+
function ensureState() {
|
|
24
|
+
var state = config._state;
|
|
25
|
+
if (!state) {
|
|
26
|
+
state = {};
|
|
27
|
+
config._state = state;
|
|
28
|
+
}
|
|
29
|
+
return state;
|
|
30
|
+
}
|
|
23
31
|
// Helper: get selectedRows from state, always as string[]
|
|
24
32
|
function getSelectedRows() {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
return config._state.selectedRows.map(String);
|
|
33
|
+
var state = ensureState();
|
|
34
|
+
if (!Array.isArray(state.selectedRows))
|
|
35
|
+
state.selectedRows = [];
|
|
36
|
+
return state.selectedRows.map(String);
|
|
30
37
|
}
|
|
31
38
|
// Helper: set selectedRows in state
|
|
32
39
|
function setSelectedRows(rows) {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
config._state.selectedRows = Array.from(new Set(rows.map(String)));
|
|
40
|
+
var state = ensureState();
|
|
41
|
+
state.selectedRows = Array.from(new Set(rows.map(String)));
|
|
36
42
|
}
|
|
37
43
|
// Helper: get all visible row IDs (values)
|
|
38
44
|
function getVisibleRowIds() {
|
|
@@ -47,22 +53,31 @@ export function createCheckboxHandler(element, config, fireEvent) {
|
|
|
47
53
|
checkboxToggle(event);
|
|
48
54
|
};
|
|
49
55
|
function init() {
|
|
50
|
-
|
|
56
|
+
var attrs = config.attributes;
|
|
57
|
+
if (!(attrs === null || attrs === void 0 ? void 0 : attrs.check) || !attrs.checkbox) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
headerCheckElement = element.querySelector(attrs.check);
|
|
51
61
|
if (!headerCheckElement)
|
|
52
62
|
return;
|
|
53
63
|
headerChecked = headerCheckElement.checked;
|
|
54
|
-
targetElements = element.querySelectorAll(
|
|
64
|
+
targetElements = element.querySelectorAll(attrs.checkbox);
|
|
55
65
|
checkboxHandler();
|
|
56
66
|
reapplyCheckedStates();
|
|
57
67
|
updateHeaderCheckboxState();
|
|
58
68
|
}
|
|
59
69
|
function checkboxHandler() {
|
|
70
|
+
var _a;
|
|
60
71
|
if (!headerCheckElement)
|
|
61
72
|
return;
|
|
73
|
+
var rowCheckboxSelector = (_a = config.attributes) === null || _a === void 0 ? void 0 : _a.checkbox;
|
|
74
|
+
if (!rowCheckboxSelector)
|
|
75
|
+
return;
|
|
62
76
|
headerCheckElement.addEventListener('click', checkboxListener);
|
|
63
|
-
KTEventHandler.on(document.body,
|
|
64
|
-
|
|
65
|
-
|
|
77
|
+
KTEventHandler.on(document.body, rowCheckboxSelector, 'input', (function (event) {
|
|
78
|
+
if (event)
|
|
79
|
+
handleRowCheckboxChange(event);
|
|
80
|
+
}));
|
|
66
81
|
}
|
|
67
82
|
// When a row checkbox is changed
|
|
68
83
|
function handleRowCheckboxChange(event) {
|
|
@@ -209,8 +224,12 @@ export function createCheckboxHandler(element, config, fireEvent) {
|
|
|
209
224
|
updateHeaderCheckboxState();
|
|
210
225
|
}
|
|
211
226
|
function updateState() {
|
|
212
|
-
|
|
213
|
-
|
|
227
|
+
var _a;
|
|
228
|
+
var rowCheckSel = (_a = config.attributes) === null || _a === void 0 ? void 0 : _a.checkbox;
|
|
229
|
+
if (!rowCheckSel) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
targetElements = element.querySelectorAll(rowCheckSel);
|
|
214
233
|
reapplyCheckedStates();
|
|
215
234
|
updateHeaderCheckboxState();
|
|
216
235
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datatable-checkbox.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-checkbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"datatable-checkbox.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-checkbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
import { KTDataTableAttributeInterface, KTDataTableColumnFilterInterface, KTDataTableConfigInterface, KTDataTableDataInterface, KTDataTableInterface, KTDataTableSortOrderInterface, KTDataTableStateInterface } from './types';
|
|
6
|
+
export type KTDataTableEmit = (eventName: string, eventData?: object) => void;
|
|
7
|
+
export type KTDataTableCleanup = () => void;
|
|
8
|
+
export interface KTDataTableEventAdapter {
|
|
9
|
+
emit(eventName: string, eventData?: object): void;
|
|
10
|
+
}
|
|
11
|
+
export interface KTDataTableStateStore {
|
|
12
|
+
getState(): KTDataTableStateInterface;
|
|
13
|
+
replaceState(state: KTDataTableStateInterface): void;
|
|
14
|
+
patchState(state: Partial<KTDataTableStateInterface>): void;
|
|
15
|
+
setPage(page: number): void;
|
|
16
|
+
setPageSize(pageSize: number, page?: number): void;
|
|
17
|
+
setSort(field: keyof KTDataTableDataInterface | number, order: KTDataTableSortOrderInterface): void;
|
|
18
|
+
setSearch(search: string | object): void;
|
|
19
|
+
setFilter(filter: KTDataTableColumnFilterInterface): void;
|
|
20
|
+
setOriginalData(originalData: KTDataTableDataInterface[], originalDataAttributes: KTDataTableAttributeInterface[]): void;
|
|
21
|
+
}
|
|
22
|
+
export interface KTDataTableProviderResult<T extends KTDataTableDataInterface> {
|
|
23
|
+
data: T[];
|
|
24
|
+
totalItems: number;
|
|
25
|
+
response?: unknown;
|
|
26
|
+
skipped?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface KTDataTableDataProvider<T extends KTDataTableDataInterface> {
|
|
29
|
+
fetch(): Promise<KTDataTableProviderResult<T>>;
|
|
30
|
+
dispose?(): void;
|
|
31
|
+
}
|
|
32
|
+
export interface KTDataTableLocalProviderElements {
|
|
33
|
+
tableElement: HTMLTableElement;
|
|
34
|
+
tbodyElement: HTMLTableSectionElement;
|
|
35
|
+
theadElement: HTMLTableSectionElement;
|
|
36
|
+
}
|
|
37
|
+
export interface KTDataTableTableRendererInput<T extends KTDataTableDataInterface> {
|
|
38
|
+
config: KTDataTableConfigInterface;
|
|
39
|
+
context: KTDataTableInterface;
|
|
40
|
+
data: T[];
|
|
41
|
+
getLogicalColumnCount: () => number;
|
|
42
|
+
getState: () => KTDataTableStateInterface;
|
|
43
|
+
originalTbodyClass: string;
|
|
44
|
+
originalTrClasses: string[];
|
|
45
|
+
originalTdClasses: string[][];
|
|
46
|
+
tableElement: HTMLTableElement;
|
|
47
|
+
theadElement: HTMLTableSectionElement;
|
|
48
|
+
}
|
|
49
|
+
export interface KTDataTableTableRenderer<T extends KTDataTableDataInterface> {
|
|
50
|
+
render(input: KTDataTableTableRendererInput<T>): HTMLTableSectionElement;
|
|
51
|
+
notice(tableElement: HTMLTableElement, getLogicalColumnCount: () => number, message?: string): void;
|
|
52
|
+
}
|
|
53
|
+
export interface KTDataTablePaginationRendererInput {
|
|
54
|
+
config: KTDataTableConfigInterface;
|
|
55
|
+
dataLength: number;
|
|
56
|
+
infoElement?: HTMLElement | null;
|
|
57
|
+
paginateData: (page: number) => void;
|
|
58
|
+
paginationElement?: HTMLElement | null;
|
|
59
|
+
reloadPageSize: (pageSize: number, page?: number) => void;
|
|
60
|
+
sizeElement?: HTMLSelectElement | null;
|
|
61
|
+
state: KTDataTableStateInterface;
|
|
62
|
+
}
|
|
63
|
+
export interface KTDataTablePaginationRenderer {
|
|
64
|
+
render(input: KTDataTablePaginationRendererInput): KTDataTableCleanup | void;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=datatable-contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-contracts.d.ts","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-contracts.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-contracts.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
import { KTDataTableEmit, KTDataTableEventAdapter } from './datatable-contracts';
|
|
6
|
+
export declare function createDataTableEventAdapter(fireEvent: KTDataTableEmit, dispatchEvent: KTDataTableEmit): KTDataTableEventAdapter;
|
|
7
|
+
//# sourceMappingURL=datatable-event-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-event-adapter.d.ts","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-event-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,eAAe,EACf,uBAAuB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,wBAAgB,2BAA2B,CAC1C,SAAS,EAAE,eAAe,EAC1B,aAAa,EAAE,eAAe,GAC5B,uBAAuB,CAOzB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
export function createDataTableEventAdapter(fireEvent, dispatchEvent) {
|
|
6
|
+
return {
|
|
7
|
+
emit: function (eventName, eventData) {
|
|
8
|
+
fireEvent(eventName, eventData);
|
|
9
|
+
dispatchEvent(eventName, eventData);
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=datatable-event-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-event-adapter.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-event-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,MAAM,UAAU,2BAA2B,CAC1C,SAA0B,EAC1B,aAA8B;IAE9B,OAAO;QACN,IAAI,YAAC,SAAiB,EAAE,SAAkB;YACzC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAChC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;KACD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
import { KTDataTableConfigInterface, KTDataTableDataInterface } from './types';
|
|
6
|
+
import { KTDataTableDataProvider, KTDataTableLocalProviderElements, KTDataTableProviderResult, KTDataTableStateStore } from './datatable-contracts';
|
|
7
|
+
interface KTDataTableLocalProviderOptions<T extends KTDataTableDataInterface> {
|
|
8
|
+
config: KTDataTableConfigInterface;
|
|
9
|
+
elements: () => KTDataTableLocalProviderElements;
|
|
10
|
+
getLogicalColumnCount: () => number;
|
|
11
|
+
storeOriginalClasses: () => void;
|
|
12
|
+
stateStore: KTDataTableStateStore;
|
|
13
|
+
}
|
|
14
|
+
export declare class KTDataTableLocalDataProvider<T extends KTDataTableDataInterface> implements KTDataTableDataProvider<T> {
|
|
15
|
+
private readonly options;
|
|
16
|
+
constructor(options: KTDataTableLocalProviderOptions<T>);
|
|
17
|
+
fetch(): Promise<KTDataTableProviderResult<T>>;
|
|
18
|
+
fetchSync(): KTDataTableProviderResult<T>;
|
|
19
|
+
private localTableContentInvalidate;
|
|
20
|
+
private tableConfigInvalidate;
|
|
21
|
+
private localExtractTableContent;
|
|
22
|
+
private localTableHeaderInvalidate;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=datatable-local-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-local-provider.d.ts","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-local-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEN,0BAA0B,EAC1B,wBAAwB,EAExB,MAAM,SAAS,CAAC;AACjB,OAAO,EACN,uBAAuB,EACvB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,MAAM,uBAAuB,CAAC;AAE/B,UAAU,+BAA+B,CAAC,CAAC,SAAS,wBAAwB;IAC3E,MAAM,EAAE,0BAA0B,CAAC;IACnC,QAAQ,EAAE,MAAM,gCAAgC,CAAC;IACjD,qBAAqB,EAAE,MAAM,MAAM,CAAC;IACpC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,UAAU,EAAE,qBAAqB,CAAC;CAClC;AAED,qBAAa,4BAA4B,CACxC,CAAC,SAAS,wBAAwB,CACjC,YAAW,uBAAuB,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,+BAA+B,CAAC,CAAC,CAAC;IAE3D,KAAK,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IAIpD,SAAS,IAAI,yBAAyB,CAAC,CAAC,CAAC;IA6DhD,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,wBAAwB;IA8ChC,OAAO,CAAC,0BAA0B;CAuBlC"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
6
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
7
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
8
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
9
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
10
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
11
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
15
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
16
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
17
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
18
|
+
function step(op) {
|
|
19
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
20
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
21
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
22
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
23
|
+
switch (op[0]) {
|
|
24
|
+
case 0: case 1: t = op; break;
|
|
25
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
26
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
27
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
28
|
+
default:
|
|
29
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
30
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
31
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
32
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
33
|
+
if (t[2]) _.ops.pop();
|
|
34
|
+
_.trys.pop(); continue;
|
|
35
|
+
}
|
|
36
|
+
op = body.call(thisArg, _);
|
|
37
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
38
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
42
|
+
var t = {};
|
|
43
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
44
|
+
t[p] = s[p];
|
|
45
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
46
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
47
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
48
|
+
t[p[i]] = s[p[i]];
|
|
49
|
+
}
|
|
50
|
+
return t;
|
|
51
|
+
};
|
|
52
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
53
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
54
|
+
if (ar || !(i in from)) {
|
|
55
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
56
|
+
ar[i] = from[i];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
60
|
+
};
|
|
61
|
+
import KTUtils from '../../helpers/utils';
|
|
62
|
+
var KTDataTableLocalDataProvider = /** @class */ (function () {
|
|
63
|
+
function KTDataTableLocalDataProvider(options) {
|
|
64
|
+
this.options = options;
|
|
65
|
+
}
|
|
66
|
+
KTDataTableLocalDataProvider.prototype.fetch = function () {
|
|
67
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
68
|
+
return __generator(this, function (_a) {
|
|
69
|
+
return [2 /*return*/, this.fetchSync()];
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
KTDataTableLocalDataProvider.prototype.fetchSync = function () {
|
|
74
|
+
var _a, _b;
|
|
75
|
+
var state = this.options.stateStore.getState();
|
|
76
|
+
var originalData = state.originalData;
|
|
77
|
+
if (!this.options.elements().tableElement ||
|
|
78
|
+
originalData === undefined ||
|
|
79
|
+
this.tableConfigInvalidate() ||
|
|
80
|
+
this.localTableHeaderInvalidate() ||
|
|
81
|
+
this.localTableContentInvalidate()) {
|
|
82
|
+
var _c = this.localExtractTableContent(), originalData_1 = _c.originalData, originalDataAttributes = _c.originalDataAttributes;
|
|
83
|
+
this.options.stateStore.setOriginalData(originalData_1, originalDataAttributes);
|
|
84
|
+
}
|
|
85
|
+
originalData = this.options.stateStore.getState().originalData;
|
|
86
|
+
var data = __spreadArray([], originalData, true);
|
|
87
|
+
var filteredData = data;
|
|
88
|
+
var _d = this.options.stateStore.getState(), sortField = _d.sortField, sortOrder = _d.sortOrder, page = _d.page, pageSize = _d.pageSize, search = _d.search;
|
|
89
|
+
if (search) {
|
|
90
|
+
var searchTerm = typeof search === 'string' ? search : '';
|
|
91
|
+
var searchCallback = (_a = this.options.config.search) === null || _a === void 0 ? void 0 : _a.callback;
|
|
92
|
+
if (searchCallback) {
|
|
93
|
+
filteredData = data = searchCallback.call(this, data, searchTerm);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
var sortCallback = (_b = this.options.config.sort) === null || _b === void 0 ? void 0 : _b.callback;
|
|
97
|
+
if (sortField !== undefined &&
|
|
98
|
+
sortOrder !== undefined &&
|
|
99
|
+
sortOrder !== '' &&
|
|
100
|
+
typeof sortCallback === 'function') {
|
|
101
|
+
data = sortCallback.call(this, data, sortField, sortOrder);
|
|
102
|
+
}
|
|
103
|
+
if ((data === null || data === void 0 ? void 0 : data.length) > 0) {
|
|
104
|
+
var startIndex = (page - 1) * pageSize;
|
|
105
|
+
var endIndex = startIndex + pageSize;
|
|
106
|
+
data = data.slice(startIndex, endIndex);
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
data: data,
|
|
110
|
+
totalItems: filteredData.length,
|
|
111
|
+
};
|
|
112
|
+
};
|
|
113
|
+
KTDataTableLocalDataProvider.prototype.localTableContentInvalidate = function () {
|
|
114
|
+
var tbodyElement = this.options.elements().tbodyElement;
|
|
115
|
+
var checksum = KTUtils.checksum(JSON.stringify(tbodyElement.innerHTML));
|
|
116
|
+
if (this.options.stateStore.getState()._contentChecksum !== checksum) {
|
|
117
|
+
this.options.stateStore.patchState({ _contentChecksum: checksum });
|
|
118
|
+
return true;
|
|
119
|
+
}
|
|
120
|
+
return false;
|
|
121
|
+
};
|
|
122
|
+
KTDataTableLocalDataProvider.prototype.tableConfigInvalidate = function () {
|
|
123
|
+
var _a;
|
|
124
|
+
var _b = this.options.config, _state = _b._state, restConfig = __rest(_b, ["_state"]);
|
|
125
|
+
var checksum = KTUtils.checksum(JSON.stringify(restConfig));
|
|
126
|
+
if (((_a = _state === null || _state === void 0 ? void 0 : _state._configChecksum) !== null && _a !== void 0 ? _a : '') !== checksum) {
|
|
127
|
+
this.options.stateStore.patchState({ _configChecksum: checksum });
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
return false;
|
|
131
|
+
};
|
|
132
|
+
KTDataTableLocalDataProvider.prototype.localExtractTableContent = function () {
|
|
133
|
+
var originalData = [];
|
|
134
|
+
var originalDataAttributes = [];
|
|
135
|
+
var _a = this.options.elements(), tbodyElement = _a.tbodyElement, theadElement = _a.theadElement;
|
|
136
|
+
this.options.storeOriginalClasses();
|
|
137
|
+
var rows = tbodyElement.querySelectorAll('tr');
|
|
138
|
+
var allThs = theadElement
|
|
139
|
+
? theadElement.querySelectorAll('th')
|
|
140
|
+
: [];
|
|
141
|
+
var ths = Array.from(allThs).filter(function (th) {
|
|
142
|
+
return th.hasAttribute('data-kt-datatable-column');
|
|
143
|
+
});
|
|
144
|
+
var columnsByIndex = ths.length > 0 && ths.length !== allThs.length ? Array.from(allThs) : ths;
|
|
145
|
+
rows.forEach(function (row) {
|
|
146
|
+
var dataRow = {};
|
|
147
|
+
var dataRowAttribute = {};
|
|
148
|
+
row.querySelectorAll('td').forEach(function (td, index) {
|
|
149
|
+
var _a, _b, _c;
|
|
150
|
+
var colName = (_a = columnsByIndex[index]) === null || _a === void 0 ? void 0 : _a.getAttribute('data-kt-datatable-column');
|
|
151
|
+
if (colName) {
|
|
152
|
+
dataRow[colName] = (_b = td.innerHTML) === null || _b === void 0 ? void 0 : _b.trim();
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
dataRow[index] = (_c = td.innerHTML) === null || _c === void 0 ? void 0 : _c.trim();
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
if (Object.keys(dataRow).length > 0) {
|
|
159
|
+
originalData.push(dataRow);
|
|
160
|
+
originalDataAttributes.push(dataRowAttribute);
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
return { originalData: originalData, originalDataAttributes: originalDataAttributes };
|
|
164
|
+
};
|
|
165
|
+
KTDataTableLocalDataProvider.prototype.localTableHeaderInvalidate = function () {
|
|
166
|
+
var originalData = this.options.stateStore.getState().originalData;
|
|
167
|
+
var theadElement = this.options.elements().theadElement;
|
|
168
|
+
var totalColumns = originalData.length
|
|
169
|
+
? Object.keys(originalData[0]).length
|
|
170
|
+
: 0;
|
|
171
|
+
var allThs = theadElement
|
|
172
|
+
? theadElement.querySelectorAll('th')
|
|
173
|
+
: [];
|
|
174
|
+
var thsWithColumn = Array.from(allThs).filter(function (th) {
|
|
175
|
+
return th.hasAttribute('data-kt-datatable-column');
|
|
176
|
+
});
|
|
177
|
+
var currentTableHeaders = thsWithColumn.length > 0
|
|
178
|
+
? thsWithColumn.length !== allThs.length
|
|
179
|
+
? allThs.length
|
|
180
|
+
: thsWithColumn.length
|
|
181
|
+
: this.options.getLogicalColumnCount();
|
|
182
|
+
return currentTableHeaders !== totalColumns;
|
|
183
|
+
};
|
|
184
|
+
return KTDataTableLocalDataProvider;
|
|
185
|
+
}());
|
|
186
|
+
export { KTDataTableLocalDataProvider };
|
|
187
|
+
//# sourceMappingURL=datatable-local-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-local-provider.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-local-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAsB1C;IAGC,sCAA6B,OAA2C;QAA3C,YAAO,GAAP,OAAO,CAAoC;IAAG,CAAC;IAE/D,4CAAK,GAAlB;;;gBACC,sBAAO,IAAI,CAAC,SAAS,EAAE,EAAC;;;KACxB;IAEM,gDAAS,GAAhB;;QACC,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAA,YAAY,GAAK,KAAK,aAAV,CAAW;QAE7B,IACC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,YAAY;YACrC,YAAY,KAAK,SAAS;YAC1B,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,0BAA0B,EAAE;YACjC,IAAI,CAAC,2BAA2B,EAAE,EACjC,CAAC;YACI,IAAA,KACL,IAAI,CAAC,wBAAwB,EAAE,EADxB,cAAY,kBAAA,EAAE,sBAAsB,4BACZ,CAAC;YAEjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CACtC,cAAY,EACZ,sBAAsB,CACtB,CAAC;QACH,CAAC;QAED,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC;QAC/D,IAAI,IAAI,GAAG,kBAAI,YAAY,OAAQ,CAAC;QACpC,IAAI,YAAY,GAAG,IAAI,CAAC;QAElB,IAAA,KACL,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAD3B,SAAS,eAAA,EAAE,SAAS,eAAA,EAAE,IAAI,UAAA,EAAE,QAAQ,cAAA,EAAE,MAAM,YACjB,CAAC;QAEpC,IAAI,MAAM,EAAE,CAAC;YACZ,IAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,IAAM,cAAc,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC;YAC5D,IAAI,cAAc,EAAE,CAAC;gBACpB,YAAY,GAAG,IAAI,GAAG,cAAc,CAAC,IAAI,CACxC,IAAI,EACJ,IAAI,EACJ,UAAU,CACH,CAAC;YACV,CAAC;QACF,CAAC;QAED,IAAM,YAAY,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,0CAAE,QAAQ,CAAC;QACxD,IACC,SAAS,KAAK,SAAS;YACvB,SAAS,KAAK,SAAS;YACvB,SAAS,KAAK,EAAE;YAChB,OAAO,YAAY,KAAK,UAAU,EACjC,CAAC;YACF,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAmB,EAAE,SAAS,CAAQ,CAAC;QAC7E,CAAC;QAED,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;YACtB,IAAM,UAAU,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;YACzC,IAAM,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;YACvC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAQ,CAAC;QAChD,CAAC;QAED,OAAO;YACN,IAAI,MAAA;YACJ,UAAU,EAAE,YAAY,CAAC,MAAM;SAC/B,CAAC;IACH,CAAC;IAEO,kEAA2B,GAAnC;QACS,IAAA,YAAY,GAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,aAA5B,CAA6B;QACjD,IAAM,QAAQ,GAAW,OAAO,CAAC,QAAQ,CACxC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CACtC,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;YACtE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAEO,4DAAqB,GAA7B;;QACC,IAAM,KAA4B,IAAI,CAAC,OAAO,CAAC,MAAM,EAA7C,MAAM,YAAA,EAAK,UAAU,cAAvB,UAAyB,CAAsB,CAAC;QACtD,IAAM,QAAQ,GAAW,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAEtE,IAAI,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,eAAe,mCAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAEO,+DAAwB,GAAhC;QAIC,IAAM,YAAY,GAAQ,EAAE,CAAC;QAC7B,IAAM,sBAAsB,GAAoC,EAAE,CAAC;QAC7D,IAAA,KAAiC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAtD,YAAY,kBAAA,EAAE,YAAY,kBAA4B,CAAC;QAE/D,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QAEpC,IAAM,IAAI,GAAG,YAAY,CAAC,gBAAgB,CAAsB,IAAI,CAAC,CAAC;QACtE,IAAM,MAAM,GAAqC,YAAY;YAC5D,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACrC,CAAC,CAAE,EAAkD,CAAC;QAEvD,IAAM,GAAG,GAA2B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,UAAC,EAAE;YAChE,OAAA,EAAE,CAAC,YAAY,CAAC,0BAA0B,CAAC;QAA3C,CAA2C,CAC3C,CAAC;QACF,IAAM,cAAc,GACnB,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAE3E,IAAI,CAAC,OAAO,CAAC,UAAC,GAAwB;YACrC,IAAM,OAAO,GAAM,EAAO,CAAC;YAC3B,IAAM,gBAAgB,GACrB,EAAmC,CAAC;YAErC,GAAG,CAAC,gBAAgB,CAAuB,IAAI,CAAC,CAAC,OAAO,CAAC,UAAC,EAAE,EAAE,KAAK;;gBAClE,IAAM,OAAO,GAAG,MAAA,cAAc,CAAC,KAAK,CAAC,0CAAE,YAAY,CAClD,0BAA0B,CAC1B,CAAC;gBACF,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,OAAkB,CAAC,GAAG,MAAA,EAAE,CAAC,SAAS,0CAAE,IAAI,EAAgB,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACP,OAAO,CAAC,KAAgB,CAAC,GAAG,MAAA,EAAE,CAAC,SAAS,0CAAE,IAAI,EAAgB,CAAC;gBAChE,CAAC;YACF,CAAC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3B,sBAAsB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,YAAY,cAAA,EAAE,sBAAsB,wBAAA,EAAE,CAAC;IACjD,CAAC;IAEO,iEAA0B,GAAlC;QACS,IAAA,YAAY,GAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,aAAvC,CAAwC;QACpD,IAAA,YAAY,GAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,aAA5B,CAA6B;QAEjD,IAAM,YAAY,GAAG,YAAY,CAAC,MAAM;YACvC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;YACrC,CAAC,CAAC,CAAC,CAAC;QAEL,IAAM,MAAM,GAAqC,YAAY;YAC5D,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACrC,CAAC,CAAE,EAAkD,CAAC;QACvD,IAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,UAAC,EAAE;YAClD,OAAA,EAAE,CAAC,YAAY,CAAC,0BAA0B,CAAC;QAA3C,CAA2C,CAC3C,CAAC;QACF,IAAM,mBAAmB,GACxB,aAAa,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;gBACvC,CAAC,CAAC,MAAM,CAAC,MAAM;gBACf,CAAC,CAAC,aAAa,CAAC,MAAM;YACvB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAEzC,OAAO,mBAAmB,KAAK,YAAY,CAAC;IAC7C,CAAC;IACF,mCAAC;AAAD,CAAC,AArKD,IAqKC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
import { KTDataTableCleanup, KTDataTablePaginationRenderer, KTDataTablePaginationRendererInput } from './datatable-contracts';
|
|
6
|
+
export declare class KTDataTableDomPaginationRenderer implements KTDataTablePaginationRenderer {
|
|
7
|
+
render(input: KTDataTablePaginationRendererInput): KTDataTableCleanup | void;
|
|
8
|
+
private removeChildElements;
|
|
9
|
+
private createPageSizeControls;
|
|
10
|
+
private createPaginationControls;
|
|
11
|
+
private setPaginationInfoText;
|
|
12
|
+
private createPaginationButtons;
|
|
13
|
+
private calculatePageRange;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=datatable-pagination-renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-pagination-renderer.d.ts","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-pagination-renderer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,6BAA6B,EAC7B,kCAAkC,EAClC,MAAM,uBAAuB,CAAC;AAE/B,qBAAa,gCAAiC,YAAW,6BAA6B;IAC9E,MAAM,CACZ,KAAK,EAAE,kCAAkC,GACvC,kBAAkB,GAAG,IAAI;IAqB5B,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,sBAAsB;IA6B9B,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,uBAAuB;IA4F/B,OAAO,CAAC,kBAAkB;CAqB1B"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KTUI - Free & Open-Source Tailwind UI Components by Keenthemes
|
|
3
|
+
* Copyright 2025 by Keenthemes Inc
|
|
4
|
+
*/
|
|
5
|
+
var KTDataTableDomPaginationRenderer = /** @class */ (function () {
|
|
6
|
+
function KTDataTableDomPaginationRenderer() {
|
|
7
|
+
}
|
|
8
|
+
KTDataTableDomPaginationRenderer.prototype.render = function (input) {
|
|
9
|
+
var _this = this;
|
|
10
|
+
if (input.sizeElement) {
|
|
11
|
+
this.removeChildElements(input.sizeElement);
|
|
12
|
+
this.createPageSizeControls(input);
|
|
13
|
+
}
|
|
14
|
+
if (input.paginationElement) {
|
|
15
|
+
this.removeChildElements(input.paginationElement);
|
|
16
|
+
this.createPaginationControls(input);
|
|
17
|
+
}
|
|
18
|
+
return function () {
|
|
19
|
+
if (input.sizeElement) {
|
|
20
|
+
input.sizeElement.onchange = null;
|
|
21
|
+
}
|
|
22
|
+
if (input.paginationElement) {
|
|
23
|
+
_this.removeChildElements(input.paginationElement);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
KTDataTableDomPaginationRenderer.prototype.removeChildElements = function (container) {
|
|
28
|
+
if (!container) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
while (container.firstChild) {
|
|
32
|
+
container.removeChild(container.firstChild);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
KTDataTableDomPaginationRenderer.prototype.createPageSizeControls = function (input) {
|
|
36
|
+
var _a;
|
|
37
|
+
if (!input.sizeElement) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
var pageSizes = (_a = input.config.pageSizes) !== null && _a !== void 0 ? _a : [5, 10, 20, 30, 50];
|
|
41
|
+
setTimeout(function () {
|
|
42
|
+
var _a;
|
|
43
|
+
var options = pageSizes.map(function (size) {
|
|
44
|
+
var option = document.createElement('option');
|
|
45
|
+
option.value = String(size);
|
|
46
|
+
option.text = String(size);
|
|
47
|
+
option.selected = input.state.pageSize === size;
|
|
48
|
+
return option;
|
|
49
|
+
});
|
|
50
|
+
(_a = input.sizeElement).append.apply(_a, options);
|
|
51
|
+
}, 100);
|
|
52
|
+
input.sizeElement.onchange = function (event) {
|
|
53
|
+
input.reloadPageSize(Number(event.target.value), 1);
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
KTDataTableDomPaginationRenderer.prototype.createPaginationControls = function (input) {
|
|
57
|
+
if (!input.paginationElement || input.dataLength === 0) {
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
this.setPaginationInfoText(input);
|
|
61
|
+
this.createPaginationButtons(input.paginationElement, input);
|
|
62
|
+
return input.paginationElement;
|
|
63
|
+
};
|
|
64
|
+
KTDataTableDomPaginationRenderer.prototype.setPaginationInfoText = function (input) {
|
|
65
|
+
var _a;
|
|
66
|
+
if (!input.infoElement) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
var infoTemplate = (_a = input.config.info) !== null && _a !== void 0 ? _a : '{start}-{end} of {total}';
|
|
70
|
+
input.infoElement.textContent = infoTemplate
|
|
71
|
+
.replace('{start}', (input.state.page - 1) * input.state.pageSize + 1 + '')
|
|
72
|
+
.replace('{end}', Math.min(input.state.page * input.state.pageSize, input.state.totalItems) + '')
|
|
73
|
+
.replace('{total}', input.state.totalItems + '');
|
|
74
|
+
};
|
|
75
|
+
KTDataTableDomPaginationRenderer.prototype.createPaginationButtons = function (paginationContainer, input) {
|
|
76
|
+
var _a;
|
|
77
|
+
var pagination = input.config.pagination;
|
|
78
|
+
if (!pagination) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
var _b = input.state, currentPage = _b.page, totalPages = _b.totalPages;
|
|
82
|
+
var previous = pagination.previous, next = pagination.next, number = pagination.number, more = pagination.more;
|
|
83
|
+
var pageMoreLimit = (_a = input.config.pageMoreLimit) !== null && _a !== void 0 ? _a : 3;
|
|
84
|
+
var createButton = function (text, className, disabled, handleClick) {
|
|
85
|
+
var button = document.createElement('button');
|
|
86
|
+
button.className = className;
|
|
87
|
+
button.innerHTML = text;
|
|
88
|
+
button.disabled = disabled;
|
|
89
|
+
button.onclick = handleClick;
|
|
90
|
+
return button;
|
|
91
|
+
};
|
|
92
|
+
paginationContainer.appendChild(createButton(previous.text, "".concat(previous.class).concat(currentPage === 1 ? ' disabled' : ''), currentPage === 1, function () { return input.paginateData(currentPage - 1); }));
|
|
93
|
+
if (input.config.pageMore) {
|
|
94
|
+
var range_1 = this.calculatePageRange(currentPage, totalPages, pageMoreLimit);
|
|
95
|
+
if (range_1.start > 1) {
|
|
96
|
+
paginationContainer.appendChild(createButton(more.text, more.class, false, function () {
|
|
97
|
+
return input.paginateData(Math.max(1, range_1.start - 1));
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
var _loop_1 = function (i) {
|
|
101
|
+
paginationContainer.appendChild(createButton(number.text.replace('{page}', i.toString()), "".concat(number.class).concat(currentPage === i ? ' active disabled' : ''), currentPage === i, function () { return input.paginateData(i); }));
|
|
102
|
+
};
|
|
103
|
+
for (var i = range_1.start; i <= range_1.end; i++) {
|
|
104
|
+
_loop_1(i);
|
|
105
|
+
}
|
|
106
|
+
if (range_1.end < totalPages) {
|
|
107
|
+
paginationContainer.appendChild(createButton(more.text, more.class, false, function () {
|
|
108
|
+
return input.paginateData(Math.min(totalPages, range_1.end + 1));
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
var _loop_2 = function (i) {
|
|
114
|
+
paginationContainer.appendChild(createButton(number.text.replace('{page}', i.toString()), "".concat(number.class).concat(currentPage === i ? ' active disabled' : ''), currentPage === i, function () { return input.paginateData(i); }));
|
|
115
|
+
};
|
|
116
|
+
for (var i = 1; i <= totalPages; i++) {
|
|
117
|
+
_loop_2(i);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
paginationContainer.appendChild(createButton(next.text, "".concat(next.class).concat(currentPage === totalPages ? ' disabled' : ''), currentPage === totalPages, function () { return input.paginateData(currentPage + 1); }));
|
|
121
|
+
};
|
|
122
|
+
KTDataTableDomPaginationRenderer.prototype.calculatePageRange = function (currentPage, totalPages, maxButtons) {
|
|
123
|
+
var startPage, endPage;
|
|
124
|
+
var halfMaxButtons = Math.floor(maxButtons / 2);
|
|
125
|
+
if (totalPages <= maxButtons) {
|
|
126
|
+
startPage = 1;
|
|
127
|
+
endPage = totalPages;
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
startPage = Math.max(currentPage - halfMaxButtons, 1);
|
|
131
|
+
endPage = Math.min(startPage + maxButtons - 1, totalPages);
|
|
132
|
+
if (endPage - startPage < maxButtons - 1) {
|
|
133
|
+
startPage = Math.max(endPage - maxButtons + 1, 1);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return { start: startPage, end: endPage };
|
|
137
|
+
};
|
|
138
|
+
return KTDataTableDomPaginationRenderer;
|
|
139
|
+
}());
|
|
140
|
+
export { KTDataTableDomPaginationRenderer };
|
|
141
|
+
//# sourceMappingURL=datatable-pagination-renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datatable-pagination-renderer.js","sourceRoot":"","sources":["../../../../src/components/datatable/datatable-pagination-renderer.ts"],"names":[],"mappings":"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"}
|