tekivex-ui 2.5.2 → 2.5.4
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/TkxForm-DSMDo2Ol.js +388 -0
- package/dist/TkxForm-DwV_n-eE.cjs +12 -0
- package/dist/charts.cjs +1 -1
- package/dist/charts.js +324 -301
- package/dist/headless.cjs +1 -1
- package/dist/headless.js +396 -195
- package/dist/i18n.cjs +1 -0
- package/dist/i18n.js +757 -0
- package/dist/index.cjs +27 -22
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4994 -5089
- package/dist/quantum.cjs +91 -0
- package/dist/quantum.js +2312 -0
- package/dist/realtime.cjs +25 -0
- package/dist/realtime.js +944 -0
- package/dist/security-C369oOWH.cjs +1 -0
- package/dist/security-CzAmaMqa.js +97 -0
- package/dist/src/charts/TkxDonutChart.d.ts.map +1 -1
- package/dist/src/charts/TkxPieChart.d.ts.map +1 -1
- package/dist/src/components/TkxDataGrid.d.ts +9 -1
- package/dist/src/components/TkxDataGrid.d.ts.map +1 -1
- package/dist/src/components/TkxDropdown.d.ts +41 -0
- package/dist/src/components/TkxDropdown.d.ts.map +1 -0
- package/dist/src/components/TkxLiveFeed.d.ts +891 -0
- package/dist/src/components/TkxLiveFeed.d.ts.map +1 -0
- package/dist/src/components/TkxLiveLog.d.ts +892 -0
- package/dist/src/components/TkxLiveLog.d.ts.map +1 -0
- package/dist/src/components/TkxLiveMetrics.d.ts +24 -0
- package/dist/src/components/TkxLiveMetrics.d.ts.map +1 -0
- package/dist/src/components/TkxPlayground.d.ts +15 -0
- package/dist/src/components/TkxPlayground.d.ts.map +1 -0
- package/dist/src/components/TkxQuantumForm.d.ts +20 -0
- package/dist/src/components/TkxQuantumForm.d.ts.map +1 -0
- package/dist/src/components/TkxRealTimeChart.d.ts +27 -0
- package/dist/src/components/TkxRealTimeChart.d.ts.map +1 -0
- package/dist/src/components/TkxTable.d.ts +11 -1
- package/dist/src/components/TkxTable.d.ts.map +1 -1
- package/dist/src/components/TkxThemeBuilder.d.ts +9 -0
- package/dist/src/components/TkxThemeBuilder.d.ts.map +1 -0
- package/dist/src/components/index.d.ts +1 -0
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/engine/index.d.ts +2 -0
- package/dist/src/engine/index.d.ts.map +1 -1
- package/dist/src/engine/quantum-ai.d.ts +201 -0
- package/dist/src/engine/quantum-ai.d.ts.map +1 -0
- package/dist/src/engine/tkx.d.ts.map +1 -1
- package/dist/src/headless/index.d.ts +6 -0
- package/dist/src/headless/index.d.ts.map +1 -1
- package/dist/src/headless/useInfiniteQuery.d.ts +35 -0
- package/dist/src/headless/useInfiniteQuery.d.ts.map +1 -0
- package/dist/src/headless/useSSE.d.ts +36 -0
- package/dist/src/headless/useSSE.d.ts.map +1 -0
- package/dist/src/headless/useWebSocket.d.ts +33 -0
- package/dist/src/headless/useWebSocket.d.ts.map +1 -0
- package/dist/src/quantum/index.d.ts +9 -0
- package/dist/src/quantum/index.d.ts.map +1 -0
- package/dist/src/realtime/index.d.ts +9 -0
- package/dist/src/realtime/index.d.ts.map +1 -0
- package/dist/{TkxForm-BWK4LqY3.js → tkx-BJ10JtMv.js} +372 -721
- package/dist/tkx-BeNyC0w7.cjs +4 -0
- package/package.json +16 -1
- package/src/charts/TkxDonutChart.tsx +15 -2
- package/src/charts/TkxPieChart.tsx +17 -2
- package/src/components/TkxDataGrid.tsx +72 -0
- package/src/components/TkxDropdown.tsx +802 -0
- package/src/components/TkxLiveFeed.tsx +329 -0
- package/src/components/TkxLiveLog.tsx +470 -0
- package/src/components/TkxLiveMetrics.tsx +291 -0
- package/src/components/TkxPlayground.tsx +736 -0
- package/src/components/TkxQuantumForm.tsx +592 -0
- package/src/components/TkxRealTimeChart.tsx +381 -0
- package/src/components/TkxTable.tsx +351 -77
- package/src/components/TkxThemeBuilder.tsx +685 -0
- package/src/components/index.ts +4 -0
- package/src/engine/index.ts +2 -0
- package/src/engine/quantum-ai.ts +1045 -0
- package/src/engine/tkx.ts +95 -4
- package/src/headless/index.ts +6 -0
- package/src/headless/useInfiniteQuery.ts +153 -0
- package/src/headless/useSSE.ts +165 -0
- package/src/headless/useWebSocket.ts +229 -0
- package/src/quantum/index.ts +39 -0
- package/src/realtime/index.ts +21 -0
- package/dist/TkxForm-ljQjX7KD.cjs +0 -15
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const a=require("./index-BINBzXuY.cjs"),g={"<":"<",">":">","&":"&","'":"'",'"':"""};function u(t){return String(t).replace(/[<>&'"]/g,n=>g[n]??n)}function p(t){const n={};for(const e of Object.keys(t))n[e]=f(t[e]);return n}function f(t){return typeof t=="string"?u(t):Array.isArray(t)?t.map(f):t!==null&&typeof t=="object"&&!$(t)?p(t):t}function $(t){return typeof t=="object"&&t!==null&&"$$typeof"in t}function h(t,n){const e=[];for(const[s,i]of Object.entries(n)){const o=t[s],c=o==null;if(i.required&&c){e.push(`prop '${s}' is required`);continue}if(!c){if(typeof o!==i.type){e.push(`prop '${s}' must be of type ${i.type}, got ${typeof o}`);continue}i.type==="number"&&typeof o=="number"&&(i.min!==void 0&&o<i.min&&e.push(`prop '${s}' must be >= ${i.min}`),i.max!==void 0&&o>i.max&&e.push(`prop '${s}' must be <= ${i.max}`)),i.type==="string"&&typeof o=="string"&&i.pattern&&!i.pattern.test(o)&&e.push(`prop '${s}' does not match pattern ${i.pattern}`),i.enum&&!i.enum.includes(o)&&e.push(`prop '${s}' must be one of: ${i.enum.join(", ")}`)}}return{valid:e.length===0,errors:e}}const l=new Map;function b(t,n){const e={"default-src":["'self'"],"style-src":n.allowInlineStyles?["'self'","'unsafe-inline'"]:["'self'"],"img-src":n.allowDataUrls?["'self'","data:"]:n.allowExternalSrc?["'self'","*"]:["'self'"],"script-src":n.allowScripts?["'self'"]:["'none'"]},s={componentId:t,permissions:n,directives:e};return l.set(t,s),s}function H(t,n){const e=l.get(t);return(e==null?void 0:e.permissions[n])===!0}let r=[];function y(t,n,e){const s=a.fnv1aHash(JSON.stringify(e??{})),i=r.length>0?r[r.length-1].chainHash:"00000000",o=a.fnv1aHash(i+s+n+t),c=Object.freeze({timestamp:Date.now(),component:n,action:t,propsHash:s,chainHash:o});return r=Object.freeze([...r,c]),c}function m(t){let n=r;return t!=null&&t.component&&(n=n.filter(e=>e.component===t.component)),t!=null&&t.action&&(n=n.filter(e=>e.action===t.action)),t!=null&&t.limit&&(n=n.slice(-t.limit)),n}function d(){let t="00000000";for(const n of r){if(a.fnv1aHash(t+n.propsHash+n.component+n.action)!==n.chainHash)return!1;t=n.chainHash}return!0}const S={sanitize:u,sanitizeProps:p,validateProps:h,createCSP:b,hasPermission:H,audit:y,getAuditLog:m,verifyAuditIntegrity:d};exports.Shield=S;exports.audit=y;exports.getAuditLog=m;exports.sanitizeProps=p;exports.sanitizeString=u;exports.validateProps=h;exports.verifyAuditIntegrity=d;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { n as a } from "./index-eT_U4qB2.js";
|
|
2
|
+
const m = {
|
|
3
|
+
"<": "<",
|
|
4
|
+
">": ">",
|
|
5
|
+
"&": "&",
|
|
6
|
+
"'": "'",
|
|
7
|
+
'"': """
|
|
8
|
+
};
|
|
9
|
+
function p(t) {
|
|
10
|
+
return String(t).replace(/[<>&'"]/g, (n) => m[n] ?? n);
|
|
11
|
+
}
|
|
12
|
+
function u(t) {
|
|
13
|
+
const n = {};
|
|
14
|
+
for (const e of Object.keys(t))
|
|
15
|
+
n[e] = f(t[e]);
|
|
16
|
+
return n;
|
|
17
|
+
}
|
|
18
|
+
function f(t) {
|
|
19
|
+
return typeof t == "string" ? p(t) : Array.isArray(t) ? t.map(f) : t !== null && typeof t == "object" && !l(t) ? u(t) : t;
|
|
20
|
+
}
|
|
21
|
+
function l(t) {
|
|
22
|
+
return typeof t == "object" && t !== null && "$$typeof" in t;
|
|
23
|
+
}
|
|
24
|
+
function y(t, n) {
|
|
25
|
+
const e = [];
|
|
26
|
+
for (const [o, s] of Object.entries(n)) {
|
|
27
|
+
const i = t[o], c = i == null;
|
|
28
|
+
if (s.required && c) {
|
|
29
|
+
e.push(`prop '${o}' is required`);
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
if (!c) {
|
|
33
|
+
if (typeof i !== s.type) {
|
|
34
|
+
e.push(`prop '${o}' must be of type ${s.type}, got ${typeof i}`);
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
s.type === "number" && typeof i == "number" && (s.min !== void 0 && i < s.min && e.push(`prop '${o}' must be >= ${s.min}`), s.max !== void 0 && i > s.max && e.push(`prop '${o}' must be <= ${s.max}`)), s.type === "string" && typeof i == "string" && s.pattern && !s.pattern.test(i) && e.push(`prop '${o}' does not match pattern ${s.pattern}`), s.enum && !s.enum.includes(i) && e.push(`prop '${o}' must be one of: ${s.enum.join(", ")}`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return { valid: e.length === 0, errors: e };
|
|
41
|
+
}
|
|
42
|
+
const h = /* @__PURE__ */ new Map();
|
|
43
|
+
function g(t, n) {
|
|
44
|
+
const e = {
|
|
45
|
+
"default-src": ["'self'"],
|
|
46
|
+
"style-src": n.allowInlineStyles ? ["'self'", "'unsafe-inline'"] : ["'self'"],
|
|
47
|
+
"img-src": n.allowDataUrls ? ["'self'", "data:"] : n.allowExternalSrc ? ["'self'", "*"] : ["'self'"],
|
|
48
|
+
"script-src": n.allowScripts ? ["'self'"] : ["'none'"]
|
|
49
|
+
}, o = { componentId: t, permissions: n, directives: e };
|
|
50
|
+
return h.set(t, o), o;
|
|
51
|
+
}
|
|
52
|
+
function d(t, n) {
|
|
53
|
+
const e = h.get(t);
|
|
54
|
+
return (e == null ? void 0 : e.permissions[n]) === !0;
|
|
55
|
+
}
|
|
56
|
+
let r = [];
|
|
57
|
+
function $(t, n, e) {
|
|
58
|
+
const o = a(JSON.stringify(e ?? {})), s = r.length > 0 ? r[r.length - 1].chainHash : "00000000", i = a(s + o + n + t), c = Object.freeze({
|
|
59
|
+
timestamp: Date.now(),
|
|
60
|
+
component: n,
|
|
61
|
+
action: t,
|
|
62
|
+
propsHash: o,
|
|
63
|
+
chainHash: i
|
|
64
|
+
});
|
|
65
|
+
return r = Object.freeze([...r, c]), c;
|
|
66
|
+
}
|
|
67
|
+
function b(t) {
|
|
68
|
+
let n = r;
|
|
69
|
+
return t != null && t.component && (n = n.filter((e) => e.component === t.component)), t != null && t.action && (n = n.filter((e) => e.action === t.action)), t != null && t.limit && (n = n.slice(-t.limit)), n;
|
|
70
|
+
}
|
|
71
|
+
function H() {
|
|
72
|
+
let t = "00000000";
|
|
73
|
+
for (const n of r) {
|
|
74
|
+
if (a(t + n.propsHash + n.component + n.action) !== n.chainHash) return !1;
|
|
75
|
+
t = n.chainHash;
|
|
76
|
+
}
|
|
77
|
+
return !0;
|
|
78
|
+
}
|
|
79
|
+
const j = {
|
|
80
|
+
sanitize: p,
|
|
81
|
+
sanitizeProps: u,
|
|
82
|
+
validateProps: y,
|
|
83
|
+
createCSP: g,
|
|
84
|
+
hasPermission: d,
|
|
85
|
+
audit: $,
|
|
86
|
+
getAuditLog: b,
|
|
87
|
+
verifyAuditIntegrity: H
|
|
88
|
+
};
|
|
89
|
+
export {
|
|
90
|
+
j as S,
|
|
91
|
+
$ as a,
|
|
92
|
+
u as b,
|
|
93
|
+
H as c,
|
|
94
|
+
b as g,
|
|
95
|
+
p as s,
|
|
96
|
+
y as v
|
|
97
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TkxDonutChart.d.ts","sourceRoot":"","sources":["../../../src/charts/TkxDonutChart.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TkxDonutChart.d.ts","sourceRoot":"","sources":["../../../src/charts/TkxDonutChart.tsx"],"names":[],"mappings":"AAYA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA4BD,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,MAAY,EACZ,UAAiB,EACjB,WAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAmB,EACnB,WAAmB,EACnB,UAAe,EACf,SAAyB,GAC1B,EAAE,kBAAkB,2CAqFpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TkxPieChart.d.ts","sourceRoot":"","sources":["../../../src/charts/TkxPieChart.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TkxPieChart.d.ts","sourceRoot":"","sources":["../../../src/charts/TkxPieChart.tsx"],"names":[],"mappings":"AAYA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,MAAY,EACZ,UAAiB,EACjB,WAAkB,EAClB,UAAkB,EAClB,WAAmB,EACnB,UAAe,EACf,SAAuB,GACxB,EAAE,gBAAgB,2CAwDlB"}
|
|
@@ -46,6 +46,14 @@ export interface TkxDataGridProps<T = any> {
|
|
|
46
46
|
showExport?: boolean;
|
|
47
47
|
/** File name for CSV export (without .csv extension). Default: "export". */
|
|
48
48
|
exportFileName?: string;
|
|
49
|
+
/** Called when the user scrolls near the bottom. Use to fetch more data. */
|
|
50
|
+
onLoadMore?: () => void | Promise<void>;
|
|
51
|
+
/** Whether more data is available to load. When false, sentinel is hidden. */
|
|
52
|
+
hasMore?: boolean;
|
|
53
|
+
/** Show a loading skeleton at the bottom while fetching more data. */
|
|
54
|
+
loadingMore?: boolean;
|
|
55
|
+
/** How many pixels from the bottom to trigger onLoadMore. Default: 200 */
|
|
56
|
+
loadMoreThreshold?: number;
|
|
49
57
|
}
|
|
50
|
-
export declare function TkxDataGrid<T = any>({ columns, data, rowKey, selectable, selectedRows, onSelectionChange, sortable, onSort, loading, emptyMessage, stickyHeader, striped, bordered, compact, maxHeight, onRowClick, virtualScroll, rowHeight, showFilters, filterValues: externalFilterValues, onFilterChange, pageSize, showExport, exportFileName, }: TkxDataGridProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
58
|
+
export declare function TkxDataGrid<T = any>({ columns, data, rowKey, selectable, selectedRows, onSelectionChange, sortable, onSort, loading, emptyMessage, stickyHeader, striped, bordered, compact, maxHeight, onRowClick, virtualScroll, rowHeight, showFilters, filterValues: externalFilterValues, onFilterChange, pageSize, showExport, exportFileName, onLoadMore, hasMore, loadingMore, loadMoreThreshold, }: TkxDataGridProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
51
59
|
//# sourceMappingURL=TkxDataGrid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TkxDataGrid.d.ts","sourceRoot":"","sources":["../../../src/components/TkxDataGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AASf,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,GAAG;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;IAC/C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACrD,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5C,qGAAqG;IACrG,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+GAA+G;IAC/G,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,qGAAqG;IACrG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,2CAA2C;IAC3C,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"TkxDataGrid.d.ts","sourceRoot":"","sources":["../../../src/components/TkxDataGrid.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export interface DropdownItem {
|
|
3
|
+
key: string;
|
|
4
|
+
label: string;
|
|
5
|
+
icon?: ReactNode;
|
|
6
|
+
description?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
danger?: boolean;
|
|
9
|
+
shortcut?: string;
|
|
10
|
+
divider?: boolean;
|
|
11
|
+
children?: DropdownItem[];
|
|
12
|
+
badge?: string | number;
|
|
13
|
+
}
|
|
14
|
+
export interface DropdownGroup {
|
|
15
|
+
label?: string;
|
|
16
|
+
items: DropdownItem[];
|
|
17
|
+
}
|
|
18
|
+
export type DropdownPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end' | 'right' | 'left';
|
|
19
|
+
export interface TkxDropdownProps {
|
|
20
|
+
trigger: ReactNode;
|
|
21
|
+
items?: DropdownItem[];
|
|
22
|
+
groups?: DropdownGroup[];
|
|
23
|
+
placement?: DropdownPlacement;
|
|
24
|
+
onSelect?: (key: string, item: DropdownItem) => void;
|
|
25
|
+
selectedKeys?: string[];
|
|
26
|
+
multiSelect?: boolean;
|
|
27
|
+
searchable?: boolean;
|
|
28
|
+
searchPlaceholder?: string;
|
|
29
|
+
closeOnSelect?: boolean;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
maxHeight?: number;
|
|
32
|
+
minWidth?: number;
|
|
33
|
+
open?: boolean;
|
|
34
|
+
onOpenChange?: (open: boolean) => void;
|
|
35
|
+
portal?: boolean;
|
|
36
|
+
offset?: number;
|
|
37
|
+
renderItem?: (item: DropdownItem, selected: boolean) => ReactNode;
|
|
38
|
+
}
|
|
39
|
+
export declare function TkxDropdown({ trigger, items, groups, placement, onSelect, selectedKeys: controlledSelectedKeys, multiSelect, searchable, searchPlaceholder, closeOnSelect, disabled, maxHeight, minWidth, open: controlledOpen, onOpenChange, portal, offset, renderItem, }: TkxDropdownProps): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
export default TkxDropdown;
|
|
41
|
+
//# sourceMappingURL=TkxDropdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TkxDropdown.d.ts","sourceRoot":"","sources":["../../../src/components/TkxDropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AAOf,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3G,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACrD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,KAAK,SAAS,CAAC;CACnE;AA+lBD,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,MAAM,EACN,SAA0B,EAC1B,QAAQ,EACR,YAAY,EAAE,sBAAsB,EACpC,WAAmB,EACnB,UAAkB,EAClB,iBAA6B,EAC7B,aAAa,EACb,QAAgB,EAChB,SAAe,EACf,QAAc,EACd,IAAI,EAAE,cAAc,EACpB,YAAY,EACZ,MAAa,EACb,MAAU,EACV,UAAU,GACX,EAAE,gBAAgB,2CAsHlB;AAED,eAAe,WAAW,CAAC"}
|