@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.
Files changed (69) hide show
  1. package/dist/{PromiseState-2a8c856c.d.ts → PromiseState-phP8daDG.d.ts} +2 -2
  2. package/dist/{chunk-CO3IV6BN.mjs → chunk-52OE5FHP.mjs} +9 -13
  3. package/dist/chunk-52OE5FHP.mjs.map +1 -0
  4. package/dist/{chunk-G55EHFDV.mjs → chunk-7FI42NGB.mjs} +5 -9
  5. package/dist/chunk-7FI42NGB.mjs.map +1 -0
  6. package/dist/chunk-7LQSAVH2.mjs +46 -0
  7. package/dist/chunk-7LQSAVH2.mjs.map +1 -0
  8. package/dist/{chunk-FOR424HO.mjs → chunk-AIZ7XDNV.mjs} +16 -19
  9. package/dist/chunk-AIZ7XDNV.mjs.map +1 -0
  10. package/dist/{chunk-5Z72MRKS.mjs → chunk-CDOZMM72.mjs} +9 -24
  11. package/dist/chunk-CDOZMM72.mjs.map +1 -0
  12. package/dist/{chunk-AJ6UVJXP.mjs → chunk-IKFUALQ2.mjs} +76 -98
  13. package/dist/chunk-IKFUALQ2.mjs.map +1 -0
  14. package/dist/chunk-J4DZJDMK.mjs +5 -5
  15. package/dist/chunk-J4DZJDMK.mjs.map +1 -1
  16. package/dist/{chunk-7UR5JQZB.mjs → chunk-O3TH7DXC.mjs} +10 -16
  17. package/dist/chunk-O3TH7DXC.mjs.map +1 -0
  18. package/dist/chunk-OCLML5CM.mjs +9 -0
  19. package/dist/chunk-OCLML5CM.mjs.map +1 -0
  20. package/dist/chunk-ONVPCAMQ.mjs +4 -4
  21. package/dist/chunk-ONVPCAMQ.mjs.map +1 -1
  22. package/dist/{chunk-74WDT7TZ.mjs → chunk-QO5RPRUY.mjs} +11 -24
  23. package/dist/chunk-QO5RPRUY.mjs.map +1 -0
  24. package/dist/{chunk-5E65QCNB.mjs → chunk-R4SQKVDQ.mjs} +3 -11
  25. package/dist/chunk-R4SQKVDQ.mjs.map +1 -0
  26. package/dist/{chunk-HRWHDF2F.mjs → chunk-XJMRAPHI.mjs} +13 -14
  27. package/dist/chunk-XJMRAPHI.mjs.map +1 -0
  28. package/dist/dev.d.mts +1 -1
  29. package/dist/dev.mjs +40 -66
  30. package/dist/dev.mjs.map +1 -1
  31. package/dist/experimental.d.mts +5 -3
  32. package/dist/experimental.mjs +17 -35
  33. package/dist/experimental.mjs.map +1 -1
  34. package/dist/form.d.mts +5 -5
  35. package/dist/form.mjs +94 -198
  36. package/dist/form.mjs.map +1 -1
  37. package/dist/index.d.mts +14 -9
  38. package/dist/index.mjs +27 -71
  39. package/dist/index.mjs.map +1 -1
  40. package/dist/inspector.d.mts +1 -1
  41. package/dist/inspector.mjs +6 -7
  42. package/dist/inspector.mjs.map +1 -1
  43. package/dist/jsontable.d.mts +2 -2
  44. package/dist/jsontable.mjs +10 -14
  45. package/dist/jsontable.mjs.map +1 -1
  46. package/dist/metrics.d.mts +1 -1
  47. package/dist/metrics.mjs +27 -64
  48. package/dist/metrics.mjs.map +1 -1
  49. package/dist/plugins.d.mts +2 -2
  50. package/dist/plugins.mjs +20 -46
  51. package/dist/plugins.mjs.map +1 -1
  52. package/dist/{root-766ae985.d.ts → root-C3lZnoCI.d.ts} +1 -1
  53. package/dist/ui.mjs +12 -23
  54. package/dist/ui.mjs.map +1 -1
  55. package/package.json +1 -1
  56. package/dist/chunk-5E65QCNB.mjs.map +0 -1
  57. package/dist/chunk-5Z72MRKS.mjs.map +0 -1
  58. package/dist/chunk-74WDT7TZ.mjs.map +0 -1
  59. package/dist/chunk-7UR5JQZB.mjs.map +0 -1
  60. package/dist/chunk-AJ6UVJXP.mjs.map +0 -1
  61. package/dist/chunk-CO3IV6BN.mjs.map +0 -1
  62. package/dist/chunk-DUK5IHQE.mjs +0 -8453
  63. package/dist/chunk-DUK5IHQE.mjs.map +0 -1
  64. package/dist/chunk-FOR424HO.mjs.map +0 -1
  65. package/dist/chunk-G55EHFDV.mjs.map +0 -1
  66. package/dist/chunk-HRWHDF2F.mjs.map +0 -1
  67. package/dist/chunk-SXQEYWUP.mjs +0 -13
  68. package/dist/chunk-SXQEYWUP.mjs.map +0 -1
  69. /package/dist/{PaginationState-c19e621a.d.ts → PaginationState-Bmrrw0ky.d.ts} +0 -0
@@ -1,76 +1,56 @@
1
- import {
2
- PaginationState
3
- } from "./chunk-ONVPCAMQ.mjs";
4
- import {
5
- DialogStore
6
- } from "./chunk-74WDT7TZ.mjs";
7
- import {
8
- JSONHighlight
9
- } from "./chunk-G55EHFDV.mjs";
10
- import {
11
- lodash_exports
12
- } from "./chunk-DUK5IHQE.mjs";
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
- // components/JSONTable/index.tsx
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__ */ React.createElement("table", __spreadValues({ ref, className: cn("w-full caption-bottom text-sm", className) }, props));
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 = React.forwardRef((_a, ref) => {
19
+ var TableHeader = React2.forwardRef((_a, ref) => {
33
20
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
34
- return /* @__PURE__ */ React.createElement("thead", __spreadValues({ ref, className: cn("", className) }, props));
21
+ return /* @__PURE__ */ React2.createElement("thead", __spreadValues({ ref, className: cn("", className) }, props));
35
22
  });
36
23
  TableHeader.displayName = "TableHeader";
37
- var TableBody = React.forwardRef((_a, ref) => {
24
+ var TableBody = React2.forwardRef((_a, ref) => {
38
25
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
39
- return /* @__PURE__ */ React.createElement("tbody", __spreadValues({ ref, className: cn("[&_tr:last-child]:border-0", className) }, props));
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 = React.forwardRef((_a, ref) => {
29
+ var TableFooter = React2.forwardRef((_a, ref) => {
43
30
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
44
- return /* @__PURE__ */ React.createElement("tfoot", __spreadValues({ ref, className: cn("bg-primary font-medium text-primary-foreground", className) }, props));
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 = React.forwardRef((_a, ref) => {
34
+ var TableRow = React2.forwardRef((_a, ref) => {
48
35
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
49
- return /* @__PURE__ */ React.createElement("tr", __spreadValues({ ref, className: cn("", className) }, props));
36
+ return /* @__PURE__ */ React2.createElement("tr", __spreadValues({ ref, className: cn("", className) }, props));
50
37
  });
51
38
  TableRow.displayName = "TableRow";
52
- var TableHead = React.forwardRef((_a, ref) => {
39
+ var TableHead = React2.forwardRef((_a, ref) => {
53
40
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
54
- return /* @__PURE__ */ React.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));
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 = React.forwardRef((_a, ref) => {
44
+ var TableCell = React2.forwardRef((_a, ref) => {
58
45
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
59
- return /* @__PURE__ */ React.createElement("td", __spreadValues({ ref, className: cn("p-2 align-middle [&:has([role=checkbox])]:pr-0", className) }, props));
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 = React.forwardRef((_a, ref) => {
49
+ var TableCaption = React2.forwardRef((_a, ref) => {
63
50
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
64
- return /* @__PURE__ */ React.createElement("caption", __spreadValues({ ref, className: cn("mt-4 text-sm text-muted-foreground", className) }, props));
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
- // ../../node_modules/uuid/dist/esm-node/regex.js
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
- // ../../node_modules/uuid/dist/esm-node/validate.js
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
- // ../../node_modules/uuid/dist/esm-node/stringify.js
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
- // ../../node_modules/uuid/dist/esm-node/v4.js
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 = lodash_exports.orderBy(
185
+ const result = _.orderBy(
206
186
  dataSource,
207
187
  (o) => {
208
- const v = lodash_exports.get(o, sortKey || key);
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__ */ React2.createElement(
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__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement("div", { className: cn("relative w-full overflow-auto h-[400px]", props.className), id: tableBoxElementId }, /* @__PURE__ */ React2.createElement(Table, null, /* @__PURE__ */ React2.createElement(TableHeader, { className: "sticky top-0" }, /* @__PURE__ */ React2.createElement(TableRow, { className: "bg-[#F4F4F5] dark:bg-[#3F3F45] shadow-sm" }, needExtendedTable && /* @__PURE__ */ React2.createElement(TableHead, null), actionsPlacement === "left" && /* @__PURE__ */ React2.createElement(TableHead, { className: "font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300" }, actionsHeadLabel), columns.map((item, index) => {
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__ */ React2.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.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React2.createElement("div", { className: "text-xs" }, item.label), !!store.sortableColumns[item.key] && /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement(DropdownTrigger, null, /* @__PURE__ */ React2.createElement("div", { className: "cursor-pointer" }, store.sortableColumns[item.key] === "desc" && /* @__PURE__ */ React2.createElement(ChevronDown, { size: 14 }), store.sortableColumns[item.key] === "asc" && /* @__PURE__ */ React2.createElement(ChevronUp, { size: 14 }), store.sortableColumns[item.key] === "none" && /* @__PURE__ */ React2.createElement(ChevronsUpDown, { size: 14 }))),
264
- /* @__PURE__ */ React2.createElement(DropdownMenu, { selectionMode: "single", selectedKeys: [store.sortableColumns[item.key]] }, /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement("span", { className: "text-sm font-bold" }, "Sort ascending")
278
- ), /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement("span", { className: "text-sm font-bold" }, "Sort descending")
292
- ), /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement("span", { className: "text-sm font-bold" }, "Sort none")
285
+ /* @__PURE__ */ React2__default.createElement("span", { className: "text-sm font-bold" }, "Sort none")
306
286
  ))
307
287
  )));
308
- }), actionsPlacement === "right" && /* @__PURE__ */ React2.createElement(TableHead, { className: "font-meidum text-[0.8125rem] text-[#64748B] dark:text-gray-300" }, actionsHeadLabel))), /* @__PURE__ */ React2.createElement(TableBody, null, data.map(
309
- (item, index) => needExtendedTable ? /* @__PURE__ */ React2.createElement(CollapseBody, { key: item[rowKey] || index, item, columns, extendedTables }) : /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement("div", { className: "flex justify-center h-[30px] mt-4" }, /* @__PURE__ */ React2.createElement(
323
- NextuiPagination,
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__ */ React2.createElement(Button, __spreadValues({}, props), children);
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__ */ React2.createElement(
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__ */ React2.createElement(JSONHighlight, { className: "w-full lg:w-[900px]", jsonStr: JSON.stringify(v, null, 2) })
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__ */ React2.createElement("div", { className: cn("w-full flex items-center space-x-2", actionsOptions == null ? void 0 : actionsOptions.className) }, Com.map((btn, index) => /* @__PURE__ */ React2.createElement(ActionButton, { key: index, props: btn.props, children: btn.children })));
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__ */ React2.createElement(TableCell, { className: "max-w-[200px] overflow-auto space-x-2" }, Com.map((btn, index) => /* @__PURE__ */ React2.createElement(ActionButton, { key: index, props: btn.props, children: btn.children })));
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__ */ React2.createElement("div", { className: cn("w-full flex items-center space-x-2", actionsOptions == null ? void 0 : actionsOptions.className) }, Com);
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__ */ React2.createElement(TableCell, { className: "max-w-[200px] overflow-auto space-x-2" }, Com);
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__ */ React2.createElement(
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__ */ React2.createElement(Actions, { item, actions }),
377
+ actionsPlacement === "left" && /* @__PURE__ */ React2__default.createElement(Actions, { item, actions }),
398
378
  columns.map((column) => {
399
379
  var _a;
400
- return /* @__PURE__ */ React2.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]));
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__ */ React2.createElement(Actions, { item, actions })
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__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement(TableCell, { className: "w-10" }, isOpen ? /* @__PURE__ */ React2.createElement(ChevronDown, { size: 30 }) : /* @__PURE__ */ React2.createElement(ChevronRight, { size: 30 })),
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__ */ React2.createElement(TableCell, { key: column.key, className: "max-w-[200px] overflow-auto" }, column.render ? column.render(item) : renderFieldValue(item[column.key]));
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__ */ React2.createElement(TableRow, { className: cn(isOpen ? "table-row" : "hidden") }, /* @__PURE__ */ React2.createElement(TableCell, null), /* @__PURE__ */ React2.createElement(TableCell, { colSpan: columns.length }, extendedTables.map((ex) => {
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__ */ React2.createElement(Table, { className: "mt-[10px]", key: ex.key }, /* @__PURE__ */ React2.createElement(TableHeader, null, /* @__PURE__ */ React2.createElement(TableRow, { className: "bg-[#F4F4F5] dark:bg-[#3F3F45]" }, exColumns.map((exC) => {
426
- return /* @__PURE__ */ React2.createElement(TableHead, { key: exC.key, className: "font-bold text-sm dark:text-gray-300" }, exC.label);
427
- }))), /* @__PURE__ */ React2.createElement(TableBody, null, exRow.map((exItem) => /* @__PURE__ */ React2.createElement(TableRow, { className: "text-sm", key: exItem.key }, exColumns.map((exC) => {
428
- return /* @__PURE__ */ React2.createElement(TableCell, { key: exC.key, className: "max-w-[200px] overflow-auto" }, exC.render ? exC.render(exItem) : renderFieldValue(exItem[exC.key]));
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__ */ React2.createElement("div", { className, id: tableBoxElementId }, /* @__PURE__ */ React2.createElement("div", { className: cn("space-y-2", cardOptions == null ? void 0 : cardOptions.boxClassName) }, data.map((item, index) => {
460
- return /* @__PURE__ */ React2.createElement(
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__ */ React2.createElement("div", { className: "w-full", key: column.key }, /* @__PURE__ */ React2.createElement("div", { className: cn("w-full", cardOptions == null ? void 0 : cardOptions.itemClassName) }, /* @__PURE__ */ React2.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.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.createElement(Divider, { className: cn("my-2", cardOptions == null ? void 0 : cardOptions.dividerClassName) }));
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__ */ React2.createElement(Actions, { asCard: true, item, actions, actionsOptions })
454
+ /* @__PURE__ */ React2__default.createElement(Actions, { asCard: true, item, actions, actionsOptions })
475
455
  );
476
- })), pagination.total > pagination.limit && /* @__PURE__ */ React2.createElement("div", { className: "flex justify-center h-[30px] mt-4" }, /* @__PURE__ */ React2.createElement(
477
- NextuiPagination,
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
- JSONTable,
497
- JSONTable_default
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":";;;;;;;;;;;;;;;;;;;;;AAEA,OAAOA,UAAS,WAAW,SAAS,gBAAgB;AACpD,SAAS,UAAU,0BAA0B;;;ACH7C,YAAY,WAAW;AAGvB,IAAM,QAAc,iBAAqE,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAH5F,IAG0F,IAAgB,kBAAhB,IAAgB,CAAd;AACxF,6CAAC,0BAAM,KAAU,WAAW,GAAG,iCAAiC,SAAS,KAAO,MAAO;AAAA,CAC1F;AACD,MAAM,cAAc;AAEpB,IAAM,cAAoB,iBAAmF,CAAC,IAAyB,QAAK;AAA9B,eAAE,YARhH,IAQ8G,IAAgB,kBAAhB,IAAgB,CAAd;AAC5G,6CAAC,0BAAM,KAAU,WAAW,GAAG,IAAI,SAAS,KAAO,MAAO;AAAA,CAC7D;AACD,YAAY,cAAc;AAE1B,IAAM,YAAkB,iBAAmF,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAb9G,IAa4G,IAAgB,kBAAhB,IAAgB,CAAd;AAC1G,6CAAC,0BAAM,KAAU,WAAW,GAAG,8BAA8B,SAAS,KAAO,MAAO;AAAA,CACvF;AACD,UAAU,cAAc;AAExB,IAAM,cAAoB,iBAAmF,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAlBhH,IAkB8G,IAAgB,kBAAhB,IAAgB,CAAd;AAC5G,6CAAC,0BAAM,KAAU,WAAW,GAAG,kDAAkD,SAAS,KAAO,MAAO;AAAA,CAC3G;AACD,YAAY,cAAc;AAE1B,IAAM,WAAiB,iBAA2E,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAvBrG,IAuBmG,IAAgB,kBAAhB,IAAgB,CAAd;AACjG,6CAAC,uBAAG,KAAU,WAAW,GAAG,IAAI,SAAS,KAAO,MAAO;AAAA,CAC1D;AACD,SAAS,cAAc;AAEvB,IAAM,YAAkB,iBAA+E,CAAC,IAAyB,QAAK;AAA9B,eAAE,YA5B1G,IA4BwG,IAAgB,kBAAhB,IAAgB,CAAd;AACtG,6CAAC,uBAAG,KAAU,WAAW,GAAG,mGAAmG,SAAS,KAAO,MAAO;AAAA,CACzJ;AACD,UAAU,cAAc;AAExB,IAAM,YAAkB,iBAA+E,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAjC1G,IAiCwG,IAAgB,kBAAhB,IAAgB,CAAd;AACtG,6CAAC,uBAAG,KAAU,WAAW,GAAG,kDAAkD,SAAS,KAAO,MAAO;AAAA,CACxG;AACD,UAAU,cAAc;AAExB,IAAM,eAAqB,iBAAmF,CAAC,IAAyB,QAAK;AAA9B,eAAE,YAtCjH,IAsC+G,IAAgB,kBAAhB,IAAgB,CAAd;AAC7G,6CAAC,4BAAQ,KAAU,WAAW,GAAG,sCAAsC,SAAS,KAAO,MAAO;AAAA,CACjG;AACD,aAAa,cAAc;;;ADnC3B,SAAS,QAAqB,MAAM,SAAS,UAAU,cAAc,cAAc,iBAAiB,cAAc,wBAAwB;AAC1I,SAAS,aAAa,cAAc,WAAW,sBAAsB;;;AEPrE,OAAO,YAAY;AACnB,IAAM,YAAY,IAAI,WAAW,GAAG;AAEpC,IAAI,UAAU,UAAU;AACT,SAAR,MAAuB;AAC5B,MAAI,UAAU,UAAU,SAAS,IAAI;AACnC,WAAO,eAAe,SAAS;AAC/B,cAAU;AAAA,EACZ;AAEA,SAAO,UAAU,MAAM,SAAS,WAAW,EAAE;AAC/C;;;ACXA,IAAO,gBAAQ;;;ACEf,SAAS,SAAS,MAAM;AACtB,SAAO,OAAO,SAAS,YAAY,cAAM,KAAK,IAAI;AACpD;AAEA,IAAO,mBAAQ;;;ACAf,IAAM,YAAY,CAAC;AAEnB,SAAS,IAAI,GAAG,IAAI,KAAK,EAAE,GAAG;AAC5B,YAAU,MAAM,IAAI,KAAO,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;AACnD;AAEA,SAAS,UAAU,KAAK,SAAS,GAAG;AAGlC,QAAM,QAAQ,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,MAAM,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,MAAM,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,MAAM,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,IAAI,MAAM,UAAU,IAAI,SAAS,EAAE,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC,GAAG,YAAY;AAMvgB,MAAI,CAAC,iBAAS,IAAI,GAAG;AACnB,UAAM,UAAU,6BAA6B;AAAA,EAC/C;AAEA,SAAO;AACT;AAEA,IAAO,oBAAQ;;;ACzBf,SAAS,GAAG,SAAS,KAAK,QAAQ;AAChC,YAAU,WAAW,CAAC;AACtB,QAAM,OAAO,QAAQ,WAAW,QAAQ,OAAO,KAAK;AAEpD,OAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAO;AAC3B,OAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAO;AAE3B,MAAI,KAAK;AACP,aAAS,UAAU;AAEnB,aAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,UAAI,SAAS,CAAC,IAAI,KAAK,CAAC;AAAA,IAC1B;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,kBAAU,IAAI;AACvB;AAEA,IAAO,aAAQ;;;AN4Df,IAAM,YAAY,SAAS,CAAgB,UAA6B;AACtE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa,IAAI,gBAAgB;AAAA,MAC/B,MAAM;AAAA,MACN,OAAO;AAAA,IACT,CAAC;AAAA,IACD,uBAAuB,CAAC;AAAA,IACxB,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT,cAAc;AAAA,MACZ,cAAc;AAAA,MACd,eAAe;AAAA,MACf,eAAe;AAAA,MACf,aAAa;AAAA,MACb,kBAAkB;AAAA,IACpB;AAAA,IACA,kBAAkB;AAAA,EACpB,IAAI;AAEJ,QAAM,oBAAmB,iDAAgB,cAAa;AACtD,QAAM,mBAAmB,WAAU,iDAAgB,cAAa,UAAU;AAE1E,QAAM,QAAQ,mBAMX,OAAO;AAAA,IACR,SAAS,CAAC;AAAA,IACV,iBAAiB,CAAC;AAAA,IAClB,YAAY,CAAC;AAAA,IACb,gBAAgB,CAAC;AAAA,IACjB,QAAQC,OAA6B;AACnC,aAAO,OAAO,OAAOA,KAAI;AAAA,IAC3B;AAAA,EACF,EAAE;AAEF,YAAU,MAAM;AACd,UAAM,QAAQ,WAAW,SAAS,IAAI,OAAO,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC;AACpE,UAAM,OAAO,aAAa,aAAa,gBAAgB,MAAM,OAAO,CAAC,QAAK;AAnI9E;AAmIiF,gBAAC,mBAAc,GAAG,MAAjB,mBAAoB;AAAA,KAAM,IAAI;AAC5G,UAAM,kBAA4D,CAAC;AACnE,UAAMC,WAAuB,KAC1B,IAAI,CAAC,QAAQ;AAtIpB;AAuIQ,YAAM,YAAW,oDAAgB,SAAhB,mBAAsB;AACvC,UAAI,UAAU;AACZ,wBAAgB,GAAG,IAAI;AAAA,MACzB;AACA,aAAO;AAAA,QACL;AAAA,QACA,SAAO,oDAAgB,SAAhB,mBAAsB,UAAS;AAAA,QACtC,SAAQ,oDAAgB,SAAhB,mBAAsB;AAAA,QAC9B,YAAW,oDAAgB,SAAhB,mBAAsB;AAAA,MACnC;AAAA,IACF,CAAC,EACA,KAAK,CAAC,GAAG,MAAM;AAlJtB;AAmJQ,YAAM,WAAS,oDAAgB,EAAE,SAAlB,mBAAwB,UAAS;AAChD,YAAM,WAAS,oDAAgB,EAAE,SAAlB,mBAAwB,UAAS;AAChD,aAAO,SAAS;AAAA,IAClB,CAAC;AACH,UAAM,QAAQ;AAAA,MACZ;AAAA,MACA,SAAAA;AAAA,MACA,YAAY;AAAA,IACd,CAAC;AACD,QAAI,CAAC,gBAAgB;AACnB,iBAAW,QAAQ;AAAA,QACjB,OAAO,WAAW;AAAA,MACpB,CAAC;AAAA,IACH;AAAA,EACF,GAAG,CAAC,YAAY,aAAa,CAAC;AAE9B,QAAM,SAAS,CAAC,EAAE,SAAS,KAAK,KAAK,MAAuE;AAC1G,UAAM,kBAA4D,CAAC;AACnE,WAAO,KAAK,MAAM,eAAe,EAAE,IAAI,CAAC,MAAM;AAC5C,sBAAgB,CAAC,IAAI,MAAM,MAAM,OAAO;AAAA,IAC1C,CAAC;AAED,QAAI,aAAa;AACjB,QAAI,SAAS,QAAQ;AACnB,YAAM,SAAS,EAAE;AAAA,QACf;AAAA,QACA,CAAC,MAAM;AACL,gBAAM,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG;AACjC,cAAI,KAAK,MAAM;AACb,mBAAO,SAAS,SAAS,KAAK;AAAA,UAChC;AACA,cAAI,OAAO,MAAM,UAAU;AACzB,kBAAM,KAAK,OAAO,CAAC;AACnB,gBAAI,MAAM,EAAE,GAAG;AACb,qBAAO,EAAE,YAAY;AAAA,YACvB,OAAO;AACL,qBAAO;AAAA,YACT;AAAA,UACF;AACA,iBAAO;AAAA,QACT;AAAA,QACA;AAAA,MACF;AACA,mBAAa;AAAA,IACf;AAEA,UAAM,QAAQ;AAAA,MACZ;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,EAAE,SAAS,eAAe,IAAI;AACpC,QAAM,oBAAoB,CAAC,CAAC,eAAe;AAC3C,QAAM,OAAO,iBAAiB,MAAM,aAAa,MAAM,WAAW,MAAM,WAAW,QAAQ,WAAW,SAAS,WAAW,KAAK;AAE/H,QAAM,oBAAoB,QAAQ,MAAM;AACtC,WAAO,kBAAkB,cAAc,WAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK;AAAA,EAChE,GAAG,CAAC,CAAC;AAEL,MAAI,QAAQ;AACV,WACE,gBAAAF,OAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,MAAM;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACF;AAAA,EAEJ;AAEA,SACE,gBAAAA,OAAA,cAAAA,OAAA,gBACE,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,2CAA2C,MAAM,SAAS,GAAG,IAAI,qBAClF,gBAAAA,OAAA,cAAC,aACC,gBAAAA,OAAA,cAAC,eAAY,WAAU,kBACrB,gBAAAA,OAAA,cAAC,YAAS,WAAU,8CACjB,qBAAqB,gBAAAA,OAAA,cAAC,eAAU,GAChC,qBAAqB,UAAU,gBAAAA,OAAA,cAAC,aAAU,WAAU,oEAAkE,gBAAiB,GACvI,QAAQ,IAAI,CAAC,MAAM,UAAO;AAxOzC;AAyOgB,2BAAAA,OAAA,cAAC,aAAU,WAAW,GAAG,mEAAkE,oDAAgB,KAAK,SAArB,mBAA2B,WAAW,GAAG,KAAK,KAAK,OAC5I,gBAAAA,OAAA,cAAC,SAAI,WAAU,uBACb,gBAAAA,OAAA,cAAC,SAAI,WAAU,aAAW,KAAK,KAAM,GACpC,CAAC,CAAC,MAAM,gBAAgB,KAAK,GAAG,KAC/B,gBAAAA,OAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAS;AAAA,QACT,UAAS;AAAA,QACT,WAAU;AAAA;AAAA,MAEV,gBAAAA,OAAA,cAAC,uBACC,gBAAAA,OAAA,cAAC,SAAI,WAAU,oBACZ,MAAM,gBAAgB,KAAK,GAAG,MAAM,UAAU,gBAAAA,OAAA,cAAC,eAAY,MAAM,IAAI,GACrE,MAAM,gBAAgB,KAAK,GAAG,MAAM,SAAS,gBAAAA,OAAA,cAAC,aAAU,MAAM,IAAI,GAClE,MAAM,gBAAgB,KAAK,GAAG,MAAM,UAAU,gBAAAA,OAAA,cAAC,kBAAe,MAAM,IAAI,CAC3E,CACF;AAAA,MACA,gBAAAA,OAAA,cAAC,gBAAa,eAAc,UAAS,cAAc,CAAC,MAAM,gBAAgB,KAAK,GAAG,CAAC,KACjF,gBAAAA,OAAA;AAAA,QAAC;AAAA;AAAA,UACC,KAAI;AAAA,UACJ,SAAS,MAAM;AA5P3C,gBAAAG;AA6P8B,mBAAO;AAAA,cACL,MAAM;AAAA,cACN,KAAK,KAAK;AAAA,cACV,UAASA,MAAA,+CAAgB,KAAK,SAArB,gBAAAA,IAA2B;AAAA,YACtC,CAAC;AAAA,UACH;AAAA;AAAA,QAEA,gBAAAH,OAAA,cAAC,UAAK,WAAU,uBAAoB,gBAAc;AAAA,MACpD,GACA,gBAAAA,OAAA;AAAA,QAAC;AAAA;AAAA,UACC,KAAI;AAAA,UACJ,SAAS,MAAM;AAxQ3C,gBAAAG;AAyQ8B,mBAAO;AAAA,cACL,MAAM;AAAA,cACN,KAAK,KAAK;AAAA,cACV,UAASA,MAAA,+CAAgB,KAAK,SAArB,gBAAAA,IAA2B;AAAA,YACtC,CAAC;AAAA,UACH;AAAA;AAAA,QAEA,gBAAAH,OAAA,cAAC,UAAK,WAAU,uBAAoB,iBAAe;AAAA,MACrD,GACA,gBAAAA,OAAA;AAAA,QAAC;AAAA;AAAA,UACC,KAAI;AAAA,UACJ,SAAS,MAAM;AApR3C,gBAAAG;AAqR8B,mBAAO;AAAA,cACL,MAAM;AAAA,cACN,KAAK,KAAK;AAAA,cACV,UAASA,MAAA,+CAAgB,KAAK,SAArB,gBAAAA,IAA2B;AAAA,YACtC,CAAC;AAAA,UACH;AAAA;AAAA,QAEA,gBAAAH,OAAA,cAAC,UAAK,WAAU,uBAAoB,WAAS;AAAA,MAC/C,CACF;AAAA,IACF,CAEJ,CACF;AAAA,GACD,GACA,qBAAqB,WAAW,gBAAAA,OAAA,cAAC,aAAU,WAAU,oEAAkE,gBAAiB,CAC3I,CACF,GACA,gBAAAA,OAAA,cAAC,iBACE,KAAK;AAAA,IAAI,CAAC,MAAM,UACf,oBACE,gBAAAA,OAAA,cAAC,gBAAa,KAAK,KAAK,MAAM,KAAK,OAAO,MAAY,SAAkB,gBAAgC,IAExG,gBAAAA,OAAA;AAAA,MAAC;AAAA;AAAA,QACC,KAAK,KAAK,MAAM,KAAK;AAAA,QACrB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACF;AAAA,EAEJ,CACF,CACF,CACF,GACC,WAAW,QAAQ,WAAW,SAC7B,gBAAAA,OAAA,cAAC,SAAI,WAAU,uCACb,gBAAAA,OAAA;AAAA,IAAC;AAAA;AAAA,MACC,cAAY;AAAA,MACZ,MAAK;AAAA,MACL,QAAO;AAAA,MACP,OAAO,KAAK,KAAK,WAAW,QAAQ,WAAW,KAAK;AAAA,MACpD,MAAM,WAAW;AAAA,MACjB,aAAa;AAAA,MACb,UAAU,CAAC,gBAAgB;AACzB,mBAAW,QAAQ;AAAA,UACjB,MAAM;AAAA,QACR,CAAC;AACD,sBAAc,iBAAiB;AAAA,MACjC;AAAA;AAAA,EACF,CACF,CAEJ;AAEJ,CAAC;AAED,SAAS,aAAa,EAAE,OAAO,SAAS,GAAqB;AAC3D,SAAO,gBAAAA,OAAA,cAAC,2BAAW,QAAQ,QAAS;AACtC;AAEA,SAAS,iBAAiB,GAAQ;AAChC,MAAI,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU;AAChD,WAAO;AAAA,EACT;AACA,MAAI,KAAK,MAAM;AACb,WAAO;AAAA,EACT;AACA,SACE,gBAAAA,OAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAS,CAAC,MAAM;AACd,UAAE,gBAAgB;AAClB,oBAAY,KAAK;AAAA,UACf,SAAS,gBAAAA,OAAA,cAAC,iBAAc,WAAU,uBAAsB,SAAS,KAAK,UAAU,GAAG,MAAM,CAAC,GAAG;AAAA,QAC/F,CAAC;AAAA,MACH;AAAA;AAAA,IAEC,KAAK,UAAU,CAAC,EAAE,MAAM,GAAG,EAAE,IAAI;AAAA,EACpC;AAEJ;AAEA,SAAS,QAAW,EAAE,SAAS,gBAAgB,MAAM,OAAO,GAA6F;AACvJ,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,QAAM,MAAM,QAAQ,IAAI;AACxB,MAAI,MAAM,QAAQ,GAAG,GAAG;AACtB,QAAI,QAAQ;AACV,aACE,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,sCAAsC,iDAAgB,SAAS,KAC/E,IAAI,IAAI,CAAC,KAAK,UACb,gBAAAA,OAAA,cAAC,gBAAa,KAAK,OAAO,OAAO,IAAI,OAAO,UAAU,IAAI,UAAU,CACrE,CACH;AAAA,IAEJ;AACA,WACE,gBAAAA,OAAA,cAAC,aAAU,WAAU,2CAClB,IAAI,IAAI,CAAC,KAAK,UACb,gBAAAA,OAAA,cAAC,gBAAa,KAAK,OAAO,OAAO,IAAI,OAAO,UAAU,IAAI,UAAU,CACrE,CACH;AAAA,EAEJ;AAEA,MAAI,QAAQ;AACV,WAAO,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,sCAAsC,iDAAgB,SAAS,KAAI,GAAI;AAAA,EACnG;AACA,SAAO,gBAAAA,OAAA,cAAC,aAAU,WAAU,2CAAyC,GAAI;AAC3E;AAEA,SAAS,KAAQ;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAQG;AACD,SACE,gBAAAA,OAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,+DAA+D,OAAO,WAAW,aAAa,OAAO,IAAI,IAAI,MAAM;AAAA,MACjI,SAAS,MAAM;AACb,iDAAa;AAAA,MACf;AAAA;AAAA,IAEC,qBAAqB,UAAU,gBAAAA,OAAA,cAAC,WAAQ,MAAY,SAAkB;AAAA,IACtE,QAAQ,IAAI,CAAC,WAAW;AAna/B;AAoaQ,aACE,gBAAAA,OAAA,cAAC,aAAU,KAAK,OAAO,KAAK,WAAW,GAAG,gCAA+B,oDAAgB,OAAO,SAAvB,mBAA6B,WAAW,KAC9G,OAAO,SACJ,OAAO,OAAO,IAAI,IAClB,iBAAiB,KAAK,OAAO,GAAG,CAAC,CACvC;AAAA,IAEJ,CAAC;AAAA,IACA,qBAAqB,WAAW,gBAAAA,OAAA,cAAC,WAAQ,MAAY,SAAkB;AAAA,EAC1E;AAEJ;AAEA,SAAS,aAAgB,EAAE,MAAM,SAAS,eAAe,GAA4E;AACnI,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAC1C,SACE,gBAAAA,OAAA,cAAAA,OAAA,gBACE,gBAAAA,OAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAS,CAAC,MAAW;AACnB,cAAM,EAAE,SAAS,IAAI,EAAE;AACvB,YAAI,aAAa,QAAQ,aAAa,OAAO;AAC3C,oBAAU,CAAC,MAAM,CAAC,CAAC;AAAA,QACrB;AAAA,MACF;AAAA;AAAA,IAEA,gBAAAA,OAAA,cAAC,aAAU,WAAU,UAAQ,SAAS,gBAAAA,OAAA,cAAC,eAAY,MAAM,IAAI,IAAK,gBAAAA,OAAA,cAAC,gBAAa,MAAM,IAAI,CAAG;AAAA,IAC5F,QAAQ,IAAI,CAAC,WAAW;AACvB,aACE,gBAAAA,OAAA,cAAC,aAAU,KAAK,OAAO,KAAK,WAAU,iCACnC,OAAO,SACJ,OAAO,OAAO,IAAI,IAClB,iBAAiB,KAAK,OAAO,GAAG,CAAC,CACvC;AAAA,IAEJ,CAAC;AAAA,EACH,GACA,gBAAAA,OAAA,cAAC,YAAS,WAAW,GAAG,SAAS,cAAc,QAAQ,KACrD,gBAAAA,OAAA,cAAC,eAAU,GACX,gBAAAA,OAAA,cAAC,aAAU,SAAS,QAAQ,UACzB,eAAe,IAAI,CAAC,OAAO;AAC1B,UAAM,YAAY,GAAG;AACrB,UAAM,QAAQ,KAAK,GAAG,GAAG;AACzB,WACE,gBAAAA,OAAA,cAAC,SAAM,WAAU,aAAY,KAAK,GAAG,OACnC,gBAAAA,OAAA,cAAC,mBACC,gBAAAA,OAAA,cAAC,YAAS,WAAU,oCACjB,UAAU,IAAI,CAAC,QAAQ;AACtB,aACE,gBAAAA,OAAA,cAAC,aAAU,KAAK,IAAI,KAAK,WAAU,0CAChC,IAAI,KACP;AAAA,IAEJ,CAAC,CACH,CACF,GACA,gBAAAA,OAAA,cAAC,iBACE,MAAM,IAAI,CAAC,WACV,gBAAAA,OAAA,cAAC,YAAS,WAAU,WAAU,KAAK,OAAO,OACvC,UAAU,IAAI,CAAC,QAAQ;AACtB,aACE,gBAAAA,OAAA,cAAC,aAAU,KAAK,IAAI,KAAK,WAAU,iCAChC,IAAI,SACD,IAAI,OAAO,MAAM,IACjB,iBAAiB,OAAO,IAAI,GAAG,CAAC,CACtC;AAAA,IAEJ,CAAC,CACH,CACD,CACH,CACF;AAAA,EAEJ,CAAC,CACH,CACF,CACF;AAEJ;AAEA,eAAe,cAAc,mBAA4B;AACvD,QAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAG,CAAC;AACvD,MAAI,mBAAmB;AACrB,UAAM,KAAK,SAAS,eAAe,iBAAiB;AACpD,QAAI,IAAI;AACN,YAAM,EAAE,IAAI,IAAI,GAAG,sBAAsB;AACzC,aAAO,SAAS;AAAA,QACd,KAAK,MAAM,OAAO,UAAU;AAAA,QAC5B,UAAU;AAAA,MACZ,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEA,IAAO,oBAAQ;AAGf,SAAS,aAAgB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAYG;AACD,SACE,gBAAAA,OAAA,cAAC,SAAI,WAAsB,IAAI,qBAC7B,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,aAAa,2CAAa,YAAY,KACtD,KAAK,IAAI,CAAC,MAAM,UAAU;AACzB,WACE,gBAAAA,OAAA;AAAA,MAAC;AAAA;AAAA,QACC,KAAK,KAAK,MAAM,KAAK;AAAA,QACrB,WAAW,GAAG,0BAA0B,2CAAa,aAAa;AAAA,QAClE,aAAa,CAAC,CAAC;AAAA,QACf,SAAS,MAAM;AACb,mDAAa;AAAA,QACf;AAAA;AAAA,MAEC,QAAQ,IAAI,CAAC,QAAQ,MAAM;AAC1B,cAAM,SAAS,+CAAgB,OAAO;AACtC,eACE,gBAAAA,OAAA,cAAC,SAAI,WAAU,UAAS,KAAK,OAAO,OAClC,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,UAAU,2CAAa,aAAa,KACrD,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,kEAAkE,iCAAQ,cAAc,KAAI,OAAO,KAAM,GAC5H,gBAAAA,OAAA,cAAC,SAAI,WAAW,GAAG,oBAAoB,iCAAQ,cAAc,KAAI,OAAO,SAAS,OAAO,OAAO,IAAI,IAAI,iBAAiB,KAAK,OAAO,GAAG,CAAC,CAAE,CAC5I,IACC,2CAAa,gBAAe,MAAM,QAAQ,SAAS,KAAK,gBAAAA,OAAA,cAAC,WAAQ,WAAW,GAAG,QAAQ,2CAAa,gBAAgB,GAAG,CAC1H;AAAA,MAEJ,CAAC;AAAA,MACD,gBAAAA,OAAA,cAAC,WAAQ,QAAM,MAAC,MAAY,SAAkB,gBAAgC;AAAA,IAChF;AAAA,EAEJ,CAAC,CACH,GACC,WAAW,QAAQ,WAAW,SAC7B,gBAAAA,OAAA,cAAC,SAAI,WAAU,uCACb,gBAAAA,OAAA;AAAA,IAAC;AAAA;AAAA,MACC,cAAY;AAAA,MACZ,MAAK;AAAA,MACL,QAAO;AAAA,MACP,OAAO,KAAK,KAAK,WAAW,QAAQ,WAAW,KAAK;AAAA,MACpD,MAAM,WAAW;AAAA,MACjB,aAAa;AAAA,MACb,UAAU,CAAC,gBAAgB;AACzB,mBAAW,QAAQ;AAAA,UACjB,MAAM;AAAA,QACR,CAAC;AACD,sBAAc,iBAAiB;AAAA,MACjC;AAAA;AAAA,EACF,CACF,CAEJ;AAEJ","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;"]}
@@ -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
- ToastPlugin
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"],"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;","names":[]}
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
- lodash_exports
3
- } from "./chunk-DUK5IHQE.mjs";
4
- import {
5
- cn
6
- } from "./chunk-FOR424HO.mjs";
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
- lodash_exports.debounce((initialJson2, currentJson) => {
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
- JSONEditor
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"]}
@@ -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
- PaginationState
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"],"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;","names":[]}
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"]}