@dappworks/kit 0.4.63 → 0.4.64
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/{PromiseState-2a8c856c.d.ts → PromiseState-phP8daDG.d.ts} +2 -2
- package/dist/{chunk-CO3IV6BN.mjs → chunk-52OE5FHP.mjs} +9 -13
- package/dist/chunk-52OE5FHP.mjs.map +1 -0
- package/dist/{chunk-G55EHFDV.mjs → chunk-7FI42NGB.mjs} +5 -9
- package/dist/chunk-7FI42NGB.mjs.map +1 -0
- package/dist/chunk-7LQSAVH2.mjs +46 -0
- package/dist/chunk-7LQSAVH2.mjs.map +1 -0
- package/dist/{chunk-FOR424HO.mjs → chunk-AIZ7XDNV.mjs} +16 -19
- package/dist/chunk-AIZ7XDNV.mjs.map +1 -0
- package/dist/{chunk-5Z72MRKS.mjs → chunk-CDOZMM72.mjs} +9 -24
- package/dist/chunk-CDOZMM72.mjs.map +1 -0
- package/dist/{chunk-AJ6UVJXP.mjs → chunk-IKFUALQ2.mjs} +76 -98
- package/dist/chunk-IKFUALQ2.mjs.map +1 -0
- package/dist/chunk-J4DZJDMK.mjs +5 -5
- package/dist/chunk-J4DZJDMK.mjs.map +1 -1
- package/dist/{chunk-7UR5JQZB.mjs → chunk-O3TH7DXC.mjs} +10 -16
- package/dist/chunk-O3TH7DXC.mjs.map +1 -0
- package/dist/chunk-OCLML5CM.mjs +9 -0
- package/dist/chunk-OCLML5CM.mjs.map +1 -0
- package/dist/chunk-ONVPCAMQ.mjs +4 -4
- package/dist/chunk-ONVPCAMQ.mjs.map +1 -1
- package/dist/{chunk-74WDT7TZ.mjs → chunk-QO5RPRUY.mjs} +11 -24
- package/dist/chunk-QO5RPRUY.mjs.map +1 -0
- package/dist/{chunk-5E65QCNB.mjs → chunk-R4SQKVDQ.mjs} +3 -11
- package/dist/chunk-R4SQKVDQ.mjs.map +1 -0
- package/dist/{chunk-HRWHDF2F.mjs → chunk-XJMRAPHI.mjs} +13 -14
- package/dist/chunk-XJMRAPHI.mjs.map +1 -0
- package/dist/dev.d.mts +1 -1
- package/dist/dev.mjs +40 -66
- package/dist/dev.mjs.map +1 -1
- package/dist/experimental.d.mts +5 -3
- package/dist/experimental.mjs +17 -35
- package/dist/experimental.mjs.map +1 -1
- package/dist/form.d.mts +5 -5
- package/dist/form.mjs +94 -198
- package/dist/form.mjs.map +1 -1
- package/dist/index.d.mts +14 -9
- package/dist/index.mjs +27 -71
- package/dist/index.mjs.map +1 -1
- package/dist/inspector.d.mts +1 -1
- package/dist/inspector.mjs +6 -7
- package/dist/inspector.mjs.map +1 -1
- package/dist/jsontable.d.mts +2 -2
- package/dist/jsontable.mjs +10 -14
- package/dist/jsontable.mjs.map +1 -1
- package/dist/metrics.d.mts +1 -1
- package/dist/metrics.mjs +27 -64
- package/dist/metrics.mjs.map +1 -1
- package/dist/plugins.d.mts +2 -2
- package/dist/plugins.mjs +20 -46
- package/dist/plugins.mjs.map +1 -1
- package/dist/{root-766ae985.d.ts → root-C3lZnoCI.d.ts} +1 -1
- package/dist/ui.mjs +12 -23
- package/dist/ui.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-5E65QCNB.mjs.map +0 -1
- package/dist/chunk-5Z72MRKS.mjs.map +0 -1
- package/dist/chunk-74WDT7TZ.mjs.map +0 -1
- package/dist/chunk-7UR5JQZB.mjs.map +0 -1
- package/dist/chunk-AJ6UVJXP.mjs.map +0 -1
- package/dist/chunk-CO3IV6BN.mjs.map +0 -1
- package/dist/chunk-DUK5IHQE.mjs +0 -8453
- package/dist/chunk-DUK5IHQE.mjs.map +0 -1
- package/dist/chunk-FOR424HO.mjs.map +0 -1
- package/dist/chunk-G55EHFDV.mjs.map +0 -1
- package/dist/chunk-HRWHDF2F.mjs.map +0 -1
- package/dist/chunk-SXQEYWUP.mjs +0 -13
- package/dist/chunk-SXQEYWUP.mjs.map +0 -1
- /package/dist/{PaginationState-c19e621a.d.ts → PaginationState-Bmrrw0ky.d.ts} +0 -0
|
@@ -1,76 +1,56 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
} from
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
} from
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
} from
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
import {
|
|
14
|
-
cn
|
|
15
|
-
} from "./chunk-FOR424HO.mjs";
|
|
16
|
-
import {
|
|
17
|
-
__objRest,
|
|
18
|
-
__spreadValues
|
|
19
|
-
} from "./chunk-5E65QCNB.mjs";
|
|
1
|
+
import { PaginationState } from './chunk-ONVPCAMQ.mjs';
|
|
2
|
+
import { DialogStore } from './chunk-QO5RPRUY.mjs';
|
|
3
|
+
import { JSONHighlight } from './chunk-7FI42NGB.mjs';
|
|
4
|
+
import { _ } from './chunk-7LQSAVH2.mjs';
|
|
5
|
+
import { cn } from './chunk-AIZ7XDNV.mjs';
|
|
6
|
+
import { __objRest, __spreadValues } from './chunk-R4SQKVDQ.mjs';
|
|
7
|
+
import * as React2 from 'react';
|
|
8
|
+
import React2__default, { useEffect, useMemo, useState } from 'react';
|
|
9
|
+
import { observer, useLocalObservable } from 'mobx-react-lite';
|
|
10
|
+
import { Dropdown, DropdownTrigger, DropdownMenu, DropdownItem, Pagination, Card, Divider, Button } from '@nextui-org/react';
|
|
11
|
+
import { ChevronDown, ChevronUp, ChevronsUpDown, ChevronRight } from 'lucide-react';
|
|
12
|
+
import crypto from 'crypto';
|
|
20
13
|
|
|
21
|
-
|
|
22
|
-
import React2, { useEffect, useMemo, useState } from "react";
|
|
23
|
-
import { observer, useLocalObservable } from "mobx-react-lite";
|
|
24
|
-
|
|
25
|
-
// components/ui/table.tsx
|
|
26
|
-
import * as React from "react";
|
|
27
|
-
var Table = React.forwardRef((_a, ref) => {
|
|
14
|
+
var Table = React2.forwardRef((_a, ref) => {
|
|
28
15
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
29
|
-
return /* @__PURE__ */
|
|
16
|
+
return /* @__PURE__ */ React2.createElement("table", __spreadValues({ ref, className: cn("w-full caption-bottom text-sm", className) }, props));
|
|
30
17
|
});
|
|
31
18
|
Table.displayName = "Table";
|
|
32
|
-
var TableHeader =
|
|
19
|
+
var TableHeader = React2.forwardRef((_a, ref) => {
|
|
33
20
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
34
|
-
return /* @__PURE__ */
|
|
21
|
+
return /* @__PURE__ */ React2.createElement("thead", __spreadValues({ ref, className: cn("", className) }, props));
|
|
35
22
|
});
|
|
36
23
|
TableHeader.displayName = "TableHeader";
|
|
37
|
-
var TableBody =
|
|
24
|
+
var TableBody = React2.forwardRef((_a, ref) => {
|
|
38
25
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
39
|
-
return /* @__PURE__ */
|
|
26
|
+
return /* @__PURE__ */ React2.createElement("tbody", __spreadValues({ ref, className: cn("[&_tr:last-child]:border-0", className) }, props));
|
|
40
27
|
});
|
|
41
28
|
TableBody.displayName = "TableBody";
|
|
42
|
-
var TableFooter =
|
|
29
|
+
var TableFooter = React2.forwardRef((_a, ref) => {
|
|
43
30
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
44
|
-
return /* @__PURE__ */
|
|
31
|
+
return /* @__PURE__ */ React2.createElement("tfoot", __spreadValues({ ref, className: cn("bg-primary font-medium text-primary-foreground", className) }, props));
|
|
45
32
|
});
|
|
46
33
|
TableFooter.displayName = "TableFooter";
|
|
47
|
-
var TableRow =
|
|
34
|
+
var TableRow = React2.forwardRef((_a, ref) => {
|
|
48
35
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
49
|
-
return /* @__PURE__ */
|
|
36
|
+
return /* @__PURE__ */ React2.createElement("tr", __spreadValues({ ref, className: cn("", className) }, props));
|
|
50
37
|
});
|
|
51
38
|
TableRow.displayName = "TableRow";
|
|
52
|
-
var TableHead =
|
|
39
|
+
var TableHead = React2.forwardRef((_a, ref) => {
|
|
53
40
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
54
|
-
return /* @__PURE__ */
|
|
41
|
+
return /* @__PURE__ */ React2.createElement("th", __spreadValues({ ref, className: cn("h-8 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0", className) }, props));
|
|
55
42
|
});
|
|
56
43
|
TableHead.displayName = "TableHead";
|
|
57
|
-
var TableCell =
|
|
44
|
+
var TableCell = React2.forwardRef((_a, ref) => {
|
|
58
45
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
59
|
-
return /* @__PURE__ */
|
|
46
|
+
return /* @__PURE__ */ React2.createElement("td", __spreadValues({ ref, className: cn("p-2 align-middle [&:has([role=checkbox])]:pr-0", className) }, props));
|
|
60
47
|
});
|
|
61
48
|
TableCell.displayName = "TableCell";
|
|
62
|
-
var TableCaption =
|
|
49
|
+
var TableCaption = React2.forwardRef((_a, ref) => {
|
|
63
50
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
64
|
-
return /* @__PURE__ */
|
|
51
|
+
return /* @__PURE__ */ React2.createElement("caption", __spreadValues({ ref, className: cn("mt-4 text-sm text-muted-foreground", className) }, props));
|
|
65
52
|
});
|
|
66
53
|
TableCaption.displayName = "TableCaption";
|
|
67
|
-
|
|
68
|
-
// components/JSONTable/index.tsx
|
|
69
|
-
import { Button, Card, Divider, Dropdown, DropdownItem, DropdownMenu, DropdownTrigger, Pagination as NextuiPagination } from "@nextui-org/react";
|
|
70
|
-
import { ChevronDown, ChevronRight, ChevronUp, ChevronsUpDown } from "lucide-react";
|
|
71
|
-
|
|
72
|
-
// ../../node_modules/uuid/dist/esm-node/rng.js
|
|
73
|
-
import crypto from "crypto";
|
|
74
54
|
var rnds8Pool = new Uint8Array(256);
|
|
75
55
|
var poolPtr = rnds8Pool.length;
|
|
76
56
|
function rng() {
|
|
@@ -81,16 +61,16 @@ function rng() {
|
|
|
81
61
|
return rnds8Pool.slice(poolPtr, poolPtr += 16);
|
|
82
62
|
}
|
|
83
63
|
|
|
84
|
-
//
|
|
64
|
+
// node_modules/uuid/dist/esm-node/regex.js
|
|
85
65
|
var regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
86
66
|
|
|
87
|
-
//
|
|
67
|
+
// node_modules/uuid/dist/esm-node/validate.js
|
|
88
68
|
function validate(uuid) {
|
|
89
69
|
return typeof uuid === "string" && regex_default.test(uuid);
|
|
90
70
|
}
|
|
91
71
|
var validate_default = validate;
|
|
92
72
|
|
|
93
|
-
//
|
|
73
|
+
// node_modules/uuid/dist/esm-node/stringify.js
|
|
94
74
|
var byteToHex = [];
|
|
95
75
|
for (let i = 0; i < 256; ++i) {
|
|
96
76
|
byteToHex.push((i + 256).toString(16).substr(1));
|
|
@@ -104,7 +84,7 @@ function stringify(arr, offset = 0) {
|
|
|
104
84
|
}
|
|
105
85
|
var stringify_default = stringify;
|
|
106
86
|
|
|
107
|
-
//
|
|
87
|
+
// node_modules/uuid/dist/esm-node/v4.js
|
|
108
88
|
function v4(options, buf, offset) {
|
|
109
89
|
options = options || {};
|
|
110
90
|
const rnds = options.random || (options.rng || rng)();
|
|
@@ -202,10 +182,10 @@ var JSONTable = observer((props) => {
|
|
|
202
182
|
});
|
|
203
183
|
let sortedData = dataSource;
|
|
204
184
|
if (type !== "none") {
|
|
205
|
-
const result =
|
|
185
|
+
const result = _.orderBy(
|
|
206
186
|
dataSource,
|
|
207
187
|
(o) => {
|
|
208
|
-
const v =
|
|
188
|
+
const v = _.get(o, sortKey || key);
|
|
209
189
|
if (v == null) {
|
|
210
190
|
return type === "desc" ? "" : v;
|
|
211
191
|
}
|
|
@@ -235,7 +215,7 @@ var JSONTable = observer((props) => {
|
|
|
235
215
|
return autoScrollToTop ? `table-card-${v4_default().slice(0, 8)}` : void 0;
|
|
236
216
|
}, []);
|
|
237
217
|
if (asCard) {
|
|
238
|
-
return /* @__PURE__ */
|
|
218
|
+
return /* @__PURE__ */ React2__default.createElement(
|
|
239
219
|
CardOnMobile,
|
|
240
220
|
{
|
|
241
221
|
className: props.className,
|
|
@@ -251,17 +231,17 @@ var JSONTable = observer((props) => {
|
|
|
251
231
|
}
|
|
252
232
|
);
|
|
253
233
|
}
|
|
254
|
-
return /* @__PURE__ */
|
|
234
|
+
return /* @__PURE__ */ React2__default.createElement(React2__default.Fragment, null, /* @__PURE__ */ React2__default.createElement("div", { className: cn("relative w-full overflow-auto h-[400px]", props.className), id: tableBoxElementId }, /* @__PURE__ */ React2__default.createElement(Table, null, /* @__PURE__ */ React2__default.createElement(TableHeader, { className: "sticky top-0" }, /* @__PURE__ */ React2__default.createElement(TableRow, { className: "bg-[#F4F4F5] dark:bg-[#3F3F45] shadow-sm" }, needExtendedTable && /* @__PURE__ */ React2__default.createElement(TableHead, null), actionsPlacement === "left" && /* @__PURE__ */ React2__default.createElement(TableHead, { className: "font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300" }, actionsHeadLabel), columns.map((item, index) => {
|
|
255
235
|
var _a;
|
|
256
|
-
return /* @__PURE__ */
|
|
236
|
+
return /* @__PURE__ */ React2__default.createElement(TableHead, { className: cn("font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300", (_a = columnOptions == null ? void 0 : columnOptions[item.key]) == null ? void 0 : _a.thClassName), key: item.key }, /* @__PURE__ */ React2__default.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React2__default.createElement("div", { className: "text-xs" }, item.label), !!store.sortableColumns[item.key] && /* @__PURE__ */ React2__default.createElement(
|
|
257
237
|
Dropdown,
|
|
258
238
|
{
|
|
259
239
|
showArrow: true,
|
|
260
240
|
backdrop: "opaque",
|
|
261
241
|
placement: "bottom"
|
|
262
242
|
},
|
|
263
|
-
/* @__PURE__ */
|
|
264
|
-
/* @__PURE__ */
|
|
243
|
+
/* @__PURE__ */ React2__default.createElement(DropdownTrigger, null, /* @__PURE__ */ React2__default.createElement("div", { className: "cursor-pointer" }, store.sortableColumns[item.key] === "desc" && /* @__PURE__ */ React2__default.createElement(ChevronDown, { size: 14 }), store.sortableColumns[item.key] === "asc" && /* @__PURE__ */ React2__default.createElement(ChevronUp, { size: 14 }), store.sortableColumns[item.key] === "none" && /* @__PURE__ */ React2__default.createElement(ChevronsUpDown, { size: 14 }))),
|
|
244
|
+
/* @__PURE__ */ React2__default.createElement(DropdownMenu, { selectionMode: "single", selectedKeys: [store.sortableColumns[item.key]] }, /* @__PURE__ */ React2__default.createElement(
|
|
265
245
|
DropdownItem,
|
|
266
246
|
{
|
|
267
247
|
key: "asc",
|
|
@@ -274,8 +254,8 @@ var JSONTable = observer((props) => {
|
|
|
274
254
|
});
|
|
275
255
|
}
|
|
276
256
|
},
|
|
277
|
-
/* @__PURE__ */
|
|
278
|
-
), /* @__PURE__ */
|
|
257
|
+
/* @__PURE__ */ React2__default.createElement("span", { className: "text-sm font-bold" }, "Sort ascending")
|
|
258
|
+
), /* @__PURE__ */ React2__default.createElement(
|
|
279
259
|
DropdownItem,
|
|
280
260
|
{
|
|
281
261
|
key: "desc",
|
|
@@ -288,8 +268,8 @@ var JSONTable = observer((props) => {
|
|
|
288
268
|
});
|
|
289
269
|
}
|
|
290
270
|
},
|
|
291
|
-
/* @__PURE__ */
|
|
292
|
-
), /* @__PURE__ */
|
|
271
|
+
/* @__PURE__ */ React2__default.createElement("span", { className: "text-sm font-bold" }, "Sort descending")
|
|
272
|
+
), /* @__PURE__ */ React2__default.createElement(
|
|
293
273
|
DropdownItem,
|
|
294
274
|
{
|
|
295
275
|
key: "none",
|
|
@@ -302,11 +282,11 @@ var JSONTable = observer((props) => {
|
|
|
302
282
|
});
|
|
303
283
|
}
|
|
304
284
|
},
|
|
305
|
-
/* @__PURE__ */
|
|
285
|
+
/* @__PURE__ */ React2__default.createElement("span", { className: "text-sm font-bold" }, "Sort none")
|
|
306
286
|
))
|
|
307
287
|
)));
|
|
308
|
-
}), actionsPlacement === "right" && /* @__PURE__ */
|
|
309
|
-
(item, index) => needExtendedTable ? /* @__PURE__ */
|
|
288
|
+
}), actionsPlacement === "right" && /* @__PURE__ */ React2__default.createElement(TableHead, { className: "font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300" }, actionsHeadLabel))), /* @__PURE__ */ React2__default.createElement(TableBody, null, data.map(
|
|
289
|
+
(item, index) => needExtendedTable ? /* @__PURE__ */ React2__default.createElement(CollapseBody, { key: item[rowKey] || index, item, columns, extendedTables }) : /* @__PURE__ */ React2__default.createElement(
|
|
310
290
|
Body,
|
|
311
291
|
{
|
|
312
292
|
key: item[rowKey] || index,
|
|
@@ -319,8 +299,8 @@ var JSONTable = observer((props) => {
|
|
|
319
299
|
columnOptions
|
|
320
300
|
}
|
|
321
301
|
)
|
|
322
|
-
)))), pagination.total > pagination.limit && /* @__PURE__ */
|
|
323
|
-
|
|
302
|
+
)))), pagination.total > pagination.limit && /* @__PURE__ */ React2__default.createElement("div", { className: "flex justify-center h-[30px] mt-4" }, /* @__PURE__ */ React2__default.createElement(
|
|
303
|
+
Pagination,
|
|
324
304
|
{
|
|
325
305
|
showControls: true,
|
|
326
306
|
size: "sm",
|
|
@@ -338,7 +318,7 @@ var JSONTable = observer((props) => {
|
|
|
338
318
|
)));
|
|
339
319
|
});
|
|
340
320
|
function ActionButton({ props, children }) {
|
|
341
|
-
return /* @__PURE__ */
|
|
321
|
+
return /* @__PURE__ */ React2__default.createElement(Button, __spreadValues({}, props), children);
|
|
342
322
|
}
|
|
343
323
|
function renderFieldValue(v) {
|
|
344
324
|
if (typeof v == "string" || typeof v == "number") {
|
|
@@ -347,14 +327,14 @@ function renderFieldValue(v) {
|
|
|
347
327
|
if (v == null) {
|
|
348
328
|
return null;
|
|
349
329
|
}
|
|
350
|
-
return /* @__PURE__ */
|
|
330
|
+
return /* @__PURE__ */ React2__default.createElement(
|
|
351
331
|
"p",
|
|
352
332
|
{
|
|
353
333
|
className: "cursor-pointer",
|
|
354
334
|
onClick: (e) => {
|
|
355
335
|
e.stopPropagation();
|
|
356
336
|
DialogStore.show({
|
|
357
|
-
content: /* @__PURE__ */
|
|
337
|
+
content: /* @__PURE__ */ React2__default.createElement(JSONHighlight, { className: "w-full lg:w-[900px]", jsonStr: JSON.stringify(v, null, 2) })
|
|
358
338
|
});
|
|
359
339
|
}
|
|
360
340
|
},
|
|
@@ -368,14 +348,14 @@ function Actions({ actions, actionsOptions, item, asCard }) {
|
|
|
368
348
|
const Com = actions(item);
|
|
369
349
|
if (Array.isArray(Com)) {
|
|
370
350
|
if (asCard) {
|
|
371
|
-
return /* @__PURE__ */
|
|
351
|
+
return /* @__PURE__ */ React2__default.createElement("div", { className: cn("w-full flex items-center space-x-2", actionsOptions == null ? void 0 : actionsOptions.className) }, Com.map((btn, index) => /* @__PURE__ */ React2__default.createElement(ActionButton, { key: index, props: btn.props, children: btn.children })));
|
|
372
352
|
}
|
|
373
|
-
return /* @__PURE__ */
|
|
353
|
+
return /* @__PURE__ */ React2__default.createElement(TableCell, { className: "max-w-[200px] overflow-auto space-x-2" }, Com.map((btn, index) => /* @__PURE__ */ React2__default.createElement(ActionButton, { key: index, props: btn.props, children: btn.children })));
|
|
374
354
|
}
|
|
375
355
|
if (asCard) {
|
|
376
|
-
return /* @__PURE__ */
|
|
356
|
+
return /* @__PURE__ */ React2__default.createElement("div", { className: cn("w-full flex items-center space-x-2", actionsOptions == null ? void 0 : actionsOptions.className) }, Com);
|
|
377
357
|
}
|
|
378
|
-
return /* @__PURE__ */
|
|
358
|
+
return /* @__PURE__ */ React2__default.createElement(TableCell, { className: "max-w-[200px] overflow-auto space-x-2" }, Com);
|
|
379
359
|
}
|
|
380
360
|
function Body({
|
|
381
361
|
item,
|
|
@@ -386,7 +366,7 @@ function Body({
|
|
|
386
366
|
actions,
|
|
387
367
|
actionsPlacement
|
|
388
368
|
}) {
|
|
389
|
-
return /* @__PURE__ */
|
|
369
|
+
return /* @__PURE__ */ React2__default.createElement(
|
|
390
370
|
TableRow,
|
|
391
371
|
{
|
|
392
372
|
className: cn("text-[0.8125rem] hover:bg-[#f6f6f9] dark:hover:bg-[#19191c]", typeof rowCss === "function" ? rowCss(item) : rowCss),
|
|
@@ -394,17 +374,17 @@ function Body({
|
|
|
394
374
|
onRowClick == null ? void 0 : onRowClick(item);
|
|
395
375
|
}
|
|
396
376
|
},
|
|
397
|
-
actionsPlacement === "left" && /* @__PURE__ */
|
|
377
|
+
actionsPlacement === "left" && /* @__PURE__ */ React2__default.createElement(Actions, { item, actions }),
|
|
398
378
|
columns.map((column) => {
|
|
399
379
|
var _a;
|
|
400
|
-
return /* @__PURE__ */
|
|
380
|
+
return /* @__PURE__ */ React2__default.createElement(TableCell, { key: column.key, className: cn("max-w-[200px] overflow-auto", (_a = columnOptions == null ? void 0 : columnOptions[column.key]) == null ? void 0 : _a.tdClassName) }, column.render ? column.render(item) : renderFieldValue(item[column.key]));
|
|
401
381
|
}),
|
|
402
|
-
actionsPlacement === "right" && /* @__PURE__ */
|
|
382
|
+
actionsPlacement === "right" && /* @__PURE__ */ React2__default.createElement(Actions, { item, actions })
|
|
403
383
|
);
|
|
404
384
|
}
|
|
405
385
|
function CollapseBody({ item, columns, extendedTables }) {
|
|
406
386
|
const [isOpen, setIsOpen] = useState(false);
|
|
407
|
-
return /* @__PURE__ */
|
|
387
|
+
return /* @__PURE__ */ React2__default.createElement(React2__default.Fragment, null, /* @__PURE__ */ React2__default.createElement(
|
|
408
388
|
TableRow,
|
|
409
389
|
{
|
|
410
390
|
className: "text-[13px] cursor-pointer",
|
|
@@ -415,17 +395,17 @@ function CollapseBody({ item, columns, extendedTables }) {
|
|
|
415
395
|
}
|
|
416
396
|
}
|
|
417
397
|
},
|
|
418
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ React2__default.createElement(TableCell, { className: "w-10" }, isOpen ? /* @__PURE__ */ React2__default.createElement(ChevronDown, { size: 30 }) : /* @__PURE__ */ React2__default.createElement(ChevronRight, { size: 30 })),
|
|
419
399
|
columns.map((column) => {
|
|
420
|
-
return /* @__PURE__ */
|
|
400
|
+
return /* @__PURE__ */ React2__default.createElement(TableCell, { key: column.key, className: "max-w-[200px] overflow-auto" }, column.render ? column.render(item) : renderFieldValue(item[column.key]));
|
|
421
401
|
})
|
|
422
|
-
), /* @__PURE__ */
|
|
402
|
+
), /* @__PURE__ */ React2__default.createElement(TableRow, { className: cn(isOpen ? "table-row" : "hidden") }, /* @__PURE__ */ React2__default.createElement(TableCell, null), /* @__PURE__ */ React2__default.createElement(TableCell, { colSpan: columns.length }, extendedTables.map((ex) => {
|
|
423
403
|
const exColumns = ex.columns;
|
|
424
404
|
const exRow = item[ex.key];
|
|
425
|
-
return /* @__PURE__ */
|
|
426
|
-
return /* @__PURE__ */
|
|
427
|
-
}))), /* @__PURE__ */
|
|
428
|
-
return /* @__PURE__ */
|
|
405
|
+
return /* @__PURE__ */ React2__default.createElement(Table, { className: "mt-[10px]", key: ex.key }, /* @__PURE__ */ React2__default.createElement(TableHeader, null, /* @__PURE__ */ React2__default.createElement(TableRow, { className: "bg-[#F4F4F5] dark:bg-[#3F3F45]" }, exColumns.map((exC) => {
|
|
406
|
+
return /* @__PURE__ */ React2__default.createElement(TableHead, { key: exC.key, className: "font-bold text-sm dark:text-gray-300" }, exC.label);
|
|
407
|
+
}))), /* @__PURE__ */ React2__default.createElement(TableBody, null, exRow.map((exItem) => /* @__PURE__ */ React2__default.createElement(TableRow, { className: "text-sm", key: exItem.key }, exColumns.map((exC) => {
|
|
408
|
+
return /* @__PURE__ */ React2__default.createElement(TableCell, { key: exC.key, className: "max-w-[200px] overflow-auto" }, exC.render ? exC.render(exItem) : renderFieldValue(exItem[exC.key]));
|
|
429
409
|
})))));
|
|
430
410
|
}))));
|
|
431
411
|
}
|
|
@@ -456,8 +436,8 @@ function CardOnMobile({
|
|
|
456
436
|
onRowClick,
|
|
457
437
|
tableBoxElementId
|
|
458
438
|
}) {
|
|
459
|
-
return /* @__PURE__ */
|
|
460
|
-
return /* @__PURE__ */
|
|
439
|
+
return /* @__PURE__ */ React2__default.createElement("div", { className, id: tableBoxElementId }, /* @__PURE__ */ React2__default.createElement("div", { className: cn("space-y-2", cardOptions == null ? void 0 : cardOptions.boxClassName) }, data.map((item, index) => {
|
|
440
|
+
return /* @__PURE__ */ React2__default.createElement(
|
|
461
441
|
Card,
|
|
462
442
|
{
|
|
463
443
|
key: item[rowKey] || index,
|
|
@@ -469,12 +449,12 @@ function CardOnMobile({
|
|
|
469
449
|
},
|
|
470
450
|
columns.map((column, i) => {
|
|
471
451
|
const option = columnOptions == null ? void 0 : columnOptions[column.key];
|
|
472
|
-
return /* @__PURE__ */
|
|
452
|
+
return /* @__PURE__ */ React2__default.createElement("div", { className: "w-full", key: column.key }, /* @__PURE__ */ React2__default.createElement("div", { className: cn("w-full", cardOptions == null ? void 0 : cardOptions.itemClassName) }, /* @__PURE__ */ React2__default.createElement("div", { className: cn("font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300", option == null ? void 0 : option.labelClassName) }, column.label), /* @__PURE__ */ React2__default.createElement("div", { className: cn("text-[0.8125rem]", option == null ? void 0 : option.valueClassName) }, column.render ? column.render(item) : renderFieldValue(item[column.key]))), (cardOptions == null ? void 0 : cardOptions.showDivider) && i !== columns.length - 1 && /* @__PURE__ */ React2__default.createElement(Divider, { className: cn("my-2", cardOptions == null ? void 0 : cardOptions.dividerClassName) }));
|
|
473
453
|
}),
|
|
474
|
-
/* @__PURE__ */
|
|
454
|
+
/* @__PURE__ */ React2__default.createElement(Actions, { asCard: true, item, actions, actionsOptions })
|
|
475
455
|
);
|
|
476
|
-
})), pagination.total > pagination.limit && /* @__PURE__ */
|
|
477
|
-
|
|
456
|
+
})), pagination.total > pagination.limit && /* @__PURE__ */ React2__default.createElement("div", { className: "flex justify-center h-[30px] mt-4" }, /* @__PURE__ */ React2__default.createElement(
|
|
457
|
+
Pagination,
|
|
478
458
|
{
|
|
479
459
|
showControls: true,
|
|
480
460
|
size: "sm",
|
|
@@ -492,8 +472,6 @@ function CardOnMobile({
|
|
|
492
472
|
)));
|
|
493
473
|
}
|
|
494
474
|
|
|
495
|
-
export {
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
};
|
|
499
|
-
//# sourceMappingURL=chunk-AJ6UVJXP.mjs.map
|
|
475
|
+
export { JSONTable, JSONTable_default };
|
|
476
|
+
//# sourceMappingURL=out.js.map
|
|
477
|
+
//# sourceMappingURL=chunk-IKFUALQ2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/JSONTable/index.tsx","../components/ui/table.tsx","../node_modules/uuid/dist/esm-node/rng.js","../node_modules/uuid/dist/esm-node/regex.js","../node_modules/uuid/dist/esm-node/validate.js","../node_modules/uuid/dist/esm-node/stringify.js","../node_modules/uuid/dist/esm-node/v4.js"],"names":["React","data","columns","_a"],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React, { useEffect, useMemo, useState } from \"react\";\nimport { observer, useLocalObservable } from \"mobx-react-lite\";\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from \"../ui/table\";\nimport JSONHighlight from \"../Common/JSONHighlight\";\nimport { Button, ButtonProps, Card, Divider, Dropdown, DropdownItem, DropdownMenu, DropdownTrigger, Pagination as NextuiPagination } from '@nextui-org/react';\nimport { ChevronDown, ChevronRight, ChevronUp, ChevronsUpDown } from \"lucide-react\";\nimport { _ } from \"../../lib/lodash\";\nimport { DialogStore } from \"../../module/Dialog\";\nimport { cn } from \"../../lib/utils\";\nimport { PaginationState } from \"../../store/standard/PaginationState\";\nimport { v4 as uuid } from 'uuid';\n\nexport type ActionButtonType = {\n props?: ButtonProps;\n children: React.ReactNode;\n};\n\nexport type ActionsOptions = {\n headLabel?: string;\n placement?: 'left' | 'right';\n className?: string;\n};\n\nexport type ColumnOptions<T = { [x: string]: any }> = {\n [key in keyof T]?: {\n label?: React.ReactNode;\n hidden?: boolean;\n sortable?: boolean;\n sortKey?: string;\n order?: number;\n render?: (item: T) => any;\n thClassName?: string;\n tdClassName?: string;\n labelClassName?: string;\n valueClassName?: string;\n };\n};\n\nexport type Column<T = { [x: string]: any }> = {\n key: string;\n label: React.ReactNode;\n render?: (item: T) => any;\n};\n\nexport type ExtendedTable<U> = {\n key: string;\n columns: Column<U>[];\n};\n\nexport type ActionsType<T> = (item: T) => ActionButtonType[] | React.ReactNode;\n\nexport type CardOptions = {\n boxClassName?: string;\n cardClassName?: string;\n itemClassName?: string;\n showDivider?: boolean;\n dividerClassName?: string;\n};\n\nexport interface JSONTableProps<T = { [x: string]: any }> {\n className?: string;\n dataSource: T[];\n columnOptions?: ColumnOptions<T>;\n headerKeys?: string[];\n isServerPaging?: boolean;\n extendedTableOptions?: {\n key: string;\n columnOptions?: ColumnOptions<any>;\n // actions?: (item: any) => ActionButtonType[];\n }[];\n rowKey?: string;\n pagination?: PaginationState;\n onRowClick?: (item: T) => void;\n rowCss?: string | ((item: T) => string | undefined);\n actions?: ActionsType<T>;\n actionsOptions?: ActionsOptions;\n asCard?: boolean;\n cardOptions?: CardOptions;\n autoScrollToTop?: boolean;\n}\n\nconst JSONTable = observer(<T extends {},>(props: JSONTableProps<T>) => {\n const {\n dataSource,\n columnOptions,\n headerKeys,\n isServerPaging,\n pagination = new PaginationState({\n page: 1,\n limit: 8,\n }),\n extendedTableOptions = [],\n rowKey = 'id',\n onRowClick,\n rowCss,\n actions,\n actionsOptions,\n asCard = false,\n cardOptions = {\n boxClassName: '',\n cardClassName: '',\n itemClassName: '',\n showDivider: true,\n dividerClassName: '',\n },\n autoScrollToTop = false,\n } = props;\n\n const actionsHeadLabel = actionsOptions?.headLabel || '';\n const actionsPlacement = actions ? actionsOptions?.placement || 'right' : undefined;\n\n const store = useLocalObservable<{\n columns: Column<T>[],\n sortableColumns: { [k: string]: 'asc' | 'desc' | 'none' };\n sortedData: T[];\n extendedTables: ExtendedTable<any>[];\n setData: (data: Partial<typeof store>) => void;\n }>(() => ({\n columns: [],\n sortableColumns: {},\n sortedData: [],\n extendedTables: [],\n setData(data: Partial<typeof store>) {\n Object.assign(store, data);\n },\n }));\n\n useEffect(() => {\n const _keys = dataSource.length > 0 ? Object.keys(dataSource[0]) : [];\n const keys = headerKeys ? headerKeys : columnOptions ? _keys.filter((key) => !columnOptions[key]?.hidden) : _keys;\n const sortableColumns: { [k: string]: 'asc' | 'desc' | 'none' } = {};\n const columns: Column<T>[] = keys\n .map((key) => {\n const sortable = columnOptions?.[key]?.sortable;\n if (sortable) {\n sortableColumns[key] = 'none';\n }\n return {\n key,\n label: columnOptions?.[key]?.label || key,\n render: columnOptions?.[key]?.render,\n className: columnOptions?.[key]?.className,\n };\n })\n .sort((a, b) => {\n const aOrder = columnOptions?.[a.key]?.order || 0;\n const bOrder = columnOptions?.[b.key]?.order || 0;\n return bOrder - aOrder;\n });\n store.setData({\n sortableColumns,\n columns,\n sortedData: dataSource,\n });\n if (!isServerPaging) {\n pagination.setData({\n total: dataSource.length,\n });\n }\n }, [dataSource, columnOptions]);\n\n const onSort = ({ sortKey, key, type }: { sortKey: string; key: string; type: 'asc' | 'desc' | 'none' }) => {\n const sortableColumns: { [k: string]: 'asc' | 'desc' | 'none' } = {};\n Object.keys(store.sortableColumns).map((k) => {\n sortableColumns[k] = k === key ? type : 'none';\n });\n\n let sortedData = dataSource;\n if (type !== 'none') {\n const result = _.orderBy(\n dataSource,\n (o) => {\n const v = _.get(o, sortKey || key);\n if (v == null) {\n return type === 'desc' ? '' : v;\n }\n if (typeof v === 'string') {\n const _v = Number(v);\n if (isNaN(_v)) {\n return v.toLowerCase();\n } else {\n return _v;\n }\n }\n return v;\n },\n type,\n );\n sortedData = result;\n }\n\n store.setData({\n sortableColumns,\n sortedData,\n });\n };\n\n const { columns, extendedTables } = store;\n const needExtendedTable = !!extendedTables.length;\n const data = isServerPaging ? store.sortedData : store.sortedData.slice(pagination.offset, pagination.offset + pagination.limit);\n\n const tableBoxElementId = useMemo(() => {\n return autoScrollToTop ? `table-card-${uuid().slice(0, 8)}` : undefined;\n }, []);\n\n if (asCard) {\n return (\n <CardOnMobile\n className={props.className}\n data={data}\n columns={columns}\n columnOptions={columnOptions}\n actions={actions}\n actionsOptions={actionsOptions}\n cardOptions={cardOptions}\n pagination={pagination}\n onRowClick={onRowClick}\n tableBoxElementId={tableBoxElementId}\n />\n );\n }\n\n return (\n <>\n <div className={cn('relative w-full overflow-auto h-[400px]', props.className)} id={tableBoxElementId}>\n <Table>\n <TableHeader className=\"sticky top-0\">\n <TableRow className=\"bg-[#F4F4F5] dark:bg-[#3F3F45] shadow-sm\">\n {needExtendedTable && <TableHead></TableHead>}\n {actionsPlacement === 'left' && <TableHead className=\"font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300\">{actionsHeadLabel}</TableHead>}\n {columns.map((item, index) => (\n <TableHead className={cn('font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300', columnOptions?.[item.key]?.thClassName)} key={item.key}>\n <div className=\"flex items-center\">\n <div className=\"text-xs\">{item.label}</div>\n {!!store.sortableColumns[item.key] && (\n <Dropdown\n showArrow\n backdrop=\"opaque\"\n placement=\"bottom\"\n >\n <DropdownTrigger>\n <div className=\"cursor-pointer\">\n {store.sortableColumns[item.key] === 'desc' && <ChevronDown size={14} />}\n {store.sortableColumns[item.key] === 'asc' && <ChevronUp size={14} />}\n {store.sortableColumns[item.key] === 'none' && <ChevronsUpDown size={14} />}\n </div>\n </DropdownTrigger>\n <DropdownMenu selectionMode=\"single\" selectedKeys={[store.sortableColumns[item.key]]}>\n <DropdownItem\n key=\"asc\"\n onClick={() => {\n onSort({\n type: 'asc',\n key: item.key,\n sortKey: columnOptions?.[item.key]?.sortKey,\n });\n }}\n >\n <span className=\"text-sm font-bold\">Sort ascending</span>\n </DropdownItem>\n <DropdownItem\n key=\"desc\"\n onClick={() => {\n onSort({\n type: 'desc',\n key: item.key,\n sortKey: columnOptions?.[item.key]?.sortKey,\n });\n }}\n >\n <span className=\"text-sm font-bold\">Sort descending</span>\n </DropdownItem>\n <DropdownItem\n key=\"none\"\n onClick={() => {\n onSort({\n type: 'none',\n key: item.key,\n sortKey: columnOptions?.[item.key]?.sortKey,\n });\n }}\n >\n <span className=\"text-sm font-bold\">Sort none</span>\n </DropdownItem>\n </DropdownMenu>\n </Dropdown>\n )}\n </div>\n </TableHead>\n ))}\n {actionsPlacement === 'right' && <TableHead className=\"font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300\">{actionsHeadLabel}</TableHead>}\n </TableRow>\n </TableHeader>\n <TableBody>\n {data.map((item, index) =>\n needExtendedTable ? (\n <CollapseBody key={item[rowKey] || index} item={item} columns={columns} extendedTables={extendedTables} />\n ) : (\n <Body\n key={item[rowKey] || index}\n item={item}\n columns={columns}\n onRowClick={onRowClick}\n rowCss={rowCss}\n actions={actions}\n actionsPlacement={actionsPlacement}\n columnOptions={columnOptions}\n />\n ),\n )}\n </TableBody>\n </Table>\n </div>\n {pagination.total > pagination.limit && (\n <div className=\"flex justify-center h-[30px] mt-4\">\n <NextuiPagination\n showControls\n size=\"sm\"\n radius=\"sm\"\n total={Math.ceil(pagination.total / pagination.limit)}\n page={pagination.page}\n initialPage={1}\n onChange={(currentPage) => {\n pagination.setData({\n page: currentPage,\n });\n scrollIntoTop(tableBoxElementId);\n }}\n />\n </div>\n )}\n </>\n );\n});\n\nfunction ActionButton({ props, children }: ActionButtonType) {\n return <Button {...props}>{children}</Button>;\n}\n\nfunction renderFieldValue(v: any) {\n if (typeof v == 'string' || typeof v == 'number') {\n return v;\n }\n if (v == null) {\n return null;\n }\n return (\n <p\n className=\"cursor-pointer\"\n onClick={(e) => {\n e.stopPropagation();\n DialogStore.show({\n content: <JSONHighlight className=\"w-full lg:w-[900px]\" jsonStr={JSON.stringify(v, null, 2)} />,\n });\n }}\n >\n {JSON.stringify(v).slice(0, 50) + '...'}\n </p>\n );\n}\n\nfunction Actions<T>({ actions, actionsOptions, item, asCard }: { item: T; actions?: ActionsType<T>; actionsOptions?: ActionsOptions; asCard?: boolean }) {\n if (!actions) {\n return null;\n }\n\n const Com = actions(item);\n if (Array.isArray(Com)) {\n if (asCard) {\n return (\n <div className={cn('w-full flex items-center space-x-2', actionsOptions?.className)}>\n {Com.map((btn, index) => (\n <ActionButton key={index} props={btn.props} children={btn.children} />\n ))}\n </div>\n );\n }\n return (\n <TableCell className=\"max-w-[200px] overflow-auto space-x-2\">\n {Com.map((btn, index) => (\n <ActionButton key={index} props={btn.props} children={btn.children} />\n ))}\n </TableCell>\n );\n }\n\n if (asCard) {\n return <div className={cn('w-full flex items-center space-x-2', actionsOptions?.className)}>{Com}</div>;\n }\n return <TableCell className=\"max-w-[200px] overflow-auto space-x-2\">{Com}</TableCell>;\n}\n\nfunction Body<T>({\n item,\n columns,\n columnOptions,\n onRowClick,\n rowCss,\n actions,\n actionsPlacement,\n}: {\n item: T;\n columns: Column<T>[];\n columnOptions?: ColumnOptions<T>;\n onRowClick?: (item: T) => void;\n rowCss?: string | ((item: T) => string | undefined);\n actions?: ActionsType<T>;\n actionsPlacement?: 'left' | 'right';\n}) {\n return (\n <TableRow\n className={cn('text-[0.8125rem] hover:bg-[#f6f6f9] dark:hover:bg-[#19191c]', typeof rowCss === 'function' ? rowCss(item) : rowCss)}\n onClick={() => {\n onRowClick?.(item);\n }}\n >\n {actionsPlacement === 'left' && <Actions item={item} actions={actions} />}\n {columns.map((column) => {\n return (\n <TableCell key={column.key} className={cn('max-w-[200px] overflow-auto', columnOptions?.[column.key]?.tdClassName)}>\n {column.render\n ? column.render(item)\n : renderFieldValue(item[column.key])}\n </TableCell>\n );\n })}\n {actionsPlacement === 'right' && <Actions item={item} actions={actions} />}\n </TableRow>\n );\n}\n\nfunction CollapseBody<T>({ item, columns, extendedTables }: { item: T; columns: Column<T>[]; extendedTables: ExtendedTable<any>[] }) {\n const [isOpen, setIsOpen] = useState(false);\n return (\n <>\n <TableRow\n className=\"text-[13px] cursor-pointer\"\n onClick={(e: any) => {\n const { nodeName } = e.target;\n if (nodeName === 'TD' || nodeName === 'svg') {\n setIsOpen((v) => !v);\n }\n }}\n >\n <TableCell className=\"w-10\">{isOpen ? <ChevronDown size={30} /> : <ChevronRight size={30} />}</TableCell>\n {columns.map((column) => {\n return (\n <TableCell key={column.key} className=\"max-w-[200px] overflow-auto\">\n {column.render\n ? column.render(item)\n : renderFieldValue(item[column.key])}\n </TableCell>\n );\n })}\n </TableRow>\n <TableRow className={cn(isOpen ? 'table-row' : 'hidden')}>\n <TableCell></TableCell>\n <TableCell colSpan={columns.length}>\n {extendedTables.map((ex) => {\n const exColumns = ex.columns;\n const exRow = item[ex.key];\n return (\n <Table className=\"mt-[10px]\" key={ex.key}>\n <TableHeader>\n <TableRow className=\"bg-[#F4F4F5] dark:bg-[#3F3F45]\">\n {exColumns.map((exC) => {\n return (\n <TableHead key={exC.key} className=\"font-bold text-sm dark:text-gray-300\">\n {exC.label}\n </TableHead>\n );\n })}\n </TableRow>\n </TableHeader>\n <TableBody>\n {exRow.map((exItem) => (\n <TableRow className=\"text-sm\" key={exItem.key}>\n {exColumns.map((exC) => {\n return (\n <TableCell key={exC.key} className=\"max-w-[200px] overflow-auto\">\n {exC.render\n ? exC.render(exItem)\n : renderFieldValue(exItem[exC.key])}\n </TableCell>\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n );\n })}\n </TableCell>\n </TableRow>\n </>\n );\n}\n\nasync function scrollIntoTop(tableBoxElementId?: string) {\n await new Promise((resolve) => setTimeout(resolve, 500));\n if (tableBoxElementId) {\n const el = document.getElementById(tableBoxElementId);\n if (el) {\n const { top } = el.getBoundingClientRect();\n window.scrollTo({\n top: top + window.scrollY - 100,\n behavior: 'smooth',\n });\n }\n }\n}\n\nexport default JSONTable;\nexport { JSONTable }\n\nfunction CardOnMobile<T>({\n className,\n data,\n columns,\n columnOptions,\n rowKey,\n actions,\n actionsOptions,\n cardOptions,\n pagination,\n onRowClick,\n tableBoxElementId,\n}: {\n className?: string;\n data: T[];\n columns: Column<T>[];\n columnOptions?: ColumnOptions<T>;\n rowKey?: string;\n actions?: ActionsType<T>;\n actionsOptions?: ActionsOptions;\n cardOptions?: CardOptions;\n pagination: PaginationState;\n onRowClick?: (item: T) => void;\n tableBoxElementId?: string;\n}) {\n return (\n <div className={className} id={tableBoxElementId}>\n <div className={cn('space-y-2', cardOptions?.boxClassName)}>\n {data.map((item, index) => {\n return (\n <Card\n key={item[rowKey] || index}\n className={cn('w-full shadow-none p-4', cardOptions?.cardClassName)}\n isPressable={!!onRowClick}\n onPress={() => {\n onRowClick?.(item);\n }}\n >\n {columns.map((column, i) => {\n const option = columnOptions?.[column.key];\n return (\n <div className=\"w-full\" key={column.key}>\n <div className={cn('w-full', cardOptions?.itemClassName)}>\n <div className={cn('font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300', option?.labelClassName)}>{column.label}</div>\n <div className={cn('text-[0.8125rem]', option?.valueClassName)}>{column.render ? column.render(item) : renderFieldValue(item[column.key])}</div>\n </div>\n {cardOptions?.showDivider && i !== columns.length - 1 && <Divider className={cn('my-2', cardOptions?.dividerClassName)} />}\n </div>\n );\n })}\n <Actions asCard item={item} actions={actions} actionsOptions={actionsOptions} />\n </Card>\n );\n })}\n </div>\n {pagination.total > pagination.limit && (\n <div className=\"flex justify-center h-[30px] mt-4\">\n <NextuiPagination\n showControls\n size=\"sm\"\n radius=\"sm\"\n total={Math.ceil(pagination.total / pagination.limit)}\n page={pagination.page}\n initialPage={1}\n onChange={(currentPage) => {\n pagination.setData({\n page: currentPage,\n });\n scrollIntoTop(tableBoxElementId);\n }}\n />\n </div>\n )}\n </div>\n );\n}\n","import * as React from \"react\";\nimport { cn } from \"../../lib/utils\";\n\nconst Table = React.forwardRef<HTMLTableElement, React.HTMLAttributes<HTMLTableElement>>(({ className, ...props }, ref) => (\n <table ref={ref} className={cn('w-full caption-bottom text-sm', className)} {...props} />\n));\nTable.displayName = 'Table';\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, React.HTMLAttributes<HTMLTableSectionElement>>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn('', className)} {...props} />\n));\nTableHeader.displayName = 'TableHeader';\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, React.HTMLAttributes<HTMLTableSectionElement>>(({ className, ...props }, ref) => (\n <tbody ref={ref} className={cn('[&_tr:last-child]:border-0', className)} {...props} />\n));\nTableBody.displayName = 'TableBody';\n\nconst TableFooter = React.forwardRef<HTMLTableSectionElement, React.HTMLAttributes<HTMLTableSectionElement>>(({ className, ...props }, ref) => (\n <tfoot ref={ref} className={cn('bg-primary font-medium text-primary-foreground', className)} {...props} />\n));\nTableFooter.displayName = 'TableFooter';\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, React.HTMLAttributes<HTMLTableRowElement>>(({ className, ...props }, ref) => (\n <tr ref={ref} className={cn('', className)} {...props} />\n));\nTableRow.displayName = 'TableRow';\n\nconst TableHead = React.forwardRef<HTMLTableCellElement, React.ThHTMLAttributes<HTMLTableCellElement>>(({ className, ...props }, ref) => (\n <th ref={ref} className={cn('h-8 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0', className)} {...props} />\n));\nTableHead.displayName = 'TableHead';\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, React.TdHTMLAttributes<HTMLTableCellElement>>(({ className, ...props }, ref) => (\n <td ref={ref} className={cn('p-2 align-middle [&:has([role=checkbox])]:pr-0', className)} {...props} />\n));\nTableCell.displayName = 'TableCell';\n\nconst TableCaption = React.forwardRef<HTMLTableCaptionElement, React.HTMLAttributes<HTMLTableCaptionElement>>(({ className, ...props }, ref) => (\n <caption ref={ref} className={cn('mt-4 text-sm text-muted-foreground', className)} {...props} />\n));\nTableCaption.displayName = 'TableCaption';\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };\n","import crypto from 'crypto';\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\nexport default function rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n crypto.randomFillSync(rnds8Pool);\n poolPtr = 0;\n }\n\n return rnds8Pool.slice(poolPtr, poolPtr += 16);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;"]}
|
package/dist/chunk-J4DZJDMK.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import toast, { Toaster } from 'react-hot-toast';
|
|
3
|
+
|
|
1
4
|
// module/Toast/Toast.tsx
|
|
2
|
-
import React from "react";
|
|
3
|
-
import toast, { Toaster } from "react-hot-toast";
|
|
4
5
|
var ToastPlugin = class {
|
|
5
6
|
constructor() {
|
|
6
7
|
this.sid = "ToastPlugin";
|
|
@@ -15,7 +16,6 @@ var ToastPlugin = class {
|
|
|
15
16
|
}
|
|
16
17
|
};
|
|
17
18
|
|
|
18
|
-
export {
|
|
19
|
-
|
|
20
|
-
};
|
|
19
|
+
export { ToastPlugin };
|
|
20
|
+
//# sourceMappingURL=out.js.map
|
|
21
21
|
//# sourceMappingURL=chunk-J4DZJDMK.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../module/Toast/Toast.tsx"],"sourcesContent":["import React from \"react\";\nimport toast, { Toaster } from \"react-hot-toast\";\n\nimport { Store } from \"../../store/standard/base\";\n\nexport class ToastPlugin implements Store {\n sid = \"ToastPlugin\";\n provider = () => <Toaster />;\n\n success = toast.success;\n error = toast.error;\n loading = toast.loading;\n custom = toast.custom;\n dismiss = toast.dismiss;\n remove = toast.remove;\n promise = toast.promise;\n}\n"]
|
|
1
|
+
{"version":3,"sources":["../module/Toast/Toast.tsx"],"names":[],"mappings":";AAAA,OAAO,WAAW;AAClB,OAAO,SAAS,eAAe;AAIxB,IAAM,cAAN,MAAmC;AAAA,EAAnC;AACL,eAAM;AACN,oBAAW,MAAM,oCAAC,aAAQ;AAE1B,mBAAU,MAAM;AAChB,iBAAQ,MAAM;AACd,mBAAU,MAAM;AAChB,kBAAS,MAAM;AACf,mBAAU,MAAM;AAChB,kBAAS,MAAM;AACf,mBAAU,MAAM;AAAA;AAClB","sourcesContent":["import React from \"react\";\nimport toast, { Toaster } from \"react-hot-toast\";\n\nimport { Store } from \"../../store/standard/base\";\n\nexport class ToastPlugin implements Store {\n sid = \"ToastPlugin\";\n provider = () => <Toaster />;\n\n success = toast.success;\n error = toast.error;\n loading = toast.loading;\n custom = toast.custom;\n dismiss = toast.dismiss;\n remove = toast.remove;\n promise = toast.promise;\n}\n"]}
|
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
} from
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
} from
|
|
1
|
+
import { _ } from './chunk-7LQSAVH2.mjs';
|
|
2
|
+
import { cn } from './chunk-AIZ7XDNV.mjs';
|
|
3
|
+
import React, { useRef } from 'react';
|
|
4
|
+
import MonacoEditor from '@monaco-editor/react';
|
|
5
|
+
import * as jsonpatch from 'fast-json-patch';
|
|
6
|
+
import { Button } from '@nextui-org/react';
|
|
7
7
|
|
|
8
|
-
// components/JSONEditor/index.tsx
|
|
9
|
-
import React, { useRef } from "react";
|
|
10
|
-
import MonacoEditor from "@monaco-editor/react";
|
|
11
|
-
import * as jsonpatch from "fast-json-patch";
|
|
12
|
-
import { Button } from "@nextui-org/react";
|
|
13
8
|
var JSONEditor = ({ className, height = "100%", initialJson, onChange, onSubmit }) => {
|
|
14
9
|
const valueRef = useRef(initialJson);
|
|
15
10
|
const changeValueRef = useRef(
|
|
16
|
-
|
|
11
|
+
_.debounce((initialJson2, currentJson) => {
|
|
17
12
|
if (onChange) {
|
|
18
13
|
try {
|
|
19
14
|
const tree1 = JSON.parse(initialJson2);
|
|
@@ -90,7 +85,6 @@ var JSONEditor = ({ className, height = "100%", initialJson, onChange, onSubmit
|
|
|
90
85
|
));
|
|
91
86
|
};
|
|
92
87
|
|
|
93
|
-
export {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
//# sourceMappingURL=chunk-7UR5JQZB.mjs.map
|
|
88
|
+
export { JSONEditor };
|
|
89
|
+
//# sourceMappingURL=out.js.map
|
|
90
|
+
//# sourceMappingURL=chunk-O3TH7DXC.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../components/JSONEditor/index.tsx"],"names":["initialJson","diff","result"],"mappings":";;;;;;;;AAEA,OAAO,SAAS,cAAc;AAC9B,OAAO,kBAAkB;AAEzB,YAAY,eAAe;AAE3B,SAAS,cAAc;AAIhB,IAAM,aAAa,CAAC,EAAE,WAAW,SAAS,QAAQ,aAAa,UAAU,SAAS,MAA+K;AACtQ,QAAM,WAAW,OAAe,WAAW;AAC3C,QAAM,iBAAiB;AAAA,IACrB,EAAE,SAAS,CAACA,cAAqB,gBAAwB;AACvD,UAAI,UAAU;AACZ,YAAI;AACF,gBAAM,QAAQ,KAAK,MAAMA,YAAW;AACpC,gBAAM,QAAQ,KAAK,MAAM,WAAW;AACpC,gBAAM,OAAiB,kBAAQ,OAAO,KAAK;AAE3C,gBAAM,YAAY,CAACC,UAAS;AAC1B,kBAAMC,UAAS,CAAC;AAChB,uBAAW,UAAUD,OAAM;AACzB,oBAAM,EAAE,IAAI,MAAM,MAAM,IAAI;AAE5B,oBAAM,OAAO,KAAK,MAAM,GAAG,EAAE,OAAO,CAAC,QAAQ,QAAQ,EAAE;AACvD,kBAAI,UAAUC;AACd,uBAAS,IAAI,GAAG,IAAI,KAAK,SAAS,GAAG,KAAK;AACxC,sBAAM,MAAM,KAAK,CAAC;AAElB,oBAAI,CAAC,QAAQ,GAAG,GAAG;AAEjB,0BAAQ,GAAG,IAAI,CAAC;AAAA,gBAClB;AAEA,0BAAU,QAAQ,GAAG;AAAA,cACvB;AACA,kBAAI,UAAU,KAAK,KAAK,SAAS,CAAC;AAClC,wBAAU,QAAQ,QAAQ,MAAM,GAAG;AACnC,kBAAI,OAAO,WAAW;AAEpB,wBAAQ,OAAO,IAAI;AAAA,cACrB;AACA,kBAAI,OAAO,OAAO;AAEhB,wBAAQ,OAAO,IAAI;AAAA,cACrB;AAAA,YACF;AACA,mBAAOA;AAAA,UACT;AACA,gBAAM,SAAS,UAAU,IAAI;AAC7B,cAAI,OAAO,KAAK,MAAM,EAAE,SAAS,GAAG;AAClC,qBAAS,MAAM;AAAA,UACjB;AAAA,QACF,SAAS,OAAO;AACd,kBAAQ,MAAM,KAAK;AAAA,QACrB;AAAA,MACF;AAAA,IACF,GAAG,GAAI;AAAA,EACT;AAEA,SACE,oCAAC,SAAI,WAAW,GAAG,mBAAmB,SAAS,KAC7C;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,QACP,SAAS;AAAA,UACP,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA;AAAA,MACA,OAAM;AAAA,MACN,UAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU,CAAC,MAAM;AA1EzB;AA2EU,6BAAe,YAAf,wCAAyB,aAAa;AAEtC,iBAAS,UAAU;AAAA,MACrB;AAAA;AAAA,EACF,GACC,YACC;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,OAAM;AAAA,MACN,MAAK;AAAA,MACL,SAAS,MAAM;AACb,YAAI;AACF,gBAAM,OAAO,KAAK,MAAM,SAAS,OAAO;AACxC,mBAAS,IAAI;AAAA,QACf,SAAS,OAAO;AACd,kBAAQ,MAAM,KAAK;AAAA,QACrB;AAAA,MACF;AAAA;AAAA,IAAG;AAAA,EAEL,CAEJ;AAEJ","sourcesContent":["\"use client\";\n\nimport React, { useRef } from \"react\";\nimport MonacoEditor from \"@monaco-editor/react\";\nimport { _ } from \"../../lib/lodash\";\nimport * as jsonpatch from \"fast-json-patch\";\nimport { cn } from \"../../lib/utils\";\nimport { Button } from '@nextui-org/react';\n\n\n\nexport const JSONEditor = ({ className, height = \"100%\", initialJson, onChange, onSubmit }: { className?: string; height?: string | number; initialJson: string; onChange?: (value: Record<string, any>) => void; onSubmit?: (value: Record<string, any>) => void }) => {\n const valueRef = useRef<string>(initialJson);\n const changeValueRef = useRef(\n _.debounce((initialJson: string, currentJson: string) => {\n if (onChange) {\n try {\n const tree1 = JSON.parse(initialJson);\n const tree2 = JSON.parse(currentJson);\n const diff = jsonpatch.compare(tree1, tree2);\n // @ts-ignore\n const applyDiff = (diff) => {\n const result = {};\n for (const change of diff) {\n const { op, path, value } = change;\n // @ts-ignore\n const keys = path.split(\"/\").filter((key) => key !== \"\");\n let current = result;\n for (let i = 0; i < keys.length - 1; i++) {\n const key = keys[i];\n // @ts-ignore\n if (!current[key]) {\n // @ts-ignore\n current[key] = {};\n }\n // @ts-ignore\n current = current[key];\n }\n let lastKey = keys[keys.length - 1];\n lastKey = lastKey.replace('~1', '/');\n if (op === \"replace\") {\n // @ts-ignore\n current[lastKey] = value;\n }\n if (op === \"add\") {\n // @ts-ignore\n current[lastKey] = value;\n }\n }\n return result;\n };\n const result = applyDiff(diff);\n if (Object.keys(result).length > 0) {\n onChange(result);\n }\n } catch (error) {\n console.error(error);\n }\n }\n }, 1000)\n );\n\n return (\n <div className={cn(\"relative w-full\", className)}>\n <MonacoEditor\n options={{\n minimap: {\n enabled: false,\n },\n }}\n height={height}\n theme=\"vs-dark\"\n language=\"json\"\n value={initialJson}\n onChange={(v) => {\n changeValueRef.current?.(initialJson, v);\n // @ts-ignore\n valueRef.current = v;\n }}\n />\n {onSubmit && (\n <Button\n className=\"z-50 absolute bottom-[50px] right-[20px]\"\n color='primary'\n size='sm'\n onClick={() => {\n try {\n const json = JSON.parse(valueRef.current);\n onSubmit(json);\n } catch (error) {\n console.error(error);\n }\n }}>\n Submit\n </Button>\n )}\n </div>\n );\n};\n\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { RootStore } from './chunk-XJMRAPHI.mjs';
|
|
2
|
+
|
|
3
|
+
// store/index.ts
|
|
4
|
+
var rootStore = RootStore.init();
|
|
5
|
+
var useStore = () => RootStore.init();
|
|
6
|
+
|
|
7
|
+
export { rootStore, useStore };
|
|
8
|
+
//# sourceMappingURL=out.js.map
|
|
9
|
+
//# sourceMappingURL=chunk-OCLML5CM.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../store/index.ts"],"names":[],"mappings":";;;;;AAMO,IAAM,YAAY,UAAU,KAAsB;AAClD,IAAM,WAAW,MAAM,UAAU,KAAK","sourcesContent":["import { RootStore, EventMap } from \"./root\";\n\nexport type DefaultEventMap = {\n \"next.signIn.github\": () => void;\n} & EventMap;\n\nexport const rootStore = RootStore.init<DefaultEventMap>();\nexport const useStore = () => RootStore.init();\nexport { RootStore };\n"]}
|
package/dist/chunk-ONVPCAMQ.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { makeAutoObservable } from 'mobx';
|
|
2
|
+
|
|
1
3
|
// store/standard/PaginationState.ts
|
|
2
|
-
import { makeAutoObservable } from "mobx";
|
|
3
4
|
var PaginationState = class {
|
|
4
5
|
constructor(args) {
|
|
5
6
|
this.page = 1;
|
|
@@ -21,7 +22,6 @@ var PaginationState = class {
|
|
|
21
22
|
}
|
|
22
23
|
};
|
|
23
24
|
|
|
24
|
-
export {
|
|
25
|
-
|
|
26
|
-
};
|
|
25
|
+
export { PaginationState };
|
|
26
|
+
//# sourceMappingURL=out.js.map
|
|
27
27
|
//# sourceMappingURL=chunk-ONVPCAMQ.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../store/standard/PaginationState.ts"],"sourcesContent":["import { makeAutoObservable } from 'mobx';\n\ntype ArgsType = { page: number; limit: number; total: number; onPageChange: (page: number) => void };\n\nexport class PaginationState {\n page = 1;\n limit = 10;\n total = 0;\n\n constructor(args: Partial<ArgsType>) {\n Object.assign(this, args);\n makeAutoObservable(this);\n }\n\n get offset() {\n return (this.page - 1) * this.limit;\n }\n\n onPageChange(page: number) {}\n\n setData(v: Partial<ArgsType>) {\n Object.assign(this, v);\n if (v.page) {\n this.onPageChange(v.page);\n }\n }\n}\n"]
|
|
1
|
+
{"version":3,"sources":["../store/standard/PaginationState.ts"],"names":[],"mappings":";AAAA,SAAS,0BAA0B;AAI5B,IAAM,kBAAN,MAAsB;AAAA,EAK3B,YAAY,MAAyB;AAJrC,gBAAO;AACP,iBAAQ;AACR,iBAAQ;AAGN,WAAO,OAAO,MAAM,IAAI;AACxB,uBAAmB,IAAI;AAAA,EACzB;AAAA,EAEA,IAAI,SAAS;AACX,YAAQ,KAAK,OAAO,KAAK,KAAK;AAAA,EAChC;AAAA,EAEA,aAAa,MAAc;AAAA,EAAC;AAAA,EAE5B,QAAQ,GAAsB;AAC5B,WAAO,OAAO,MAAM,CAAC;AACrB,QAAI,EAAE,MAAM;AACV,WAAK,aAAa,EAAE,IAAI;AAAA,IAC1B;AAAA,EACF;AACF","sourcesContent":["import { makeAutoObservable } from 'mobx';\n\ntype ArgsType = { page: number; limit: number; total: number; onPageChange: (page: number) => void };\n\nexport class PaginationState {\n page = 1;\n limit = 10;\n total = 0;\n\n constructor(args: Partial<ArgsType>) {\n Object.assign(this, args);\n makeAutoObservable(this);\n }\n\n get offset() {\n return (this.page - 1) * this.limit;\n }\n\n onPageChange(page: number) {}\n\n setData(v: Partial<ArgsType>) {\n Object.assign(this, v);\n if (v.page) {\n this.onPageChange(v.page);\n }\n }\n}\n"]}
|