@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 +1 @@
1
- {"version":3,"sources":["../module/Core/Slot.tsx","../module/Core/Storage.tsx","../module/Core/Async.tsx"],"sourcesContent":["import { Store } from \"../../store/standard/base\";\nimport { RootStore } from \"../../store/root\";\nimport React, { ReactNode } from \"react\";\n\nexport class SlotPlugin implements Store {\n sid = \"SlotPlugin\";\n stype = \"Plugin\"\n autoObservable?: boolean = false;\n\n slotMap: Store[\"slots\"] = {};\n\n // SlotList = observer(() => {\n // const collection = RootStore.Get(Collection<Store[\"slot\"]>, { sid: \"SlotPlugin.slots\", args: { data: this.slotMap } });\n // //@ts-ignore\n // const Component = collection.current.Component;\n\n // return (\n // <div className=\"h-full flex flex-col md:flex-row text-sm\">\n // <div className=\"w-full md:w-[300px] space-y-1 pr-2 md:border-r-[1px] border-gray-200 dark:border-gray-700 overflow-auto\">\n // {Object.keys(collection.data).map((i) => (\n // <div key={i} className={cn(\"px-2 rounded-md hover:bg-green-600 hover:text-white cursor-pointer\", { \"bg-green-600 text-white\": collection.key === i })} onClick={() => collection.setKey(i)}>\n // {i}\n // </div>\n // ))}\n // </div>\n // <div className=\"mt-4 w-full md:w-[400px] px-4 overflow-auto md:mt-0 md:ml-4\">\n // {/* @ts-ignore */}\n // <Component {...collection.current.input} />\n // {/* @ts-ignore */}\n // {collection.current.input && (\n // <JSONSchemaForm\n // formState={getFormState({\n // uiSize: \"small\",\n // // @ts-ignore\n // data: collection.current.input,\n // onSubmit: (data) => {\n // console.log(data);\n // // @ts-ignore\n // collection.setValue(collection.key, { ...collection.current, input: data });\n // },\n // })}\n // />\n // )}\n // </div>\n // </div>\n // );\n // });\n\n // devtools = {\n // panels: [\n // {\n // title: \"Slot\",\n // render: this.SlotList,\n // },\n // ],\n // };\n\n onNewStore({ rootStore }: { rootStore: RootStore }) {\n Object.values(rootStore.instance).forEach((store) => {\n //@ts-ignore\n if (store.isSlotInit) return;\n if (store.slots) {\n //@ts-ignore\n store.isSlotInit = true;\n //@ts-ignore\n this.slotMap = { ...this.slotMap, ...store.slots };\n }\n });\n }\n\n toJSON() {\n return this.slotMap\n }\n\n static Slot = ({ name, ...props }: { name } & any): ReactNode => {\n const slotPlugin = RootStore.Get(SlotPlugin);\n const slot = slotPlugin.slotMap![name];\n //@ts-ignore\n const Component: React.FC = slot?.render;\n if (!Component) {\n //@ts-ignore\n return <div></div>;\n }\n //@ts-ignore\n return <Component {...props} />;\n };\n\n constructor(args: Partial<SlotPlugin> = {}) {\n Object.assign(this, args);\n }\n}\n","\"use client\";\n\nimport { RootStore } from \"../../store/root\";\nimport { Store } from \"../../store/standard/base\";\nimport { makeAutoObservable, observable, toJS } from \"mobx\";\nimport { _ } from \"../../lib/lodash\";\n// import { AsyncStorage } from \"./Async\";\n\n// import { JSONForm } from \"../../components/JSONForm\"\n\nexport type Engine = {\n name: string;\n get(key): any;\n set(key, value): any;\n remove(key): any;\n};\n\nexport type DataGroup = Record<\n string,\n {\n index: StorageParams<any>;\n children: Record<string, DataGroup>;\n }\n>;\n\nexport type StorageParams<T> = {\n key: string;\n value?: T;\n engine?: Engine;\n _value?: T;\n defaultValue?: T;\n debounce?: number;\n onInit?(value: T): void;\n debounceFn?: any;\n onDebounce?(value: T): void;\n onSet?(value: T): void;\n set?: (value: T) => void;\n setValue?: (value: T) => void;\n reset?: () => void;\n listen?: (func?: (args: { key: string; value: any }) => void) => void;\n};\nconst memory = {};\n\nexport class StoragePlugin implements Store {\n sid = 'StoragePlugin';\n stype = \"Plugin\"\n autoObservable?: boolean = true;\n static engines = {\n memory: {\n name: 'memory',\n get(key) {\n return memory[key];\n },\n set(key, value) {\n return (memory[key] = value);\n },\n remove(key) {\n delete memory[key];\n return;\n },\n },\n localStorage: {\n name: 'localStorage',\n get(key) {\n return StoragePlugin.safeParse(globalThis.localStorage.getItem(key));\n },\n set(key, value) {\n return globalThis.localStorage.setItem(key, JSON.stringify(value));\n },\n remove(key) {\n return globalThis.localStorage.removeItem(key);\n },\n },\n // asyncStorage: {\n // name: 'asyncStorage',\n // get(key) {\n // return RootStore.Get(AsyncStorage).get(key);\n // },\n // set(key, value) {\n // return RootStore.Get(AsyncStorage).set(key, value);\n // },\n // remove(key) {\n // return RootStore.Get(AsyncStorage).remove(key);\n // },\n // },\n };\n engines = StoragePlugin.engines;\n // debounceFn: (val: any) => void;\n // data = {};\n dataMeta: Record<string, StorageParams<any>> = {};\n\n get dataGroup() {\n const tree = Object.values(this.dataMeta).reduce((p, c) => {\n const current = this.dataMeta[c.key];\n const path = c.key;\n const parentPath = path\n .split('.')\n .slice(0, path.length - 1)\n .join('.');\n const key = path.split('.').pop();\n if (!p[parentPath]) {\n const topPath = !parentPath.includes('.');\n _.set(p, parentPath + (topPath ? `.${key}` : ``), {\n ...current,\n toJSON() {\n return typeof current.value === 'object' ? JSON.stringify(toJS(current.value), null, 2) : current.value;\n },\n });\n }\n\n return p;\n }, {});\n\n return tree;\n }\n\n // StorageTools = observer(() => {\n // const collection = RootStore.Get(Collection<any>, { sid: 'StoragePlugin.current', args: { data: this.dataGroup } });\n // const data = collection.current as Record<string, StorageParams<any>>;\n\n // const dataConfig = Object.entries(data).reduce((p, [key, value]) => {\n // p[key] = {\n // title: `${key} (${value.engine.name})`,\n // };\n // return p;\n // }, {});\n\n // return (\n // <div className=\"h-full flex flex-col md:flex-row text-sm\">\n // <div className=\"w-full md:w-[300px] space-y-1 pr-2 md:border-r-[1px] border-gray-200 dark:border-gray-700 overflow-auto\">\n // {Object.keys(collection.data)\n // .sort((a, b) => a.length - b.length)\n // .map((i) => (\n // <div\n // key={i}\n // className={cn('px-2 rounded-md hover:bg-green-600 hover:text-white cursor-pointer', { 'bg-green-600 text-white': collection.key === i })}\n // onClick={() => collection.setKey(i)}\n // >\n // {i}\n // </div>\n // ))}\n // </div>\n // <div className=\"mt-4 w-full overflow-auto md:mt-0\">\n // <JSONForm\n // formData={{ data: JSON.parse(JSON.stringify(data, null, 2)) }}\n // formConfig={{\n // data: dataConfig,\n // }}\n // onChange={(v) => {\n // Object.entries(v.data).forEach(([key, value]) => {\n // data[key].set(StoragePlugin.safeParse(value));\n // });\n // return v;\n // }}\n // // onSet={(v) => {\n // // //TODO: only udpate changed filed\n // // Object.entries(v).forEach(([key, value]) => {\n // // data[key].set(StoragePlugin.safeParse(value));\n // // });\n // // return v;\n // // }}\n // />\n // </div>\n // </div>\n // );\n // });\n\n // devtools = {\n // panels: [\n // {\n // title: 'Storage',\n // render: this.StorageTools,\n // },\n // ],\n // };\n\n static safeParse(val: any) {\n try {\n return JSON.parse(val);\n } catch (error) {\n return val;\n }\n }\n\n set = ({ key, value, engine }: { key: string; value: any; engine?: Engine }) => {\n this.dataMeta[key]._value = value;\n const _engine = engine || this.dataMeta[key]?.engine || this.engines.memory;\n\n //@ts-ignore\n RootStore.init().events.emit(`storage.${key}.update`, { key, value });\n if (this.dataMeta[key].onSet) this.dataMeta[key].onSet(value);\n return _engine.set(key, value);\n };\n\n\n get = <T,>({ key, value, defaultValue, engine = this.engines.memory, ...other }: StorageParams<T>): StorageParams<T> => {\n if (typeof window == 'undefined' && engine.name == 'localStorage') {\n engine = this.engines.memory;\n }\n\n if (value && !defaultValue) {\n defaultValue = value\n }\n const that = this;\n if (!this.dataMeta[key]) {\n const exists = engine.get(key);\n if (engine.name == 'asyncStorage') {\n console.log('get', key, exists);\n }\n if (!exists) {\n engine.set(key, defaultValue);\n }\n const _value = engine.get(key);\n\n this.dataMeta[key] = makeAutoObservable({\n key,\n engine,\n defaultValue,\n ...other,\n _value,\n get value() {\n return that.dataMeta[key]._value;\n },\n set value(value) {\n that.set({ key, value });\n other.debounce && that.dataMeta[key].debounceFn(value)\n },\n set(value) {\n that.set({ key, value });\n other.debounce && that.dataMeta[key].debounceFn(value)\n },\n setValue(value) {\n that.set({ key, value });\n },\n reset() {\n that.set({ key, value: defaultValue });\n },\n toJSON() {\n return that.dataMeta[key]._value;\n },\n listen(func) {\n //@ts-ignore\n RootStore.init().events.on(`storage.${key}.update`, (args) => func(args));\n },\n debounceFn: _.debounce((value) => {\n other?.onDebounce(value);\n }, other.debounce)\n });\n if (this.dataMeta[key].onInit) {\n this.dataMeta[key].onInit(this.dataMeta[key].value);\n }\n }\n\n //@ts-ignore\n return this.dataMeta[key];\n };\n\n remove = ({ key, engine = this.engines.memory }: { key?: string; engine?: Engine }): void => {\n engine.remove(key);\n };\n\n static Get<T>(args: StorageParams<T>): StorageParams<T> {\n const storagePlugin = RootStore.Get(StoragePlugin);\n return storagePlugin.get(args);\n }\n\n static Input<T, U extends StorageParams<T>>(args: U): U {\n const storagePlugin = RootStore.Get(StoragePlugin);\n const data = storagePlugin.get(args);\n //@ts-ignore\n return observable({\n ...args,\n ...data,\n get value() {\n return data.value;\n },\n set value(value) {\n data.set(value);\n },\n onChange(e) {\n data.set(e.target.value);\n },\n });\n }\n\n static Custom<T, U extends StorageParams<T>>(args: U): U & StorageParams<T> {\n const storagePlugin = RootStore.Get(StoragePlugin);\n const { value, _value, ...others } = args;\n const data = storagePlugin.get(args);\n //@ts-ignore\n\n return observable({\n ...args,\n ...data,\n get value() {\n return data.value;\n },\n set value(value) {\n data.set(value);\n },\n onChange(e) {\n data.set(e.target.value);\n },\n });\n }\n\n constructor(args: Partial<StoragePlugin> = {}) {\n Object.assign(this, args);\n }\n}\n","import axios from \"axios\";\nimport { _ } from \"../../lib/lodash\";\nimport { RootStore } from \"../../store/root\";\nimport { Store } from \"../../store/standard/base\";\nimport { PromiseState } from \"../../store/standard/PromiseState\";\nimport { StoragePlugin } from \"./Storage\";\n\n\nexport const jwt = StoragePlugin.Get({\n key: \"asyncStorage.token\",\n value: \"\",\n engine: StoragePlugin.engines.localStorage,\n});\n\nexport class AsyncStorage implements Store {\n sid = \"AsyncStorage\";\n stype = \"Plugin\"\n url = `https://dappkit-async-api.deno.dev/project/${process.env.NEXT_PUBLIC_PROJECT_ID}`;\n forceUpdate = false;\n autoObservable?: boolean = true;\n\n data = new PromiseState({\n context: this,\n value: {},\n function: async () => {\n const res = await axios.get(this.url, {\n params: { forceUpdate: this.forceUpdate },\n });\n //@ts-ignore\n return { ...this.data.value, ...res.data };\n },\n }).on(\"data\", (data) => {\n this.syncStorage();\n });\n\n syncStorage() {\n const data = this.data.value;\n const storage = RootStore.Get(StoragePlugin);\n\n Object.keys(data).map((key) => {\n const value = data[key];\n const target = storage.dataMeta[key];\n if (target) {\n target.set(value);\n }\n });\n }\n\n // devtools = {\n // panels: [\n // {\n // title: \"AsyncStorage\",\n // render: observer(() => {\n\n // return (\n // <div className=\"h-full w-full overflow-auto\">\n // <Input\n // placeholder=\"Please enter your asyncStorage token here\"\n // value={jwt.value}\n // onChange={(e) => jwt.set(e.target.value)}\n // />\n // <JSONEditor\n // className=\"h-full\"\n // initialJson={JSON.stringify(toJS(this.data.value), null, 2)}\n // onChange={(data) => {\n // console.log(\"onChange\", data);\n // helper.deepMerge(this.data.value, data);\n // this.syncStorage();\n // }}\n // onSubmit={async (data) => {\n // if (!jwt.value) {\n // RootStore.Get(ToastPlugin).error(\n // \"Please enter your asyncStorage token first\",\n // );\n // } else {\n // if (!process.env.NEXT_PUBLIC_PROJECT_ID) {\n // RootStore.Get(ToastPlugin).error(\n // \"Please set your project id first\",\n // );\n // }\n // await axios.post(\n // `https://dappkit-async-api.deno.dev/update/${process.env.NEXT_PUBLIC_PROJECT_ID}`,\n // data,\n // {\n // headers: {\n // Authorization: `${jwt.value}`,\n // },\n // },\n // );\n // }\n // this.forceUpdate = true;\n // await this.data.wait({ call: true });\n // RootStore.Get(ToastPlugin).success(\"Update success\");\n // console.log(\"onSubmit\", data);\n // }}\n // />\n // </div>\n // );\n // }),\n // },\n // ],\n // };\n\n constructor(args: Partial<AsyncStorage> = {}) {\n Object.assign(this, args);\n }\n\n get(key) {\n return _.get(this.data.value, key);\n }\n\n async set(key, value) {\n _.set(this.data.value, key, value);\n }\n\n async remove(key) {\n _.remove(this.data.value, key);\n }\n\n onNewStore = ({\n rootStore,\n store,\n }: {\n rootStore: RootStore;\n store: Store;\n }) => {\n if (store.autoAsyncable) {\n this.makeAutoAsyncAble(store);\n }\n };\n\n async makeAutoAsyncAble(instance) {\n const data = await this.data.wait({ call: true });\n if (data[instance.sid]) {\n Object.assign(instance, data[instance.sid]);\n }\n }\n}\n"],"mappings":"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","names":["value"]}
1
+ {"version":3,"sources":["../module/Core/Slot.tsx","../module/Core/Storage.tsx","../module/Core/Async.tsx"],"names":["value"],"mappings":"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","sourcesContent":["import { Store } from \"../../store/standard/base\";\nimport { RootStore } from \"../../store/root\";\nimport React, { ReactNode } from \"react\";\n\nexport class SlotPlugin implements Store {\n sid = \"SlotPlugin\";\n stype = \"Plugin\"\n autoObservable?: boolean = false;\n\n slotMap: Store[\"slots\"] = {};\n\n // SlotList = observer(() => {\n // const collection = RootStore.Get(Collection<Store[\"slot\"]>, { sid: \"SlotPlugin.slots\", args: { data: this.slotMap } });\n // //@ts-ignore\n // const Component = collection.current.Component;\n\n // return (\n // <div className=\"h-full flex flex-col md:flex-row text-sm\">\n // <div className=\"w-full md:w-[300px] space-y-1 pr-2 md:border-r-[1px] border-gray-200 dark:border-gray-700 overflow-auto\">\n // {Object.keys(collection.data).map((i) => (\n // <div key={i} className={cn(\"px-2 rounded-md hover:bg-green-600 hover:text-white cursor-pointer\", { \"bg-green-600 text-white\": collection.key === i })} onClick={() => collection.setKey(i)}>\n // {i}\n // </div>\n // ))}\n // </div>\n // <div className=\"mt-4 w-full md:w-[400px] px-4 overflow-auto md:mt-0 md:ml-4\">\n // {/* @ts-ignore */}\n // <Component {...collection.current.input} />\n // {/* @ts-ignore */}\n // {collection.current.input && (\n // <JSONSchemaForm\n // formState={getFormState({\n // uiSize: \"small\",\n // // @ts-ignore\n // data: collection.current.input,\n // onSubmit: (data) => {\n // console.log(data);\n // // @ts-ignore\n // collection.setValue(collection.key, { ...collection.current, input: data });\n // },\n // })}\n // />\n // )}\n // </div>\n // </div>\n // );\n // });\n\n // devtools = {\n // panels: [\n // {\n // title: \"Slot\",\n // render: this.SlotList,\n // },\n // ],\n // };\n\n onNewStore({ rootStore }: { rootStore: RootStore }) {\n Object.values(rootStore.instance).forEach((store) => {\n //@ts-ignore\n if (store.isSlotInit) return;\n if (store.slots) {\n //@ts-ignore\n store.isSlotInit = true;\n //@ts-ignore\n this.slotMap = { ...this.slotMap, ...store.slots };\n }\n });\n }\n\n toJSON() {\n return this.slotMap\n }\n\n static Slot = ({ name, ...props }: { name } & any): ReactNode => {\n const slotPlugin = RootStore.Get(SlotPlugin);\n const slot = slotPlugin.slotMap![name];\n //@ts-ignore\n const Component: React.FC = slot?.render;\n if (!Component) {\n //@ts-ignore\n return <div></div>;\n }\n //@ts-ignore\n return <Component {...props} />;\n };\n\n constructor(args: Partial<SlotPlugin> = {}) {\n Object.assign(this, args);\n }\n}\n","\"use client\";\n\nimport { RootStore } from \"../../store/root\";\nimport { Store } from \"../../store/standard/base\";\nimport { makeAutoObservable, observable, toJS } from \"mobx\";\nimport { _ } from \"../../lib/lodash\";\n// import { AsyncStorage } from \"./Async\";\n\n// import { JSONForm } from \"../../components/JSONForm\"\n\nexport type Engine = {\n name: string;\n get(key): any;\n set(key, value): any;\n remove(key): any;\n};\n\nexport type DataGroup = Record<\n string,\n {\n index: StorageParams<any>;\n children: Record<string, DataGroup>;\n }\n>;\n\nexport type StorageParams<T> = {\n key: string;\n value?: T;\n engine?: Engine;\n _value?: T;\n defaultValue?: T;\n debounce?: number;\n onInit?(value: T): void;\n debounceFn?: any;\n onDebounce?(value: T): void;\n onSet?(value: T): void;\n set?: (value: T) => void;\n setValue?: (value: T) => void;\n reset?: () => void;\n listen?: (func?: (args: { key: string; value: any }) => void) => void;\n};\nconst memory = {};\n\nexport class StoragePlugin implements Store {\n sid = 'StoragePlugin';\n stype = \"Plugin\"\n autoObservable?: boolean = true;\n static engines = {\n memory: {\n name: 'memory',\n get(key) {\n return memory[key];\n },\n set(key, value) {\n return (memory[key] = value);\n },\n remove(key) {\n delete memory[key];\n return;\n },\n },\n localStorage: {\n name: 'localStorage',\n get(key) {\n return StoragePlugin.safeParse(globalThis.localStorage.getItem(key));\n },\n set(key, value) {\n return globalThis.localStorage.setItem(key, JSON.stringify(value));\n },\n remove(key) {\n return globalThis.localStorage.removeItem(key);\n },\n },\n // asyncStorage: {\n // name: 'asyncStorage',\n // get(key) {\n // return RootStore.Get(AsyncStorage).get(key);\n // },\n // set(key, value) {\n // return RootStore.Get(AsyncStorage).set(key, value);\n // },\n // remove(key) {\n // return RootStore.Get(AsyncStorage).remove(key);\n // },\n // },\n };\n engines = StoragePlugin.engines;\n // debounceFn: (val: any) => void;\n // data = {};\n dataMeta: Record<string, StorageParams<any>> = {};\n\n get dataGroup() {\n const tree = Object.values(this.dataMeta).reduce((p, c) => {\n const current = this.dataMeta[c.key];\n const path = c.key;\n const parentPath = path\n .split('.')\n .slice(0, path.length - 1)\n .join('.');\n const key = path.split('.').pop();\n if (!p[parentPath]) {\n const topPath = !parentPath.includes('.');\n _.set(p, parentPath + (topPath ? `.${key}` : ``), {\n ...current,\n toJSON() {\n return typeof current.value === 'object' ? JSON.stringify(toJS(current.value), null, 2) : current.value;\n },\n });\n }\n\n return p;\n }, {});\n\n return tree;\n }\n\n // StorageTools = observer(() => {\n // const collection = RootStore.Get(Collection<any>, { sid: 'StoragePlugin.current', args: { data: this.dataGroup } });\n // const data = collection.current as Record<string, StorageParams<any>>;\n\n // const dataConfig = Object.entries(data).reduce((p, [key, value]) => {\n // p[key] = {\n // title: `${key} (${value.engine.name})`,\n // };\n // return p;\n // }, {});\n\n // return (\n // <div className=\"h-full flex flex-col md:flex-row text-sm\">\n // <div className=\"w-full md:w-[300px] space-y-1 pr-2 md:border-r-[1px] border-gray-200 dark:border-gray-700 overflow-auto\">\n // {Object.keys(collection.data)\n // .sort((a, b) => a.length - b.length)\n // .map((i) => (\n // <div\n // key={i}\n // className={cn('px-2 rounded-md hover:bg-green-600 hover:text-white cursor-pointer', { 'bg-green-600 text-white': collection.key === i })}\n // onClick={() => collection.setKey(i)}\n // >\n // {i}\n // </div>\n // ))}\n // </div>\n // <div className=\"mt-4 w-full overflow-auto md:mt-0\">\n // <JSONForm\n // formData={{ data: JSON.parse(JSON.stringify(data, null, 2)) }}\n // formConfig={{\n // data: dataConfig,\n // }}\n // onChange={(v) => {\n // Object.entries(v.data).forEach(([key, value]) => {\n // data[key].set(StoragePlugin.safeParse(value));\n // });\n // return v;\n // }}\n // // onSet={(v) => {\n // // //TODO: only udpate changed filed\n // // Object.entries(v).forEach(([key, value]) => {\n // // data[key].set(StoragePlugin.safeParse(value));\n // // });\n // // return v;\n // // }}\n // />\n // </div>\n // </div>\n // );\n // });\n\n // devtools = {\n // panels: [\n // {\n // title: 'Storage',\n // render: this.StorageTools,\n // },\n // ],\n // };\n\n static safeParse(val: any) {\n try {\n return JSON.parse(val);\n } catch (error) {\n return val;\n }\n }\n\n set = ({ key, value, engine }: { key: string; value: any; engine?: Engine }) => {\n this.dataMeta[key]._value = value;\n const _engine = engine || this.dataMeta[key]?.engine || this.engines.memory;\n\n //@ts-ignore\n RootStore.init().events.emit(`storage.${key}.update`, { key, value });\n if (this.dataMeta[key].onSet) this.dataMeta[key].onSet(value);\n return _engine.set(key, value);\n };\n\n\n get = <T,>({ key, value, defaultValue, engine = this.engines.memory, ...other }: StorageParams<T>): StorageParams<T> => {\n if (typeof window == 'undefined' && engine.name == 'localStorage') {\n engine = this.engines.memory;\n }\n\n if (value && !defaultValue) {\n defaultValue = value\n }\n const that = this;\n if (!this.dataMeta[key]) {\n const exists = engine.get(key);\n if (engine.name == 'asyncStorage') {\n console.log('get', key, exists);\n }\n if (!exists) {\n engine.set(key, defaultValue);\n }\n const _value = engine.get(key);\n\n this.dataMeta[key] = makeAutoObservable({\n key,\n engine,\n defaultValue,\n ...other,\n _value,\n get value() {\n return that.dataMeta[key]._value;\n },\n set value(value) {\n that.set({ key, value });\n other.debounce && that.dataMeta[key].debounceFn(value)\n },\n set(value) {\n that.set({ key, value });\n other.debounce && that.dataMeta[key].debounceFn(value)\n },\n setValue(value) {\n that.set({ key, value });\n },\n reset() {\n that.set({ key, value: defaultValue });\n },\n toJSON() {\n return that.dataMeta[key]._value;\n },\n listen(func) {\n //@ts-ignore\n RootStore.init().events.on(`storage.${key}.update`, (args) => func(args));\n },\n debounceFn: _.debounce((value) => {\n other?.onDebounce(value);\n }, other.debounce)\n });\n if (this.dataMeta[key].onInit) {\n this.dataMeta[key].onInit(this.dataMeta[key].value);\n }\n }\n\n //@ts-ignore\n return this.dataMeta[key];\n };\n\n remove = ({ key, engine = this.engines.memory }: { key?: string; engine?: Engine }): void => {\n engine.remove(key);\n };\n\n static Get<T>(args: StorageParams<T>): StorageParams<T> {\n const storagePlugin = RootStore.Get(StoragePlugin);\n return storagePlugin.get(args);\n }\n\n static Input<T, U extends StorageParams<T>>(args: U): U {\n const storagePlugin = RootStore.Get(StoragePlugin);\n const data = storagePlugin.get(args);\n //@ts-ignore\n return observable({\n ...args,\n ...data,\n get value() {\n return data.value;\n },\n set value(value) {\n data.set(value);\n },\n onChange(e) {\n data.set(e.target.value);\n },\n });\n }\n\n static Custom<T, U extends StorageParams<T>>(args: U): U & StorageParams<T> {\n const storagePlugin = RootStore.Get(StoragePlugin);\n const { value, _value, ...others } = args;\n const data = storagePlugin.get(args);\n //@ts-ignore\n\n return observable({\n ...args,\n ...data,\n get value() {\n return data.value;\n },\n set value(value) {\n data.set(value);\n },\n onChange(e) {\n data.set(e.target.value);\n },\n });\n }\n\n constructor(args: Partial<StoragePlugin> = {}) {\n Object.assign(this, args);\n }\n}\n","import axios from \"axios\";\nimport { _ } from \"../../lib/lodash\";\nimport { RootStore } from \"../../store/root\";\nimport { Store } from \"../../store/standard/base\";\nimport { PromiseState } from \"../../store/standard/PromiseState\";\nimport { StoragePlugin } from \"./Storage\";\n\n\nexport const jwt = StoragePlugin.Get({\n key: \"asyncStorage.token\",\n value: \"\",\n engine: StoragePlugin.engines.localStorage,\n});\n\nexport class AsyncStorage implements Store {\n sid = \"AsyncStorage\";\n stype = \"Plugin\"\n url = `https://dappkit-async-api.deno.dev/project/${process.env.NEXT_PUBLIC_PROJECT_ID}`;\n forceUpdate = false;\n autoObservable?: boolean = true;\n\n data = new PromiseState({\n context: this,\n value: {},\n function: async () => {\n const res = await axios.get(this.url, {\n params: { forceUpdate: this.forceUpdate },\n });\n //@ts-ignore\n return { ...this.data.value, ...res.data };\n },\n }).on(\"data\", (data) => {\n this.syncStorage();\n });\n\n syncStorage() {\n const data = this.data.value;\n const storage = RootStore.Get(StoragePlugin);\n\n Object.keys(data).map((key) => {\n const value = data[key];\n const target = storage.dataMeta[key];\n if (target) {\n target.set(value);\n }\n });\n }\n\n // devtools = {\n // panels: [\n // {\n // title: \"AsyncStorage\",\n // render: observer(() => {\n\n // return (\n // <div className=\"h-full w-full overflow-auto\">\n // <Input\n // placeholder=\"Please enter your asyncStorage token here\"\n // value={jwt.value}\n // onChange={(e) => jwt.set(e.target.value)}\n // />\n // <JSONEditor\n // className=\"h-full\"\n // initialJson={JSON.stringify(toJS(this.data.value), null, 2)}\n // onChange={(data) => {\n // console.log(\"onChange\", data);\n // helper.deepMerge(this.data.value, data);\n // this.syncStorage();\n // }}\n // onSubmit={async (data) => {\n // if (!jwt.value) {\n // RootStore.Get(ToastPlugin).error(\n // \"Please enter your asyncStorage token first\",\n // );\n // } else {\n // if (!process.env.NEXT_PUBLIC_PROJECT_ID) {\n // RootStore.Get(ToastPlugin).error(\n // \"Please set your project id first\",\n // );\n // }\n // await axios.post(\n // `https://dappkit-async-api.deno.dev/update/${process.env.NEXT_PUBLIC_PROJECT_ID}`,\n // data,\n // {\n // headers: {\n // Authorization: `${jwt.value}`,\n // },\n // },\n // );\n // }\n // this.forceUpdate = true;\n // await this.data.wait({ call: true });\n // RootStore.Get(ToastPlugin).success(\"Update success\");\n // console.log(\"onSubmit\", data);\n // }}\n // />\n // </div>\n // );\n // }),\n // },\n // ],\n // };\n\n constructor(args: Partial<AsyncStorage> = {}) {\n Object.assign(this, args);\n }\n\n get(key) {\n return _.get(this.data.value, key);\n }\n\n async set(key, value) {\n _.set(this.data.value, key, value);\n }\n\n async remove(key) {\n _.remove(this.data.value, key);\n }\n\n onNewStore = ({\n rootStore,\n store,\n }: {\n rootStore: RootStore;\n store: Store;\n }) => {\n if (store.autoAsyncable) {\n this.makeAutoAsyncAble(store);\n }\n };\n\n async makeAutoAsyncAble(instance) {\n const data = await this.data.wait({ call: true });\n if (data[instance.sid]) {\n Object.assign(instance, data[instance.sid]);\n }\n }\n}\n"]}
package/dist/form.d.mts CHANGED
@@ -4,9 +4,9 @@ import { UiSchema, RJSFSchema, WidgetProps } from '@rjsf/utils';
4
4
  import * as _rjsf_validator_ajv8_lib_validator from '@rjsf/validator-ajv8/lib/validator';
5
5
  import Form, { IChangeEvent } from '@rjsf/core';
6
6
  import { EditorProps } from '@monaco-editor/react';
7
- import { S as Store, R as RootStore } from './root-766ae985.js';
7
+ import { S as Store, R as RootStore } from './root-C3lZnoCI.js';
8
8
  import EventEmitter from 'events';
9
- export { P as PaginationState } from './PaginationState-c19e621a.js';
9
+ export { P as PaginationState } from './PaginationState-Bmrrw0ky.js';
10
10
  import 'typed-emitter';
11
11
 
12
12
  declare class JSONSchemaFormState<T, U = UiSchema> {
@@ -246,7 +246,7 @@ declare class FormPlugin<T extends FormDataType> implements Store {
246
246
  modalSize: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | 'xs' | '3xl' | '4xl' | '5xl';
247
247
  scrollBehavior?: 'normal' | 'inside' | 'outside';
248
248
  isDismissable: boolean;
249
- event: EventEmitter;
249
+ event: EventEmitter<[never]>;
250
250
  onBatchSubmit?: (data: T, setLoading?: Dispatch<SetStateAction<boolean>>) => void;
251
251
  onSet?: (v: FormDataOfKey<T>, form: JSONSchemaFormState<FormDataOfKey<T>, UiSchema>) => FormDataOfKey<T>;
252
252
  onChange?: (data: Partial<T>) => void;
@@ -275,7 +275,7 @@ declare class FormModalStore<T = {
275
275
  modalSize: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | 'xs' | '3xl' | '4xl' | '5xl';
276
276
  scrollBehavior?: 'normal' | 'inside' | 'outside';
277
277
  closeOnOverlayClick: boolean;
278
- event: EventEmitter;
278
+ event: EventEmitter<[never]>;
279
279
  onAfterSubmit?: (data: T) => void;
280
280
  constructor(args?: Partial<FormModalStore>);
281
281
  setData(v: Partial<FormModalStore>): void;
@@ -347,4 +347,4 @@ declare class JSONViewPlugin implements Store {
347
347
  static JSONView: (props: JSONViewType) => React.JSX.Element;
348
348
  }
349
349
 
350
- export { CheckboxWidgetProps, CheckboxWidgetUIOptions, EditorWidgetProps, EditorWidgetUIOptions, FieldLayoutType, FormConfigType, FormDataOfKey, FormDataType, FormKey, FormLayoutType, FormModalStore, FormPlugin, IconSelectWidgetProps, IconSelectWidgetUIOptions, InputWidgetProps, InputWidgetUIOptions, JSONDataType, JSONEditor, JSONForm, JSONFormProps, JSONSchemaForm, JSONViewPlugin, JSONViewType, LayoutConfigType, LayoutType, SelectWidgetProps, SelectWidgetUIOptions, TextareaWidgetProps, TextareaWidgetUIOptions, getComplexFormData, getFormData, getFormState, getSimpleFormData };
350
+ export { type CheckboxWidgetProps, type CheckboxWidgetUIOptions, type EditorWidgetProps, type EditorWidgetUIOptions, type FieldLayoutType, type FormConfigType, type FormDataOfKey, type FormDataType, type FormKey, type FormLayoutType, FormModalStore, FormPlugin, type IconSelectWidgetProps, type IconSelectWidgetUIOptions, type InputWidgetProps, type InputWidgetUIOptions, type JSONDataType, JSONEditor, JSONForm, type JSONFormProps, JSONSchemaForm, JSONViewPlugin, type JSONViewType, type LayoutConfigType, type LayoutType, type SelectWidgetProps, type SelectWidgetUIOptions, type TextareaWidgetProps, type TextareaWidgetUIOptions, getComplexFormData, getFormData, getFormState, getSimpleFormData };