@dappworks/kit 0.4.123 → 0.4.124

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 (42) 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 +95 -21
  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 +4 -4
  31. package/dist/{root-C3lZnoCI.d.ts → root-766ae985.d.ts} +1 -1
  32. package/dist/ui.mjs +3 -3
  33. package/dist/utils.d.mts +3 -8
  34. package/dist/utils.mjs +1 -1
  35. package/package.json +1 -1
  36. package/dist/chunk-AIZ7XDNV.mjs.map +0 -1
  37. /package/dist/{PaginationState-Bmrrw0ky.d.ts → PaginationState-c19e621a.d.ts} +0 -0
  38. /package/dist/{chunk-R4SQKVDQ.mjs.map → chunk-6F7H4PAA.mjs.map} +0 -0
  39. /package/dist/{chunk-SVPD6PC6.mjs.map → chunk-7FF4BCFW.mjs.map} +0 -0
  40. /package/dist/{chunk-WS43BV7Y.mjs.map → chunk-DZMNL4BZ.mjs.map} +0 -0
  41. /package/dist/{chunk-QWHU3HBK.mjs.map → chunk-PPYYRQDD.mjs.map} +0 -0
  42. /package/dist/{chunk-HRYH37UI.mjs.map → chunk-WT2ARRCR.mjs.map} +0 -0
package/dist/form.mjs CHANGED
@@ -1,10 +1,10 @@
1
- import { useStore } from './chunk-WS43BV7Y.mjs';
2
- import { RootStore } from './chunk-XJMRAPHI.mjs';
1
+ import { useStore } from './chunk-DZMNL4BZ.mjs';
2
+ import { RootStore } from './chunk-HRWHDF2F.mjs';
3
3
  import { helper } from './chunk-Q3AD5RHQ.mjs';
4
4
  import { _ } from './chunk-MGU3KYGC.mjs';
5
- import { cn } from './chunk-AIZ7XDNV.mjs';
6
- import { __objRest, __spreadValues, __spreadProps } from './chunk-R4SQKVDQ.mjs';
7
- import React7, { useEffect, useMemo, useState, useCallback, useRef, createRef } from 'react';
5
+ import { cn } from './chunk-WYGQ3Y4R.mjs';
6
+ import { __objRest, __spreadValues, __spreadProps } from './chunk-6F7H4PAA.mjs';
7
+ import React7, { useEffect, useMemo, useState, useRef, useCallback, createRef } from 'react';
8
8
  import { Modal, ModalContent, ModalHeader, ModalBody, Checkbox, Input, Select, SelectItem, Button, Textarea, DatePicker, Chip, Card, Tabs, Tab } from '@nextui-org/react';
9
9
  import { Check, ChevronUp, ChevronDown } from 'lucide-react';
10
10
  import MonacoEditor from '@monaco-editor/react';
@@ -25,7 +25,16 @@ function CheckboxWidget({
25
25
  disabled,
26
26
  uiSchema
27
27
  }) {
28
- const { className, nextuiClassNames = {}, size = "sm", color = "primary", description, descriptionClassName } = options;
28
+ const {
29
+ className,
30
+ nextuiClassNames = {
31
+ base: "m-0 flex items-center justify-start w-full cursor-pointer rounded-lg gap-2 p-[13px] bg-transparent border dark:border-[#2c2c2c]"
32
+ },
33
+ size = "sm",
34
+ color = "primary",
35
+ description,
36
+ descriptionClassName
37
+ } = options;
29
38
  const { validate } = uiSchema;
30
39
  const [errMsg, setErrMsg] = useState("");
31
40
  const isInvalid = !!errMsg;
@@ -33,9 +42,7 @@ function CheckboxWidget({
33
42
  Checkbox,
34
43
  {
35
44
  className: cn("w-full", className),
36
- classNames: __spreadProps(__spreadValues({}, nextuiClassNames), {
37
- base: cn("m-0 flex items-center justify-start w-full", "cursor-pointer rounded-lg gap-2 p-[13px] bg-content2 border-1 border-transparent", nextuiClassNames.base, value ? `border-${color}` : "")
38
- }),
45
+ classNames: nextuiClassNames,
39
46
  defaultSelected: value,
40
47
  isDisabled: disabled,
41
48
  icon: /* @__PURE__ */ React7.createElement(Check, { className: "bg-white dark:bg-black" }),
@@ -60,9 +67,24 @@ function CheckboxWidget({
60
67
  function InputWidget(props) {
61
68
  var _a;
62
69
  const { onChange, options, label, value, required, disabled, uiSchema } = props;
63
- const { className, nextuiClassNames, labelPlacement = "inside", size = "sm", inputType = "text", color, variant, radius, startContent, endContent, description } = options;
70
+ const {
71
+ className,
72
+ nextuiClassNames = {
73
+ inputWrapper: "rounded-lg shadow-none border dark:border-[#2c2c2c] !bg-transparent data-[hover=true]:!bg-default-50 group-data-[focus=true]:!bg-transparent"
74
+ },
75
+ labelPlacement = "inside",
76
+ size = "sm",
77
+ inputType = "text",
78
+ color,
79
+ variant,
80
+ radius,
81
+ startContent,
82
+ endContent,
83
+ description
84
+ } = options;
64
85
  const { requiredErrMsg, validate } = uiSchema;
65
86
  const placeholder = (_a = uiSchema["ui:options"]) == null ? void 0 : _a.placeholder;
87
+ const isFirstChecked = useRef(true);
66
88
  return /* @__PURE__ */ React7.createElement(
67
89
  Input,
68
90
  {
@@ -84,6 +106,10 @@ function InputWidget(props) {
84
106
  endContent,
85
107
  onChange: (e) => onChange(e.target.value),
86
108
  validate: () => {
109
+ if (isFirstChecked.current) {
110
+ isFirstChecked.current = false;
111
+ return true;
112
+ }
87
113
  if (value === "" && required) {
88
114
  return requiredErrMsg || "This field is required";
89
115
  }
@@ -102,7 +128,8 @@ function SelectWidget(props) {
102
128
  const {
103
129
  className,
104
130
  nextuiClassNames = {
105
- popoverContent: "rounded-lg shadow-md border dark:border-[#3e3e3e]"
131
+ trigger: "rounded-lg bg-transparent shadow-none border dark:border-[#2c2c2c] data-[hover=true]:bg-default-50",
132
+ popoverContent: "rounded-lg shadow-md border border-[#F4F4F5] dark:border-[#3e3e3e]"
106
133
  },
107
134
  listboxProps = {
108
135
  itemClasses: {
@@ -175,7 +202,20 @@ function MultipleSelectWidget(props) {
175
202
  var _a;
176
203
  const { onChange, options, label, value, required, uiSchema = {} } = props;
177
204
  const { selectOptions = [], requiredErrMsg, validate } = uiSchema;
178
- const { className, nextuiClassNames = {}, labelPlacement = "inside", listboxProps = {}, size = "sm", color, description, renderValue = DefaultRenderValue } = options;
205
+ const {
206
+ className,
207
+ nextuiClassNames = {
208
+ base: "w-full",
209
+ trigger: "min-h-12 py-1 rounded-lg bg-transparent shadow-none border dark:border-[#2c2c2c] data-[hover=true]:bg-default-50",
210
+ popoverContent: "rounded-lg shadow-md border dark:border-[#3e3e3e]"
211
+ },
212
+ labelPlacement = "inside",
213
+ listboxProps = {},
214
+ size = "sm",
215
+ color,
216
+ description,
217
+ renderValue = DefaultRenderValue
218
+ } = options;
179
219
  const placeholder = ((_a = uiSchema["ui:options"]) == null ? void 0 : _a.placeholder) || "Select an option";
180
220
  const selectedKeys = useMemo(() => {
181
221
  return value ? value.split(",") : [];
@@ -215,11 +255,7 @@ function MultipleSelectWidget(props) {
215
255
  checkValue(_v);
216
256
  },
217
257
  items: selectOptions,
218
- classNames: __spreadValues({
219
- base: "w-full",
220
- trigger: "min-h-12 py-1",
221
- popoverContent: "rounded-lg shadow-md border dark:border-[#3e3e3e]"
222
- }, nextuiClassNames),
258
+ classNames: nextuiClassNames,
223
259
  listboxProps: __spreadValues({
224
260
  itemClasses: {
225
261
  base: [
@@ -893,11 +929,11 @@ var CollapsibleBox = ({ formKey, title, titleBoxCss, formState, submitButtonProp
893
929
  return /* @__PURE__ */ React7.createElement("div", { id: `form-${formKey}` }, /* @__PURE__ */ React7.createElement(
894
930
  "div",
895
931
  {
896
- className: "mt-5 mb-[10px] flex justify-between items-center cursor-pointer border-t-[1px solid #E5E5EA] py-[5px] hover:bg-[#F2F2F7] dark:hover:bg-gray-900",
932
+ className: "mt-5 mb-[10px] flex justify-between items-center cursor-pointer border-t-[1px solid #E5E5EA] py-[5px]",
897
933
  onClick: () => setOpened((o) => !o)
898
934
  },
899
935
  /* @__PURE__ */ React7.createElement("div", { className: cn("text-gray-900 dark:text-gray-100 font-bold text-base", titleBoxCss) }, title),
900
- opened ? /* @__PURE__ */ React7.createElement(ChevronUp, null) : /* @__PURE__ */ React7.createElement(ChevronDown, null)
936
+ opened ? /* @__PURE__ */ React7.createElement(ChevronUp, { size: 18, className: "text-[#717179] dark:text-[#A1A1A9]" }) : /* @__PURE__ */ React7.createElement(ChevronDown, { size: 18, className: "text-[#717179] dark:text-[#A1A1A9]" })
901
937
  ), /* @__PURE__ */ React7.createElement("div", { className: cn("mt-2", opened ? "block" : "hidden") }, /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState }, submitButtonProps && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey, formState, buttonProps: submitButtonProps }), customButtonProps && /* @__PURE__ */ React7.createElement(CustomButton, { formKey, formState, buttonProps: customButtonProps }))));
902
938
  };
903
939
  var ListLayout = (props) => {
@@ -1006,9 +1042,25 @@ var JSONForm = (props) => {
1006
1042
  function TextareaWidget(props) {
1007
1043
  var _a;
1008
1044
  const { onChange, options, label, value, required, disabled, uiSchema } = props;
1009
- const { className, nextuiClassNames, labelPlacement = "inside", size = "md", minRows = 3, maxRows = 8, color, variant, radius, startContent, endContent, description } = options;
1045
+ const {
1046
+ className,
1047
+ nextuiClassNames = {
1048
+ inputWrapper: "rounded-lg shadow-none border dark:border-[#2c2c2c] !bg-transparent data-[hover=true]:!bg-default-50 group-data-[focus=true]:!bg-transparent"
1049
+ },
1050
+ labelPlacement = "inside",
1051
+ size = "md",
1052
+ minRows = 3,
1053
+ maxRows = 8,
1054
+ color,
1055
+ variant,
1056
+ radius,
1057
+ startContent,
1058
+ endContent,
1059
+ description
1060
+ } = options;
1010
1061
  const { requiredErrMsg, validate } = uiSchema;
1011
1062
  const placeholder = (_a = uiSchema["ui:options"]) == null ? void 0 : _a.placeholder;
1063
+ const isFirstChecked = useRef(true);
1012
1064
  return /* @__PURE__ */ React7.createElement(
1013
1065
  Textarea,
1014
1066
  {
@@ -1031,6 +1083,10 @@ function TextareaWidget(props) {
1031
1083
  endContent,
1032
1084
  onChange: (e) => onChange(e.target.value),
1033
1085
  validate: () => {
1086
+ if (isFirstChecked.current) {
1087
+ isFirstChecked.current = false;
1088
+ return true;
1089
+ }
1034
1090
  if (value === "" && required) {
1035
1091
  return requiredErrMsg || "This field is required";
1036
1092
  }
@@ -1044,9 +1100,22 @@ function TextareaWidget(props) {
1044
1100
  );
1045
1101
  }
1046
1102
  function DatePickerWidget({ label, options, value, required, disabled, uiSchema, onChange }) {
1047
- const { className, nextuiClassNames = { calendarContent: "min-w-fit" }, dateInputClassNames, labelPlacement = "inside", size = "sm", granularity = "day", color = "default", description } = options;
1103
+ const {
1104
+ className,
1105
+ nextuiClassNames = { calendarContent: "min-w-fit" },
1106
+ dateInputClassNames = {
1107
+ inputWrapper: "rounded-lg bg-transparent border dark:border-[#2c2c2c] hover:bg-default-50"
1108
+ },
1109
+ labelPlacement = "inside",
1110
+ size = "sm",
1111
+ granularity = "day",
1112
+ color = "default",
1113
+ description,
1114
+ variant
1115
+ } = options;
1048
1116
  const [date, setDate] = useState();
1049
1117
  const { requiredErrMsg, validate } = uiSchema;
1118
+ const isFirstChecked = useRef(true);
1050
1119
  useEffect(() => {
1051
1120
  if (value) {
1052
1121
  try {
@@ -1070,6 +1139,7 @@ function DatePickerWidget({ label, options, value, required, disabled, uiSchema,
1070
1139
  labelPlacement,
1071
1140
  color,
1072
1141
  granularity,
1142
+ variant,
1073
1143
  value: date,
1074
1144
  isRequired: required,
1075
1145
  description: description || "",
@@ -1081,6 +1151,10 @@ function DatePickerWidget({ label, options, value, required, disabled, uiSchema,
1081
1151
  }
1082
1152
  },
1083
1153
  validate: () => {
1154
+ if (isFirstChecked.current) {
1155
+ isFirstChecked.current = false;
1156
+ return true;
1157
+ }
1084
1158
  if (value === "" && required) {
1085
1159
  return requiredErrMsg || "This field is required";
1086
1160
  }