@dappworks/kit 0.4.123 → 0.4.125

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 (43) hide show
  1. package/dist/{PromiseState-yojg0WLR.d.ts → PromiseState-b0cc408e.d.ts} +3 -3
  2. package/dist/aiem.d.mts +1 -1
  3. package/dist/aiem.mjs +21 -5
  4. package/dist/{chunk-R4SQKVDQ.mjs → chunk-6F7H4PAA.mjs} +1 -1
  5. package/dist/{chunk-SVPD6PC6.mjs → chunk-7FF4BCFW.mjs} +4 -4
  6. package/dist/{chunk-WS43BV7Y.mjs → chunk-DZMNL4BZ.mjs} +2 -2
  7. package/dist/{chunk-XJMRAPHI.mjs → chunk-HRWHDF2F.mjs} +7 -7
  8. package/dist/{chunk-XJMRAPHI.mjs.map → chunk-HRWHDF2F.mjs.map} +1 -1
  9. package/dist/{chunk-QWHU3HBK.mjs → chunk-PPYYRQDD.mjs} +2 -2
  10. package/dist/{chunk-HRYH37UI.mjs → chunk-WT2ARRCR.mjs} +2 -2
  11. package/dist/{chunk-AIZ7XDNV.mjs → chunk-WYGQ3Y4R.mjs} +14 -14
  12. package/dist/chunk-WYGQ3Y4R.mjs.map +1 -0
  13. package/dist/dev.d.mts +1 -1
  14. package/dist/dev.mjs +2 -2
  15. package/dist/experimental.d.mts +2 -2
  16. package/dist/experimental.mjs +3 -3
  17. package/dist/form.d.mts +5 -4
  18. package/dist/form.mjs +117 -24
  19. package/dist/form.mjs.map +1 -1
  20. package/dist/index.d.mts +4 -4
  21. package/dist/index.mjs +5 -5
  22. package/dist/inspector.d.mts +1 -1
  23. package/dist/inspector.mjs +1 -1
  24. package/dist/jsontable.d.mts +2 -2
  25. package/dist/jsontable.mjs +4 -4
  26. package/dist/metrics.d.mts +1 -1
  27. package/dist/metrics.mjs +5 -5
  28. package/dist/metrics.mjs.map +1 -1
  29. package/dist/plugins.d.mts +2 -2
  30. package/dist/plugins.mjs +10 -6
  31. package/dist/plugins.mjs.map +1 -1
  32. package/dist/{root-C3lZnoCI.d.ts → root-766ae985.d.ts} +1 -1
  33. package/dist/ui.mjs +3 -3
  34. package/dist/utils.d.mts +3 -8
  35. package/dist/utils.mjs +1 -1
  36. package/package.json +1 -1
  37. package/dist/chunk-AIZ7XDNV.mjs.map +0 -1
  38. /package/dist/{PaginationState-Bmrrw0ky.d.ts → PaginationState-c19e621a.d.ts} +0 -0
  39. /package/dist/{chunk-R4SQKVDQ.mjs.map → chunk-6F7H4PAA.mjs.map} +0 -0
  40. /package/dist/{chunk-SVPD6PC6.mjs.map → chunk-7FF4BCFW.mjs.map} +0 -0
  41. /package/dist/{chunk-WS43BV7Y.mjs.map → chunk-DZMNL4BZ.mjs.map} +0 -0
  42. /package/dist/{chunk-QWHU3HBK.mjs.map → chunk-PPYYRQDD.mjs.map} +0 -0
  43. /package/dist/{chunk-HRYH37UI.mjs.map → chunk-WT2ARRCR.mjs.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { S as Store } from './root-C3lZnoCI.js';
2
+ import { S as Store } from './root-766ae985.js';
3
3
  import 'typed-emitter';
4
4
 
5
5
  declare class DevInspectorPlugin implements Store {
@@ -1,4 +1,4 @@
1
- import './chunk-R4SQKVDQ.mjs';
1
+ import './chunk-6F7H4PAA.mjs';
2
2
  import React from 'react';
3
3
  import { Inspector } from 'react-dev-inspector';
4
4
 
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { SlotsToClasses, TableSlots, PaginationProps, SpinnerProps } from '@nextui-org/react';
3
- import { P as PaginationState } from './PaginationState-Bmrrw0ky.js';
3
+ import { P as PaginationState } from './PaginationState-c19e621a.js';
4
4
 
5
5
  type HeaderKeys<T extends Record<string, any>> = Array<keyof T | '$actions'>;
6
6
  type ColumnOptions<T> = {
@@ -97,4 +97,4 @@ declare const JSONTable: (<T extends Record<string, any>>(props: JSONTableProps<
97
97
  displayName: string;
98
98
  };
99
99
 
100
- export { type CardOptions, type Column, type ColumnOptions, type ExtendedTable, type HeaderKeys, JSONTable };
100
+ export { CardOptions, Column, ColumnOptions, ExtendedTable, HeaderKeys, JSONTable };
@@ -1,8 +1,8 @@
1
- export { JSONTable } from './chunk-SVPD6PC6.mjs';
1
+ export { JSONTable } from './chunk-7FF4BCFW.mjs';
2
2
  import './chunk-ONVPCAMQ.mjs';
3
- import './chunk-HRYH37UI.mjs';
3
+ import './chunk-WT2ARRCR.mjs';
4
4
  import './chunk-MGU3KYGC.mjs';
5
- import './chunk-AIZ7XDNV.mjs';
6
- import './chunk-R4SQKVDQ.mjs';
5
+ import './chunk-WYGQ3Y4R.mjs';
6
+ import './chunk-6F7H4PAA.mjs';
7
7
  //# sourceMappingURL=out.js.map
8
8
  //# sourceMappingURL=jsontable.mjs.map
@@ -118,4 +118,4 @@ declare const MetricsView: ({ data }: {
118
118
  data: JSONMetricsViewType;
119
119
  }) => React.JSX.Element;
120
120
 
121
- export { JSONMetricsView, type JSONMetricsViewType, MetricsView };
121
+ export { JSONMetricsView, JSONMetricsViewType, MetricsView };
package/dist/metrics.mjs CHANGED
@@ -1,15 +1,15 @@
1
- import { JSONTable } from './chunk-SVPD6PC6.mjs';
1
+ import { JSONTable } from './chunk-7FF4BCFW.mjs';
2
2
  import './chunk-ONVPCAMQ.mjs';
3
- import { SkeletonBox } from './chunk-HRYH37UI.mjs';
3
+ import { SkeletonBox } from './chunk-WT2ARRCR.mjs';
4
4
  import './chunk-MGU3KYGC.mjs';
5
- import { cn } from './chunk-AIZ7XDNV.mjs';
6
- import { __spreadValues } from './chunk-R4SQKVDQ.mjs';
5
+ import { cn } from './chunk-WYGQ3Y4R.mjs';
6
+ import { __spreadValues } from './chunk-6F7H4PAA.mjs';
7
7
  import React8 from 'react';
8
8
  import { Grid, Col, BarChart, LineChart, AreaChart, DonutChart, Text } from '@tremor/react';
9
9
  import { Card } from '@nextui-org/react';
10
10
 
11
11
  var ChartBox = ({ title, description, error, children, className, headerClassName, contentClassName }) => {
12
- return /* @__PURE__ */ React8.createElement(Card, { className: cn("shadow-sm border dark:border-[#3e3e3e]", className) }, (title || description) && /* @__PURE__ */ React8.createElement("div", { className: cn("p-4 h-[60px]", headerClassName) }, title && /* @__PURE__ */ React8.createElement("div", null, title), description && /* @__PURE__ */ React8.createElement("div", { className: "text-xs" }, description)), /* @__PURE__ */ React8.createElement("div", { className: cn("px-2 pb-5", contentClassName) }, error ? /* @__PURE__ */ React8.createElement("div", { className: "text-red-600" }, error) : children));
12
+ return /* @__PURE__ */ React8.createElement(Card, { className: cn("shadow-sm rounded-lg border dark:border-[#3e3e3e]", className) }, (title || description) && /* @__PURE__ */ React8.createElement("div", { className: cn("p-4 h-[60px]", headerClassName) }, title && /* @__PURE__ */ React8.createElement("div", null, title), description && /* @__PURE__ */ React8.createElement("div", { className: "text-xs" }, description)), /* @__PURE__ */ React8.createElement("div", { className: cn("px-2 pb-5", contentClassName) }, error ? /* @__PURE__ */ React8.createElement("div", { className: "text-red-600" }, error) : children));
13
13
  };
14
14
 
15
15
  // components/JSONMetricsView/BarChartCard/index.tsx
@@ -1 +1 @@
1
- {"version":3,"sources":["../components/JSONMetricsView/index.tsx","../components/JSONMetricsView/BarChartCard/index.tsx","../components/JSONMetricsView/ChartBox/index.tsx","../components/JSONMetricsView/LineChartCard/index.tsx","../components/JSONMetricsView/AreaChartCard/index.tsx","../components/JSONMetricsView/DonutChartCard/index.tsx","../components/JSONMetricsView/CountCard/index.tsx","../components/JSONMetricsView/TableCard/index.tsx","../components/JSONMetricsView/KPICard/index.tsx"],"names":["React","AreaChart","LineChart"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Col, Grid } from '@tremor/react';\nimport { BarChartCard } from './BarChartCard';\nimport { LineChartCard } from './LineChartCard';\nimport { AreaChartCard } from './AreaChartCard';\nimport { DonutChartCard } from './DonutChartCard';\nimport { CountCard } from './CountCard';\nimport { TableCard } from './TableCard';\nimport { KPICard } from './KPICard';\n\nexport type JSONMetricsViewType = AreaChartCard | LineChartCard | BarChartCard | DonutChartCard | CountCard | TableCard | KPICard;\n\nconst components = {\n AreaChartCard,\n LineChartCard,\n BarChartCard,\n DonutChartCard,\n CountCard,\n TableCard,\n KPICard,\n};\n\nconst JSONMetricsView = ({ data }: { data: JSONMetricsViewType[] }) => {\n return (\n <Grid numItems={1} numItemsSm={1} numItemsLg={2} numItemsMd={2} className=\"gap-2\">\n {data.map((item, index) => {\n const Component = components[item.type];\n return (\n <Col key={index} numColSpanSm={1} numColSpanMd={item.numColSpanMd ?? 1}>\n {/* @ts-ignore */}\n <Component {...item} />\n </Col>\n );\n })}\n </Grid>\n );\n};\n\nexport const MetricsView = ({ data }: { data: JSONMetricsViewType }) => {\n const Comp = components[data.type];\n // @ts-ignore\n return <Comp {...data} />;\n};\n\nexport { JSONMetricsView };\n","import React from 'react';\nimport { BarChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type BarChartCard = ChartBox & {\n type?: 'BarChartCard';\n categories?: string[];\n index?: string;\n valueFormatter?: ValueFormatter;\n showLegend?: boolean;\n showGridLines?: boolean;\n stack?: boolean;\n showAnimation?: boolean;\n};\n\nexport const BarChartCard = (props: BarChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n valueFormatter = (number) => `${number}`,\n showLegend = false,\n showGridLines = false,\n stack = false,\n chartClassName,\n showAnimation = true,\n } = props;\n\n return (\n <ChartBox {...props}>\n <BarChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n yAxisWidth={48}\n showLegend={showLegend}\n showGridLines={showGridLines}\n stack={stack}\n showAnimation={showAnimation}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { cn } from '../../../lib/utils';\nimport { Card } from '@nextui-org/react';\n\nexport interface ChartBox {\n title?: React.ReactNode;\n description?: string;\n error?: string;\n data?: {\n [key: string]: any;\n }[];\n children?: React.ReactNode;\n gridH?: number; // grid units, not pixels\n numColSpanMd?: number;\n className?: string;\n headerClassName?: string;\n contentClassName?: string;\n chartClassName?: string;\n}\n\nexport const ChartBox = ({ title, description, error, children, className, headerClassName, contentClassName }: ChartBox) => {\n return (\n <Card className={cn('shadow-sm border dark:border-[#3e3e3e]', className)}>\n {(title || description) && (\n <div className={cn('p-4 h-[60px]', headerClassName)}>\n {title && <div>{title}</div>}\n {description && <div className=\"text-xs\">{description}</div>}\n </div>\n )}\n <div className={cn('px-2 pb-5', contentClassName)}>{error ? <div className=\"text-red-600\">{error}</div> : children}</div>\n </Card>\n );\n};\n","import React from 'react';\nimport { Color, CurveType, CustomTooltipProps, LineChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type LineChartCard = ChartBox & {\n type?: 'LineChartCard';\n categories?: string[];\n index?: string;\n curveType?: CurveType;\n colors?: (Color | string)[];\n showLegend?: boolean;\n showGridLines?: boolean;\n showXAxis?: boolean;\n showYAxis?: boolean;\n startEndOnly?: boolean;\n showTooltip?: boolean;\n showAnimation?: boolean;\n autoMinValue?: boolean;\n valueFormatter?: ValueFormatter;\n customTooltip?: React.ComponentType<CustomTooltipProps>;\n};\n\nexport const LineChartCard = (props: LineChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n curveType = 'linear',\n colors = ['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue'],\n showLegend = false,\n showGridLines = false,\n chartClassName,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n showTooltip = true,\n showAnimation = true,\n autoMinValue = true,\n valueFormatter = (number) => `${number}`,\n customTooltip\n } = props;\n\n return (\n <ChartBox {...props}>\n <LineChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={colors}\n valueFormatter={valueFormatter}\n showLegend={showLegend}\n showGridLines={showGridLines}\n curveType={curveType}\n showXAxis={showXAxis}\n showYAxis={showYAxis}\n startEndOnly={startEndOnly}\n showTooltip={showTooltip}\n showAnimation={showAnimation}\n autoMinValue={autoMinValue}\n customTooltip={customTooltip}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { AreaChart, Color, CurveType, CustomTooltipProps, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type AreaChartCard = ChartBox & {\n type?: 'AreaChartCard';\n categories?: string[];\n index?: string;\n curveType?: CurveType;\n colors?: (Color | string)[];\n showLegend?: boolean;\n showGridLines?: boolean;\n stack?: boolean;\n showXAxis?: boolean;\n showYAxis?: boolean;\n startEndOnly?: boolean;\n showTooltip?: boolean;\n showAnimation?: boolean;\n autoMinValue?: boolean;\n valueFormatter?: ValueFormatter;\n customTooltip?: React.ComponentType<CustomTooltipProps>\n};\n\n\nexport const AreaChartCard = (props: AreaChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n curveType = 'linear',\n colors = ['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue'],\n showLegend = false,\n showGridLines = false,\n stack = false,\n chartClassName,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n showTooltip = true,\n showAnimation = true,\n autoMinValue = true,\n valueFormatter = (number) => `${number}`,\n customTooltip,\n } = props;\n\n return (\n <ChartBox {...props}>\n <AreaChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={colors}\n valueFormatter={valueFormatter}\n showLegend={showLegend}\n showGridLines={showGridLines}\n stack={stack}\n curveType={curveType}\n showXAxis={showXAxis}\n showYAxis={showYAxis}\n startEndOnly={startEndOnly}\n showTooltip={showTooltip}\n showAnimation={showAnimation}\n autoMinValue={autoMinValue}\n customTooltip={customTooltip}\n />\n </ChartBox>\n );\n};\n\n","import React from 'react';\nimport { DonutChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type DonutChartCard = ChartBox & {\n type?: 'DonutChartCard';\n categories?: string[];\n index?: string;\n valueFormatter?: ValueFormatter;\n showLabel?: boolean;\n variant?: 'donut' | 'pie';\n showAnimation?: boolean;\n};\n\nexport const DonutChartCard = (props: DonutChartCard) => {\n const { data = [], categories = ['value'], index = 'name', valueFormatter = (number) => `${number}`, showLabel = true, variant = 'donut', chartClassName, showAnimation = true } = props;\n const category = categories[0];\n return (\n <ChartBox {...props}>\n <DonutChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n category={category}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n showLabel={showLabel}\n variant={variant}\n showAnimation={showAnimation}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type CountCard = ChartBox & {\n type?: 'CountCard';\n summedColumnIndex?: string;\n};\n\nexport const CountCard = (props: CountCard) => {\n if (!props.data?.length) {\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 text-2xl overflow-auto\", props.chartClassName)}>\n <span className=\"text-gray-400\">No data</span>\n </div>\n </ChartBox>\n );\n }\n\n if (!props.summedColumnIndex) {\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 text-2xl overflow-auto\", props.chartClassName)}>\n <span className=\"text-gray-400 text-sm\">\n set <span className=\"font-bold\">summedColumnIndex</span> to sum up values\n </span>\n </div>\n </ChartBox>\n );\n }\n\n const sum = props.data.reduce((acc, cur) => {\n const v = cur[props.summedColumnIndex];\n if (typeof v == 'number') {\n return acc + v;\n } else {\n return acc;\n }\n }, 0);\n\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 font-bold text-2xl overflow-auto\", props.chartClassName)}>{sum}</div>\n </ChartBox>\n );\n};","import React from 'react';\nimport { ChartBox } from '../ChartBox';\nimport { JSONTable } from '../../JSONTable';\nimport { cn } from '../../../lib/utils';\n\nexport type TableCard = ChartBox & {\n type?: 'TableCard';\n columnOptions?: {\n [key: string]: {\n label: string;\n hidden: boolean;\n }\n }\n}\n\nexport const TableCard = (props: TableCard) => {\n const { data = [], columnOptions = {}, chartClassName } = props;\n return (\n <ChartBox {...props}>\n {data?.length > 0\n ? <JSONTable dataSource={data} columnOptions={columnOptions} className={cn(\"h-[256px]\", chartClassName)} />\n : <div className={cn(\"h-[256px] flex justify-center items-center text-gray-400\", chartClassName)}>No data</div>\n }\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { AreaChart, LineChart, Text, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { SkeletonBox } from '../../Common/SkeletonBox';\nimport { cn } from '../../../lib/utils';\n\nexport type KPICard = ChartBox & {\n type?: 'KPICard';\n categories?: string[];\n index?: string;\n chartType?: 'area' | 'line';\n curveType?: 'linear' | 'step' | 'monotone';\n metricTitle?: string;\n metric?: string | number;\n valueFormatter?: ValueFormatter;\n loading?: boolean;\n};\n\nexport const KPICard = (props: KPICard) => {\n const { metricTitle, metric, chartType = 'area', data = [], categories = ['value'], index = 'date', valueFormatter = (number) => `${number}`, curveType = 'linear', loading, chartClassName } = props;\n\n if (loading) {\n return (\n <ChartBox {...props}>\n <div className=\"mt-4 space-x-6 px-2 flex items-center\">\n <div className=\"w-auto\">\n <Text className=\"whitespace-nowrap\">Loading...</Text>\n <div className=\"font-bold text-3xl\">-</div>\n </div>\n <SkeletonBox className=\"flex-col w-full\" skClassName=\"h-[100px] overflow-hidden\" line={1} />\n </div>\n </ChartBox>\n );\n }\n\n const ChartComp = chartType === 'area' ? AreaChart : LineChart;\n\n return (\n <ChartBox {...props}>\n <div className=\"mt-4 space-x-6 px-2 flex items-center\">\n <div className=\"w-auto\">\n <Text className=\"whitespace-nowrap\">{metricTitle}</Text>\n <div className=\"font-bold text-3xl\">{metric ?? '-'}</div>\n </div>\n <ChartComp\n className={cn('h-[100px] overflow-hidden', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n curveType={curveType}\n showXAxis={false}\n showGridLines={false}\n startEndOnly={true}\n showYAxis={false}\n showLegend={false}\n autoMinValue={true}\n showAnimation={true}\n />\n </div>\n </ChartBox>\n );\n};\n"]}
1
+ {"version":3,"sources":["../components/JSONMetricsView/index.tsx","../components/JSONMetricsView/BarChartCard/index.tsx","../components/JSONMetricsView/ChartBox/index.tsx","../components/JSONMetricsView/LineChartCard/index.tsx","../components/JSONMetricsView/AreaChartCard/index.tsx","../components/JSONMetricsView/DonutChartCard/index.tsx","../components/JSONMetricsView/CountCard/index.tsx","../components/JSONMetricsView/TableCard/index.tsx","../components/JSONMetricsView/KPICard/index.tsx"],"names":["React","AreaChart","LineChart"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Col, Grid } from '@tremor/react';\nimport { BarChartCard } from './BarChartCard';\nimport { LineChartCard } from './LineChartCard';\nimport { AreaChartCard } from './AreaChartCard';\nimport { DonutChartCard } from './DonutChartCard';\nimport { CountCard } from './CountCard';\nimport { TableCard } from './TableCard';\nimport { KPICard } from './KPICard';\n\nexport type JSONMetricsViewType = AreaChartCard | LineChartCard | BarChartCard | DonutChartCard | CountCard | TableCard | KPICard;\n\nconst components = {\n AreaChartCard,\n LineChartCard,\n BarChartCard,\n DonutChartCard,\n CountCard,\n TableCard,\n KPICard,\n};\n\nconst JSONMetricsView = ({ data }: { data: JSONMetricsViewType[] }) => {\n return (\n <Grid numItems={1} numItemsSm={1} numItemsLg={2} numItemsMd={2} className=\"gap-2\">\n {data.map((item, index) => {\n const Component = components[item.type];\n return (\n <Col key={index} numColSpanSm={1} numColSpanMd={item.numColSpanMd ?? 1}>\n {/* @ts-ignore */}\n <Component {...item} />\n </Col>\n );\n })}\n </Grid>\n );\n};\n\nexport const MetricsView = ({ data }: { data: JSONMetricsViewType }) => {\n const Comp = components[data.type];\n // @ts-ignore\n return <Comp {...data} />;\n};\n\nexport { JSONMetricsView };\n","import React from 'react';\nimport { BarChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type BarChartCard = ChartBox & {\n type?: 'BarChartCard';\n categories?: string[];\n index?: string;\n valueFormatter?: ValueFormatter;\n showLegend?: boolean;\n showGridLines?: boolean;\n stack?: boolean;\n showAnimation?: boolean;\n};\n\nexport const BarChartCard = (props: BarChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n valueFormatter = (number) => `${number}`,\n showLegend = false,\n showGridLines = false,\n stack = false,\n chartClassName,\n showAnimation = true,\n } = props;\n\n return (\n <ChartBox {...props}>\n <BarChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n yAxisWidth={48}\n showLegend={showLegend}\n showGridLines={showGridLines}\n stack={stack}\n showAnimation={showAnimation}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { cn } from '../../../lib/utils';\nimport { Card } from '@nextui-org/react';\n\nexport interface ChartBox {\n title?: React.ReactNode;\n description?: string;\n error?: string;\n data?: {\n [key: string]: any;\n }[];\n children?: React.ReactNode;\n gridH?: number; // grid units, not pixels\n numColSpanMd?: number;\n className?: string;\n headerClassName?: string;\n contentClassName?: string;\n chartClassName?: string;\n}\n\nexport const ChartBox = ({ title, description, error, children, className, headerClassName, contentClassName }: ChartBox) => {\n return (\n <Card className={cn('shadow-sm rounded-lg border dark:border-[#3e3e3e]', className)}>\n {(title || description) && (\n <div className={cn('p-4 h-[60px]', headerClassName)}>\n {title && <div>{title}</div>}\n {description && <div className=\"text-xs\">{description}</div>}\n </div>\n )}\n <div className={cn('px-2 pb-5', contentClassName)}>{error ? <div className=\"text-red-600\">{error}</div> : children}</div>\n </Card>\n );\n};\n","import React from 'react';\nimport { Color, CurveType, CustomTooltipProps, LineChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type LineChartCard = ChartBox & {\n type?: 'LineChartCard';\n categories?: string[];\n index?: string;\n curveType?: CurveType;\n colors?: (Color | string)[];\n showLegend?: boolean;\n showGridLines?: boolean;\n showXAxis?: boolean;\n showYAxis?: boolean;\n startEndOnly?: boolean;\n showTooltip?: boolean;\n showAnimation?: boolean;\n autoMinValue?: boolean;\n valueFormatter?: ValueFormatter;\n customTooltip?: React.ComponentType<CustomTooltipProps>;\n};\n\nexport const LineChartCard = (props: LineChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n curveType = 'linear',\n colors = ['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue'],\n showLegend = false,\n showGridLines = false,\n chartClassName,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n showTooltip = true,\n showAnimation = true,\n autoMinValue = true,\n valueFormatter = (number) => `${number}`,\n customTooltip\n } = props;\n\n return (\n <ChartBox {...props}>\n <LineChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={colors}\n valueFormatter={valueFormatter}\n showLegend={showLegend}\n showGridLines={showGridLines}\n curveType={curveType}\n showXAxis={showXAxis}\n showYAxis={showYAxis}\n startEndOnly={startEndOnly}\n showTooltip={showTooltip}\n showAnimation={showAnimation}\n autoMinValue={autoMinValue}\n customTooltip={customTooltip}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { AreaChart, Color, CurveType, CustomTooltipProps, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type AreaChartCard = ChartBox & {\n type?: 'AreaChartCard';\n categories?: string[];\n index?: string;\n curveType?: CurveType;\n colors?: (Color | string)[];\n showLegend?: boolean;\n showGridLines?: boolean;\n stack?: boolean;\n showXAxis?: boolean;\n showYAxis?: boolean;\n startEndOnly?: boolean;\n showTooltip?: boolean;\n showAnimation?: boolean;\n autoMinValue?: boolean;\n valueFormatter?: ValueFormatter;\n customTooltip?: React.ComponentType<CustomTooltipProps>\n};\n\n\nexport const AreaChartCard = (props: AreaChartCard) => {\n const {\n data = [],\n categories = ['value'],\n index = 'date',\n curveType = 'linear',\n colors = ['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue'],\n showLegend = false,\n showGridLines = false,\n stack = false,\n chartClassName,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n showTooltip = true,\n showAnimation = true,\n autoMinValue = true,\n valueFormatter = (number) => `${number}`,\n customTooltip,\n } = props;\n\n return (\n <ChartBox {...props}>\n <AreaChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={colors}\n valueFormatter={valueFormatter}\n showLegend={showLegend}\n showGridLines={showGridLines}\n stack={stack}\n curveType={curveType}\n showXAxis={showXAxis}\n showYAxis={showYAxis}\n startEndOnly={startEndOnly}\n showTooltip={showTooltip}\n showAnimation={showAnimation}\n autoMinValue={autoMinValue}\n customTooltip={customTooltip}\n />\n </ChartBox>\n );\n};\n\n","import React from 'react';\nimport { DonutChart, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type DonutChartCard = ChartBox & {\n type?: 'DonutChartCard';\n categories?: string[];\n index?: string;\n valueFormatter?: ValueFormatter;\n showLabel?: boolean;\n variant?: 'donut' | 'pie';\n showAnimation?: boolean;\n};\n\nexport const DonutChartCard = (props: DonutChartCard) => {\n const { data = [], categories = ['value'], index = 'name', valueFormatter = (number) => `${number}`, showLabel = true, variant = 'donut', chartClassName, showAnimation = true } = props;\n const category = categories[0];\n return (\n <ChartBox {...props}>\n <DonutChart\n className={cn('h-72 mt-4', chartClassName)}\n data={data}\n index={index}\n category={category}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n showLabel={showLabel}\n variant={variant}\n showAnimation={showAnimation}\n />\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { ChartBox } from '../ChartBox';\nimport { cn } from '../../../lib/utils';\n\nexport type CountCard = ChartBox & {\n type?: 'CountCard';\n summedColumnIndex?: string;\n};\n\nexport const CountCard = (props: CountCard) => {\n if (!props.data?.length) {\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 text-2xl overflow-auto\", props.chartClassName)}>\n <span className=\"text-gray-400\">No data</span>\n </div>\n </ChartBox>\n );\n }\n\n if (!props.summedColumnIndex) {\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 text-2xl overflow-auto\", props.chartClassName)}>\n <span className=\"text-gray-400 text-sm\">\n set <span className=\"font-bold\">summedColumnIndex</span> to sum up values\n </span>\n </div>\n </ChartBox>\n );\n }\n\n const sum = props.data.reduce((acc, cur) => {\n const v = cur[props.summedColumnIndex];\n if (typeof v == 'number') {\n return acc + v;\n } else {\n return acc;\n }\n }, 0);\n\n return (\n <ChartBox {...props}>\n <div className={cn(\"mt-2 ml-2 font-bold text-2xl overflow-auto\", props.chartClassName)}>{sum}</div>\n </ChartBox>\n );\n};","import React from 'react';\nimport { ChartBox } from '../ChartBox';\nimport { JSONTable } from '../../JSONTable';\nimport { cn } from '../../../lib/utils';\n\nexport type TableCard = ChartBox & {\n type?: 'TableCard';\n columnOptions?: {\n [key: string]: {\n label: string;\n hidden: boolean;\n }\n }\n}\n\nexport const TableCard = (props: TableCard) => {\n const { data = [], columnOptions = {}, chartClassName } = props;\n return (\n <ChartBox {...props}>\n {data?.length > 0\n ? <JSONTable dataSource={data} columnOptions={columnOptions} className={cn(\"h-[256px]\", chartClassName)} />\n : <div className={cn(\"h-[256px] flex justify-center items-center text-gray-400\", chartClassName)}>No data</div>\n }\n </ChartBox>\n );\n};\n","import React from 'react';\nimport { AreaChart, LineChart, Text, ValueFormatter } from '@tremor/react';\nimport { ChartBox } from '../ChartBox';\nimport { SkeletonBox } from '../../Common/SkeletonBox';\nimport { cn } from '../../../lib/utils';\n\nexport type KPICard = ChartBox & {\n type?: 'KPICard';\n categories?: string[];\n index?: string;\n chartType?: 'area' | 'line';\n curveType?: 'linear' | 'step' | 'monotone';\n metricTitle?: string;\n metric?: string | number;\n valueFormatter?: ValueFormatter;\n loading?: boolean;\n};\n\nexport const KPICard = (props: KPICard) => {\n const { metricTitle, metric, chartType = 'area', data = [], categories = ['value'], index = 'date', valueFormatter = (number) => `${number}`, curveType = 'linear', loading, chartClassName } = props;\n\n if (loading) {\n return (\n <ChartBox {...props}>\n <div className=\"mt-4 space-x-6 px-2 flex items-center\">\n <div className=\"w-auto\">\n <Text className=\"whitespace-nowrap\">Loading...</Text>\n <div className=\"font-bold text-3xl\">-</div>\n </div>\n <SkeletonBox className=\"flex-col w-full\" skClassName=\"h-[100px] overflow-hidden\" line={1} />\n </div>\n </ChartBox>\n );\n }\n\n const ChartComp = chartType === 'area' ? AreaChart : LineChart;\n\n return (\n <ChartBox {...props}>\n <div className=\"mt-4 space-x-6 px-2 flex items-center\">\n <div className=\"w-auto\">\n <Text className=\"whitespace-nowrap\">{metricTitle}</Text>\n <div className=\"font-bold text-3xl\">{metric ?? '-'}</div>\n </div>\n <ChartComp\n className={cn('h-[100px] overflow-hidden', chartClassName)}\n data={data}\n index={index}\n categories={categories}\n colors={['indigo', 'cyan', 'teal', 'green', 'yellow', 'orange', 'red', 'slate', 'violet', 'rose', 'pink', 'purple', 'blue']}\n valueFormatter={valueFormatter}\n curveType={curveType}\n showXAxis={false}\n showGridLines={false}\n startEndOnly={true}\n showYAxis={false}\n showLegend={false}\n autoMinValue={true}\n showAnimation={true}\n />\n </div>\n </ChartBox>\n );\n};\n"]}
@@ -1,7 +1,7 @@
1
- import { S as Store } from './root-C3lZnoCI.js';
1
+ import { S as Store } from './root-766ae985.js';
2
2
  import React from 'react';
3
3
  import * as react_hot_toast from 'react-hot-toast';
4
- import { P as PromiseState } from './PromiseState-yojg0WLR.js';
4
+ import { P as PromiseState } from './PromiseState-b0cc408e.js';
5
5
  import 'typed-emitter';
6
6
  import 'events';
7
7
 
package/dist/plugins.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  export { ToastPlugin } from './chunk-4YCP5CJ4.mjs';
2
- import { useStore, rootStore } from './chunk-WS43BV7Y.mjs';
3
- import './chunk-XJMRAPHI.mjs';
4
- import { cn } from './chunk-AIZ7XDNV.mjs';
5
- import { __spreadProps, __spreadValues } from './chunk-R4SQKVDQ.mjs';
2
+ import { useStore, rootStore } from './chunk-DZMNL4BZ.mjs';
3
+ import './chunk-HRWHDF2F.mjs';
4
+ import { cn } from './chunk-WYGQ3Y4R.mjs';
5
+ import { __spreadProps, __spreadValues } from './chunk-6F7H4PAA.mjs';
6
6
  import { makeAutoObservable } from 'mobx';
7
7
  import React from 'react';
8
8
  import { observer } from 'mobx-react-lite';
@@ -111,7 +111,9 @@ var DialogStore = class _DialogStore {
111
111
  this.title = "";
112
112
  this.size = "md";
113
113
  this.className = "";
114
- this.classNames = {};
114
+ this.classNames = {
115
+ base: "dark:bg-[#09090B] border dark:border-[#2c2c2c] rounded-lg shadow-md"
116
+ };
115
117
  this.content = "";
116
118
  this.isDismissable = true;
117
119
  Object.assign(this, args);
@@ -126,7 +128,9 @@ var DialogStore = class _DialogStore {
126
128
  this.content = "";
127
129
  this.size = "md";
128
130
  this.className = "";
129
- this.classNames = {};
131
+ this.classNames = {
132
+ base: "dark:bg-[#09090B] border dark:border-[#2c2c2c] rounded-lg shadow-md"
133
+ };
130
134
  this.isDismissable = true;
131
135
  }
132
136
  static show(v) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../module/Confirm/index.tsx","../module/Confirm/Provider.tsx","../module/Dialog/index.tsx","../module/Dialog/Provider.tsx","../module/PromiseStateGroup/index.tsx","../module/PromiseStateGroup/ui.tsx"],"names":["rootStore","React","makeAutoObservable","Modal","ModalBody","ModalContent","ModalHeader","observer","Provider_default"],"mappings":"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","sourcesContent":["import { Store } from \"../../store/standard/base\";\nimport { makeAutoObservable } from \"mobx\";\nimport Provider from \"./Provider\";\nimport React from \"react\";\n\nexport class ConfirmStore implements Store {\n sid = 'ConfirmStore';\n provider = () => <Provider />;\n\n isOpen: boolean = false;\n title?: string = '';\n description?: string = '';\n size: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | 'xs' | '3xl' | '4xl' | '5xl' = 'md';\n className: string = '';\n cancelText?: string = 'Cancel';\n okText?: string = 'Apply';\n\n constructor() {\n makeAutoObservable(this);\n }\n\n toggleOpen(val: boolean) {\n this.isOpen = val;\n }\n\n onOk() { }\n\n onCancel() { }\n\n show(confirmProps: Partial<ConfirmStore>) {\n Object.assign(this, confirmProps);\n this.toggleOpen(true);\n }\n\n close() {\n this.isOpen = false;\n this.title = '';\n this.description = '';\n }\n}\n","import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Button, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader } from '@nextui-org/react';\nimport { useStore } from \"../../store\";\nimport { ConfirmStore } from \".\";\nimport { cn } from \"../../lib/utils\";\n\nconst ConfirmModal = observer(() => {\n const rootStore = useStore();\n const confirmStore = rootStore.get(ConfirmStore);\n const { isOpen, title, description, size, className, cancelText, okText } = confirmStore;\n return (\n <Modal\n isOpen={isOpen}\n size={size}\n onOpenChange={(open: boolean) => {\n if (!open) {\n confirmStore.close();\n }\n }}\n >\n <ModalContent className={cn(\"max-h-screen overflow-auto\", className)}>\n {() => (\n <>\n {title && <ModalHeader className=\"flex flex-col gap-1\">{title}</ModalHeader>}\n <ModalBody>\n <div>{description}</div>\n </ModalBody>\n <ModalFooter>\n <Button\n color=\"primary\"\n variant=\"flat\"\n onClick={() => {\n confirmStore.close();\n confirmStore.onCancel();\n }}\n >\n {cancelText}\n </Button>\n <Button\n color=\"primary\"\n onPress={() => {\n confirmStore.close();\n confirmStore.onOk();\n }}\n >\n {okText}\n </Button>\n </ModalFooter>\n </>\n )}\n </ModalContent>\n </Modal>\n );\n});\n\nexport default ConfirmModal;","import React from \"react\";\nimport { makeAutoObservable } from \"mobx\";\nimport { rootStore } from \"../../store\";\nimport { Store } from \"../../store/standard/base\";\nimport Provider from \"./Provider\";\n\nexport class DialogStore implements Store {\n sid = \"DialogStore\";\n provider = () => <Provider />;\n\n isOpen = false;\n title = \"\";\n size: \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\" | \"full\" | \"xs\" | \"3xl\" | \"4xl\" | \"5xl\" = \"md\";\n className: string = \"\";\n classNames: Partial<{\n [key in \"wrapper\" | \"base\" | \"backdrop\" | \"header\" | \"body\" | \"footer\" | \"closeButton\"]: string;\n }> = {};\n content: React.ReactNode | ((props: any) => React.ReactNode) = \"\";\n isDismissable = true;\n\n constructor(args?: Partial<DialogStore>) {\n Object.assign(this, args);\n makeAutoObservable(this);\n }\n\n setData(v: Partial<DialogStore>) {\n Object.assign(this, v);\n }\n\n close() {\n this.isOpen = false;\n this.title = \"\";\n this.content = \"\";\n this.size = \"md\";\n this.className = \"\";\n this.classNames = {};\n this.isDismissable = true;\n }\n\n static show(v: Partial<DialogStore>) {\n const modal = rootStore.get(DialogStore);\n modal.setData({\n ...v,\n isOpen: true,\n });\n }\n\n static close() {\n const modal = rootStore.get(DialogStore);\n modal.close();\n }\n}\n","import React from \"react\";\nimport { Modal, ModalBody, ModalContent, ModalHeader } from \"@nextui-org/react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DialogStore } from \".\";\nimport { cn } from \"../../lib/utils\";\nimport { useStore } from \"../../store/index\";\n\nconst Dialog = observer(() => {\n const rootStore = useStore();\n const modal = rootStore.get(DialogStore);\n const { className, classNames, isOpen, title, size, content, isDismissable } = modal;\n const Content = typeof content === 'function' ? content : () => content;\n return (\n <Modal\n isOpen={isOpen}\n size={size}\n onOpenChange={(open: boolean) => {\n if (!open) {\n modal.close();\n }\n }}\n classNames={classNames}\n isDismissable={isDismissable}\n >\n <ModalContent className={cn(\"max-h-screen overflow-auto\", className)}>\n {() => (\n <>\n {title && <ModalHeader className=\"flex flex-col gap-1\">{title}</ModalHeader>}\n <ModalBody>\n <Content />\n </ModalBody>\n </>\n )}\n </ModalContent>\n </Modal>\n );\n});\n\nexport default Dialog;","import React from 'react';\nimport { PromiseState } from '../../store/standard/PromiseState';\nimport { DialogStore } from '../Dialog';\nimport { DialogContent, GroupOptions } from './ui';\n\nexport class PromiseStateGroup {\n group: PromiseState<any, any>[] = [];\n groupOptions: GroupOptions = [];\n\n constructor({ group, groupOptions = [] }: { group: PromiseState<any, any>[]; groupOptions: GroupOptions }) {\n Object.assign(this, {\n group,\n groupOptions,\n });\n }\n\n async call() {\n let result: any[] = [];\n let errMsg: string = '';\n this.group.forEach((p) => {\n Object.assign(p, {\n autoAlert: false,\n value: p.defaultValue,\n errMsg: '',\n });\n });\n for (let i = 0; i < this.group.length; i++) {\n const promiseState = this.group[i];\n const options = this.groupOptions[i];\n if (promiseState && options) {\n try {\n const args = options.args || [];\n const data = await promiseState.call(...args);\n result.push(data);\n } catch (e) {\n errMsg = e.message;\n if (errMsg?.includes('User rejected the request') || String(e).toLowerCase().includes('user rejected')) {\n errMsg = 'User rejected the request';\n }\n promiseState.errMsg = errMsg;\n break;\n }\n }\n }\n return {\n result,\n errMsg,\n };\n }\n\n async ui(dialogOptions?: Partial<DialogStore>) {\n DialogStore.show({\n title: '',\n size: 'md',\n content: <DialogContent group={this.group} groupOptions={this.groupOptions} />,\n isDismissable: false,\n ...(dialogOptions || {}),\n });\n\n const res = await this.call();\n return res;\n }\n\n closeUI() {\n DialogStore.close();\n }\n}\n\n","import React from 'react';\nimport { PromiseState } from '../../store/standard/PromiseState';\nimport { Spinner } from '@nextui-org/react';\nimport { Check, X } from 'lucide-react';\nimport { observer } from 'mobx-react-lite';\n\nexport type GroupOptions = {\n args?: any[];\n title: React.ReactNode;\n}[];\n\nexport const DialogContent = observer(({ group, groupOptions }: { group: PromiseState<any, any>[]; groupOptions: GroupOptions }) => {\n return (\n <div className=\"pb-4 space-y-4\">\n {group.map((promiseState, index) => {\n const uiOptions = groupOptions[index];\n return (\n <div key={index} className=\"w-full flex items-center justify-between\">\n {uiOptions?.title}\n <div>\n {promiseState.loading.value ? (\n <Spinner size=\"sm\" />\n ) : (\n <>\n {promiseState.value && <Check size={20} color=\"#605BFF\" />}\n {promiseState.errMsg && <X size={20} color=\"red\" />}\n </>\n )}\n </div>\n </div>\n );\n })}\n </div>\n );\n});\n"]}
1
+ {"version":3,"sources":["../module/Confirm/index.tsx","../module/Confirm/Provider.tsx","../module/Dialog/index.tsx","../module/Dialog/Provider.tsx","../module/PromiseStateGroup/index.tsx","../module/PromiseStateGroup/ui.tsx"],"names":["rootStore","React","makeAutoObservable","Modal","ModalBody","ModalContent","ModalHeader","observer","Provider_default"],"mappings":"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","sourcesContent":["import { Store } from \"../../store/standard/base\";\nimport { makeAutoObservable } from \"mobx\";\nimport Provider from \"./Provider\";\nimport React from \"react\";\n\nexport class ConfirmStore implements Store {\n sid = 'ConfirmStore';\n provider = () => <Provider />;\n\n isOpen: boolean = false;\n title?: string = '';\n description?: string = '';\n size: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | 'xs' | '3xl' | '4xl' | '5xl' = 'md';\n className: string = '';\n cancelText?: string = 'Cancel';\n okText?: string = 'Apply';\n\n constructor() {\n makeAutoObservable(this);\n }\n\n toggleOpen(val: boolean) {\n this.isOpen = val;\n }\n\n onOk() { }\n\n onCancel() { }\n\n show(confirmProps: Partial<ConfirmStore>) {\n Object.assign(this, confirmProps);\n this.toggleOpen(true);\n }\n\n close() {\n this.isOpen = false;\n this.title = '';\n this.description = '';\n }\n}\n","import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Button, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader } from '@nextui-org/react';\nimport { useStore } from \"../../store\";\nimport { ConfirmStore } from \".\";\nimport { cn } from \"../../lib/utils\";\n\nconst ConfirmModal = observer(() => {\n const rootStore = useStore();\n const confirmStore = rootStore.get(ConfirmStore);\n const { isOpen, title, description, size, className, cancelText, okText } = confirmStore;\n return (\n <Modal\n isOpen={isOpen}\n size={size}\n onOpenChange={(open: boolean) => {\n if (!open) {\n confirmStore.close();\n }\n }}\n >\n <ModalContent className={cn(\"max-h-screen overflow-auto\", className)}>\n {() => (\n <>\n {title && <ModalHeader className=\"flex flex-col gap-1\">{title}</ModalHeader>}\n <ModalBody>\n <div>{description}</div>\n </ModalBody>\n <ModalFooter>\n <Button\n color=\"primary\"\n variant=\"flat\"\n onClick={() => {\n confirmStore.close();\n confirmStore.onCancel();\n }}\n >\n {cancelText}\n </Button>\n <Button\n color=\"primary\"\n onPress={() => {\n confirmStore.close();\n confirmStore.onOk();\n }}\n >\n {okText}\n </Button>\n </ModalFooter>\n </>\n )}\n </ModalContent>\n </Modal>\n );\n});\n\nexport default ConfirmModal;","import React from \"react\";\nimport { makeAutoObservable } from \"mobx\";\nimport { rootStore } from \"../../store\";\nimport { Store } from \"../../store/standard/base\";\nimport Provider from \"./Provider\";\n\nexport class DialogStore implements Store {\n sid = \"DialogStore\";\n provider = () => <Provider />;\n\n isOpen = false;\n title = \"\";\n size: \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\" | \"full\" | \"xs\" | \"3xl\" | \"4xl\" | \"5xl\" = \"md\";\n className: string = \"\";\n classNames: Partial<{\n [key in \"wrapper\" | \"base\" | \"backdrop\" | \"header\" | \"body\" | \"footer\" | \"closeButton\"]: string;\n }> = {\n base: 'dark:bg-[#09090B] border dark:border-[#2c2c2c] rounded-lg shadow-md',\n };\n content: React.ReactNode | ((props: any) => React.ReactNode) = \"\";\n isDismissable = true;\n\n constructor(args?: Partial<DialogStore>) {\n Object.assign(this, args);\n makeAutoObservable(this);\n }\n\n setData(v: Partial<DialogStore>) {\n Object.assign(this, v);\n }\n\n close() {\n this.isOpen = false;\n this.title = \"\";\n this.content = \"\";\n this.size = \"md\";\n this.className = \"\";\n this.classNames = {\n base: 'dark:bg-[#09090B] border dark:border-[#2c2c2c] rounded-lg shadow-md',\n };\n this.isDismissable = true;\n }\n\n static show(v: Partial<DialogStore>) {\n const modal = rootStore.get(DialogStore);\n modal.setData({\n ...v,\n isOpen: true,\n });\n }\n\n static close() {\n const modal = rootStore.get(DialogStore);\n modal.close();\n }\n}\n","import React from \"react\";\nimport { Modal, ModalBody, ModalContent, ModalHeader } from \"@nextui-org/react\";\nimport { observer } from \"mobx-react-lite\";\nimport { DialogStore } from \".\";\nimport { cn } from \"../../lib/utils\";\nimport { useStore } from \"../../store/index\";\n\nconst Dialog = observer(() => {\n const rootStore = useStore();\n const modal = rootStore.get(DialogStore);\n const { className, classNames, isOpen, title, size, content, isDismissable } = modal;\n const Content = typeof content === 'function' ? content : () => content;\n return (\n <Modal\n isOpen={isOpen}\n size={size}\n onOpenChange={(open: boolean) => {\n if (!open) {\n modal.close();\n }\n }}\n classNames={classNames}\n isDismissable={isDismissable}\n >\n <ModalContent className={cn(\"max-h-screen overflow-auto\", className)}>\n {() => (\n <>\n {title && <ModalHeader className=\"flex flex-col gap-1\">{title}</ModalHeader>}\n <ModalBody>\n <Content />\n </ModalBody>\n </>\n )}\n </ModalContent>\n </Modal>\n );\n});\n\nexport default Dialog;","import React from 'react';\nimport { PromiseState } from '../../store/standard/PromiseState';\nimport { DialogStore } from '../Dialog';\nimport { DialogContent, GroupOptions } from './ui';\n\nexport class PromiseStateGroup {\n group: PromiseState<any, any>[] = [];\n groupOptions: GroupOptions = [];\n\n constructor({ group, groupOptions = [] }: { group: PromiseState<any, any>[]; groupOptions: GroupOptions }) {\n Object.assign(this, {\n group,\n groupOptions,\n });\n }\n\n async call() {\n let result: any[] = [];\n let errMsg: string = '';\n this.group.forEach((p) => {\n Object.assign(p, {\n autoAlert: false,\n value: p.defaultValue,\n errMsg: '',\n });\n });\n for (let i = 0; i < this.group.length; i++) {\n const promiseState = this.group[i];\n const options = this.groupOptions[i];\n if (promiseState && options) {\n try {\n const args = options.args || [];\n const data = await promiseState.call(...args);\n result.push(data);\n } catch (e) {\n errMsg = e.message;\n if (errMsg?.includes('User rejected the request') || String(e).toLowerCase().includes('user rejected')) {\n errMsg = 'User rejected the request';\n }\n promiseState.errMsg = errMsg;\n break;\n }\n }\n }\n return {\n result,\n errMsg,\n };\n }\n\n async ui(dialogOptions?: Partial<DialogStore>) {\n DialogStore.show({\n title: '',\n size: 'md',\n content: <DialogContent group={this.group} groupOptions={this.groupOptions} />,\n isDismissable: false,\n ...(dialogOptions || {}),\n });\n\n const res = await this.call();\n return res;\n }\n\n closeUI() {\n DialogStore.close();\n }\n}\n\n","import React from 'react';\nimport { PromiseState } from '../../store/standard/PromiseState';\nimport { Spinner } from '@nextui-org/react';\nimport { Check, X } from 'lucide-react';\nimport { observer } from 'mobx-react-lite';\n\nexport type GroupOptions = {\n args?: any[];\n title: React.ReactNode;\n}[];\n\nexport const DialogContent = observer(({ group, groupOptions }: { group: PromiseState<any, any>[]; groupOptions: GroupOptions }) => {\n return (\n <div className=\"pb-4 space-y-4\">\n {group.map((promiseState, index) => {\n const uiOptions = groupOptions[index];\n return (\n <div key={index} className=\"w-full flex items-center justify-between\">\n {uiOptions?.title}\n <div>\n {promiseState.loading.value ? (\n <Spinner size=\"sm\" />\n ) : (\n <>\n {promiseState.value && <Check size={20} color=\"#605BFF\" />}\n {promiseState.errMsg && <X size={20} color=\"red\" />}\n </>\n )}\n </div>\n </div>\n );\n })}\n </div>\n );\n});\n"]}
@@ -106,4 +106,4 @@ declare class RootStore<T extends EventMap = any> {
106
106
  }, ann?: any): T;
107
107
  }
108
108
 
109
- export { type BaseState as B, type EventMap as E, NumberState as N, RootStore as R, Store as S, ValueState as V, type StoreClass as a, StringState as b, BooleanState as c };
109
+ export { BaseState as B, EventMap as E, NumberState as N, RootStore as R, Store as S, ValueState as V, StoreClass as a, StringState as b, BooleanState as c };
package/dist/ui.mjs CHANGED
@@ -1,6 +1,6 @@
1
- export { SkeletonBox } from './chunk-HRYH37UI.mjs';
2
- import { cn } from './chunk-AIZ7XDNV.mjs';
3
- import './chunk-R4SQKVDQ.mjs';
1
+ export { SkeletonBox } from './chunk-WT2ARRCR.mjs';
2
+ import { cn } from './chunk-WYGQ3Y4R.mjs';
3
+ import './chunk-6F7H4PAA.mjs';
4
4
  import { Card } from '@nextui-org/react';
5
5
  import React, { useState, useEffect } from 'react';
6
6
  import copyToClipboard from 'copy-to-clipboard';
package/dist/utils.d.mts CHANGED
@@ -1,5 +1,6 @@
1
- import DataLoader from 'dataloader';
1
+ import * as _dexie from 'dexie';
2
2
  import { Table } from 'dexie';
3
+ import DataLoader from 'dataloader';
3
4
  import BigNumber from 'bignumber.js';
4
5
 
5
6
  declare class DexieCache {
@@ -9,13 +10,7 @@ declare class DexieCache {
9
10
  value: any;
10
11
  expiration: number;
11
12
  };
12
- }, any, {
13
- key: string;
14
- value: {
15
- value: any;
16
- expiration: number;
17
- };
18
- }>;
13
+ }, _dexie.IndexableType>;
19
14
  kv_get: DataLoader<string, {
20
15
  value: any;
21
16
  expiration: number;
package/dist/utils.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  export { cache } from './chunk-7MDKCI65.mjs';
2
2
  export { helper } from './chunk-Q3AD5RHQ.mjs';
3
3
  import './chunk-MGU3KYGC.mjs';
4
- import './chunk-R4SQKVDQ.mjs';
4
+ import './chunk-6F7H4PAA.mjs';
5
5
  //# sourceMappingURL=out.js.map
6
6
  //# sourceMappingURL=utils.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dappworks/kit",
3
- "version": "0.4.123",
3
+ "version": "0.4.125",
4
4
  "description": "",
5
5
  "main": "./dist/index.mjs",
6
6
  "types": "./dist/index.d.mts",