@axdspub/axiom-ui-forms 0.2.10 → 0.3.0

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 (100) hide show
  1. package/README.md +272 -272
  2. package/library/axiom-ui-forms.d.ts +107 -33
  3. package/library/esm/_virtual/index10.js +2 -2
  4. package/library/esm/_virtual/index12.js +2 -6
  5. package/library/esm/_virtual/index12.js.map +1 -1
  6. package/library/esm/_virtual/index13.js +2 -6
  7. package/library/esm/_virtual/index13.js.map +1 -1
  8. package/library/esm/_virtual/index14.js +2 -2
  9. package/library/esm/_virtual/index15.js +2 -2
  10. package/library/esm/_virtual/index3.js +2 -2
  11. package/library/esm/_virtual/index3.js.map +1 -1
  12. package/library/esm/_virtual/index4.js +2 -2
  13. package/library/esm/_virtual/index6.js +2 -2
  14. package/library/esm/_virtual/index7.js +6 -2
  15. package/library/esm/_virtual/index7.js.map +1 -1
  16. package/library/esm/_virtual/index8.js +6 -2
  17. package/library/esm/_virtual/index8.js.map +1 -1
  18. package/library/esm/_virtual/index9.js +2 -2
  19. package/library/esm/node_modules/@axdspub/axiom-ui-utilities/library/index.js +1 -1
  20. package/library/esm/node_modules/@axdspub/axiom-ui-utilities/library/index.js.map +1 -1
  21. package/library/esm/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js +23 -1
  22. package/library/esm/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js.map +1 -1
  23. package/library/esm/node_modules/ajv/dist/compile/codegen/index.js +1 -1
  24. package/library/esm/node_modules/ajv/dist/compile/index.js +1 -1
  25. package/library/esm/node_modules/ajv/dist/vocabularies/applicator/index.js +1 -1
  26. package/library/esm/node_modules/ajv/dist/vocabularies/core/index.js +1 -1
  27. package/library/esm/node_modules/ajv/dist/vocabularies/discriminator/index.js +1 -1
  28. package/library/esm/node_modules/ajv/dist/vocabularies/format/index.js +1 -1
  29. package/library/esm/node_modules/fast-uri/index.js +1 -1
  30. package/library/esm/node_modules/hast-util-to-jsx-runtime/lib/index.js +1 -1
  31. package/library/esm/node_modules/jotai/esm/react.js +135 -0
  32. package/library/esm/node_modules/jotai/esm/react.js.map +1 -0
  33. package/library/esm/node_modules/jotai/esm/vanilla/internals.js +551 -0
  34. package/library/esm/node_modules/jotai/esm/vanilla/internals.js.map +1 -0
  35. package/library/esm/node_modules/jotai/esm/vanilla.js +111 -0
  36. package/library/esm/node_modules/jotai/esm/vanilla.js.map +1 -0
  37. package/library/esm/node_modules/json-schema-traverse/index.js +1 -1
  38. package/library/esm/node_modules/react-router/dist/development/chunk-HA7DTUK3.js +1 -1
  39. package/library/esm/node_modules/unified/lib/index.js +1 -1
  40. package/library/esm/src/Form/Components/FieldCreator.js +19 -4
  41. package/library/esm/src/Form/Components/FieldCreator.js.map +1 -1
  42. package/library/esm/src/Form/Components/FieldLabel.js +1 -1
  43. package/library/esm/src/Form/Components/FieldLabel.js.map +1 -1
  44. package/library/esm/src/Form/Components/InlineMarkdown.js.map +1 -1
  45. package/library/esm/src/Form/Components/Inputs/Boolean.js.map +1 -1
  46. package/library/esm/src/Form/Components/Inputs/Constant.js.map +1 -1
  47. package/library/esm/src/Form/Components/Inputs/Date.js.map +1 -1
  48. package/library/esm/src/Form/Components/Inputs/DateTime.js.map +1 -1
  49. package/library/esm/src/Form/Components/Inputs/GeoJSON.js.map +1 -1
  50. package/library/esm/src/Form/Components/Inputs/GeoJSONInputLoader.js.map +1 -1
  51. package/library/esm/src/Form/Components/Inputs/Geometry.js +1 -1
  52. package/library/esm/src/Form/Components/Inputs/Geometry.js.map +1 -1
  53. package/library/esm/src/Form/Components/Inputs/GeometryInputLoader.js.map +1 -1
  54. package/library/esm/src/Form/Components/Inputs/JSON.js +64 -33
  55. package/library/esm/src/Form/Components/Inputs/JSON.js.map +1 -1
  56. package/library/esm/src/Form/Components/Inputs/JSONInputLoader.js.map +1 -1
  57. package/library/esm/src/Form/Components/Inputs/LongString.js.map +1 -1
  58. package/library/esm/src/Form/Components/Inputs/Number.js +34 -9
  59. package/library/esm/src/Form/Components/Inputs/Number.js.map +1 -1
  60. package/library/esm/src/Form/Components/Inputs/Object.js.map +1 -1
  61. package/library/esm/src/Form/Components/Inputs/OneOfInput.js.map +1 -1
  62. package/library/esm/src/Form/Components/Inputs/RadioGroup.js.map +1 -1
  63. package/library/esm/src/Form/Components/Inputs/SingleSelect.js +2 -1
  64. package/library/esm/src/Form/Components/Inputs/SingleSelect.js.map +1 -1
  65. package/library/esm/src/Form/Components/Inputs/String.js.map +1 -1
  66. package/library/esm/src/Form/Components/Inputs/Time.js.map +1 -1
  67. package/library/esm/src/Form/Components/Inputs/index.js +11 -0
  68. package/library/esm/src/Form/Components/Inputs/index.js.map +1 -0
  69. package/library/esm/src/Form/Components/Inputs/inputMap.js.map +1 -1
  70. package/library/esm/src/Form/Creator/FormContextProvider.js.map +1 -1
  71. package/library/esm/src/Form/Creator/FormCreator.js +17 -8
  72. package/library/esm/src/Form/Creator/FormCreator.js.map +1 -1
  73. package/library/esm/src/Form/Creator/FormFields.js.map +1 -1
  74. package/library/esm/src/Form/Creator/FormHeader.js.map +1 -1
  75. package/library/esm/src/Form/Creator/FormSection.js.map +1 -1
  76. package/library/esm/src/Form/Creator/FormSectionContextProvider.js.map +1 -1
  77. package/library/esm/src/Form/Creator/NavElement.js.map +1 -1
  78. package/library/esm/src/Form/Creator/Page.js +39 -6
  79. package/library/esm/src/Form/Creator/Page.js.map +1 -1
  80. package/library/esm/src/Form/Creator/Wizard.js +78 -21
  81. package/library/esm/src/Form/Creator/Wizard.js.map +1 -1
  82. package/library/esm/src/Form/Manage/CopyableJSONOutput.js +3 -3
  83. package/library/esm/src/Form/Manage/CopyableJSONOutput.js.map +1 -1
  84. package/library/esm/src/library.js +9 -14
  85. package/library/esm/src/library.js.map +1 -1
  86. package/library/esm/src/utils/getters.js +33 -3
  87. package/library/esm/src/utils/getters.js.map +1 -1
  88. package/library/esm/src/utils/manipulators.js +80 -3
  89. package/library/esm/src/utils/manipulators.js.map +1 -1
  90. package/library/esm/src/utils/resolveRefs.js +44 -0
  91. package/library/esm/src/utils/resolveRefs.js.map +1 -0
  92. package/library/esm/src/utils/responsive/layoutState.js +18 -0
  93. package/library/esm/src/utils/responsive/layoutState.js.map +1 -0
  94. package/library/esm/src/utils/schemaToFormHelpers.js +157 -39
  95. package/library/esm/src/utils/schemaToFormHelpers.js.map +1 -1
  96. package/library/esm/src/utils/validators.js +4 -2
  97. package/library/esm/src/utils/validators.js.map +1 -1
  98. package/package.json +131 -129
  99. package/library/esm/src/Form/resolveRefs.js +0 -26
  100. package/library/esm/src/Form/resolveRefs.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { __exports as codegen } from '../../../../../_virtual/index4.js';
1
+ import { __exports as codegen } from '../../../../../_virtual/index6.js';
2
2
  import { __require as requireCode } from './code.js';
3
3
  import { __require as requireScope } from './scope.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { __exports as compile } from '../../../../_virtual/index6.js';
1
+ import { __exports as compile } from '../../../../_virtual/index9.js';
2
2
  import { __require as requireCodegen } from './codegen/index.js';
3
3
  import { __require as requireValidation_error } from '../runtime/validation_error.js';
4
4
  import { __require as requireNames } from './names.js';
@@ -1,4 +1,4 @@
1
- import { __exports as applicator } from '../../../../../_virtual/index10.js';
1
+ import { __exports as applicator } from '../../../../../_virtual/index12.js';
2
2
  import { __require as requireAdditionalItems } from './additionalItems.js';
3
3
  import { __require as requirePrefixItems } from './prefixItems.js';
4
4
  import { __require as requireItems } from './items.js';
@@ -1,4 +1,4 @@
1
- import { __exports as core } from '../../../../../_virtual/index8.js';
1
+ import { __exports as core } from '../../../../../_virtual/index10.js';
2
2
  import { __require as requireId } from './id.js';
3
3
  import { __require as requireRef } from './ref.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { __exports as discriminator } from '../../../../../_virtual/index3.js';
1
+ import { __exports as discriminator } from '../../../../../_virtual/index4.js';
2
2
  import { __require as requireCodegen } from '../../compile/codegen/index.js';
3
3
  import { __require as requireTypes } from './types.js';
4
4
  import { __require as requireCompile } from '../../compile/index.js';
@@ -1,4 +1,4 @@
1
- import { __exports as format } from '../../../../../_virtual/index9.js';
1
+ import { __exports as format } from '../../../../../_virtual/index13.js';
2
2
  import { __require as requireFormat$1 } from './format.js';
3
3
 
4
4
  var hasRequiredFormat;
@@ -1,4 +1,4 @@
1
- import { __module as fastUri } from '../../_virtual/index14.js';
1
+ import { __module as fastUri } from '../../_virtual/index15.js';
2
2
  import { __require as requireUtils } from './lib/utils.js';
3
3
  import { __require as requireSchemes } from './lib/schemes.js';
4
4
 
@@ -2,7 +2,7 @@ import { stringify } from '../../comma-separated-tokens/index.js';
2
2
  import { ok } from '../../devlop/lib/default.js';
3
3
  import { svg, html } from '../../property-information/index.js';
4
4
  import { stringify as stringify$1 } from '../../space-separated-tokens/index.js';
5
- import styleToJs from '../../../_virtual/index12.js';
5
+ import styleToJs from '../../../_virtual/index8.js';
6
6
  import { whitespace } from '../../hast-util-whitespace/lib/index.js';
7
7
  import { name } from '../../estree-util-is-identifier-name/lib/index.js';
8
8
  import { VFileMessage } from '../../vfile-message/lib/index.js';
@@ -0,0 +1,135 @@
1
+ import React__default, { useReducer, useEffect, useDebugValue, useContext, createContext, useCallback } from 'react';
2
+ import { getDefaultStore } from './vanilla.js';
3
+
4
+ const StoreContext = createContext(
5
+ void 0
6
+ );
7
+ const useStore = (options) => {
8
+ const store = useContext(StoreContext);
9
+ return store || getDefaultStore();
10
+ };
11
+
12
+ const isPromiseLike = (x) => typeof (x == null ? void 0 : x.then) === "function";
13
+ const attachPromiseMeta = (promise) => {
14
+ promise.status = "pending";
15
+ promise.then(
16
+ (v) => {
17
+ promise.status = "fulfilled";
18
+ promise.value = v;
19
+ },
20
+ (e) => {
21
+ promise.status = "rejected";
22
+ promise.reason = e;
23
+ }
24
+ );
25
+ };
26
+ const use = React__default.use || ((promise) => {
27
+ if (promise.status === "pending") {
28
+ throw promise;
29
+ } else if (promise.status === "fulfilled") {
30
+ return promise.value;
31
+ } else if (promise.status === "rejected") {
32
+ throw promise.reason;
33
+ } else {
34
+ attachPromiseMeta(promise);
35
+ throw promise;
36
+ }
37
+ });
38
+ const continuablePromiseMap = /* @__PURE__ */ new WeakMap();
39
+ const createContinuablePromise = (promise) => {
40
+ let continuablePromise = continuablePromiseMap.get(promise);
41
+ if (!continuablePromise) {
42
+ continuablePromise = new Promise((resolve, reject) => {
43
+ let curr = promise;
44
+ const onFulfilled = (me) => (v) => {
45
+ if (curr === me) {
46
+ resolve(v);
47
+ }
48
+ };
49
+ const onRejected = (me) => (e) => {
50
+ if (curr === me) {
51
+ reject(e);
52
+ }
53
+ };
54
+ const registerCancelHandler = (p) => {
55
+ if ("onCancel" in p && typeof p.onCancel === "function") {
56
+ p.onCancel((nextValue) => {
57
+ if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && nextValue === p) {
58
+ throw new Error("[Bug] p is not updated even after cancelation");
59
+ }
60
+ if (isPromiseLike(nextValue)) {
61
+ continuablePromiseMap.set(nextValue, continuablePromise);
62
+ curr = nextValue;
63
+ nextValue.then(onFulfilled(nextValue), onRejected(nextValue));
64
+ registerCancelHandler(nextValue);
65
+ } else {
66
+ resolve(nextValue);
67
+ }
68
+ });
69
+ }
70
+ };
71
+ promise.then(onFulfilled(promise), onRejected(promise));
72
+ registerCancelHandler(promise);
73
+ });
74
+ continuablePromiseMap.set(promise, continuablePromise);
75
+ }
76
+ return continuablePromise;
77
+ };
78
+ function useAtomValue(atom, options) {
79
+ const store = useStore();
80
+ const [[valueFromReducer, storeFromReducer, atomFromReducer], rerender] = useReducer(
81
+ (prev) => {
82
+ const nextValue = store.get(atom);
83
+ if (Object.is(prev[0], nextValue) && prev[1] === store && prev[2] === atom) {
84
+ return prev;
85
+ }
86
+ return [nextValue, store, atom];
87
+ },
88
+ void 0,
89
+ () => [store.get(atom), store, atom]
90
+ );
91
+ let value = valueFromReducer;
92
+ if (storeFromReducer !== store || atomFromReducer !== atom) {
93
+ rerender();
94
+ value = store.get(atom);
95
+ }
96
+ const delay = void 0 ;
97
+ useEffect(() => {
98
+ const unsub = store.sub(atom, () => {
99
+ rerender();
100
+ });
101
+ rerender();
102
+ return unsub;
103
+ }, [store, atom, delay]);
104
+ useDebugValue(value);
105
+ if (isPromiseLike(value)) {
106
+ const promise = createContinuablePromise(value);
107
+ return use(promise);
108
+ }
109
+ return value;
110
+ }
111
+
112
+ function useSetAtom(atom, options) {
113
+ const store = useStore();
114
+ const setAtom = useCallback(
115
+ (...args) => {
116
+ if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production" && !("write" in atom)) {
117
+ throw new Error("not writable atom");
118
+ }
119
+ return store.set(atom, ...args);
120
+ },
121
+ [store, atom]
122
+ );
123
+ return setAtom;
124
+ }
125
+
126
+ function useAtom(atom, options) {
127
+ return [
128
+ useAtomValue(atom),
129
+ // We do wrong type assertion here, which results in throwing an error.
130
+ useSetAtom(atom)
131
+ ];
132
+ }
133
+
134
+ export { useAtom, useAtomValue, useSetAtom, useStore };
135
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.js","sources":["../../../../../node_modules/jotai/esm/react.mjs"],"sourcesContent":["'use client';\nimport ReactExports, { createContext, useContext, useRef, createElement, useReducer, useEffect, useDebugValue, useCallback } from 'react';\nimport { getDefaultStore, createStore } from 'jotai/vanilla';\n\nconst StoreContext = createContext(\n void 0\n);\nconst useStore = (options) => {\n const store = useContext(StoreContext);\n return (options == null ? void 0 : options.store) || store || getDefaultStore();\n};\nconst Provider = ({\n children,\n store\n}) => {\n const storeRef = useRef(void 0);\n if (!store && !storeRef.current) {\n storeRef.current = createStore();\n }\n return createElement(\n StoreContext.Provider,\n {\n value: store || storeRef.current\n },\n children\n );\n};\n\nconst isPromiseLike = (x) => typeof (x == null ? void 0 : x.then) === \"function\";\nconst attachPromiseMeta = (promise) => {\n promise.status = \"pending\";\n promise.then(\n (v) => {\n promise.status = \"fulfilled\";\n promise.value = v;\n },\n (e) => {\n promise.status = \"rejected\";\n promise.reason = e;\n }\n );\n};\nconst use = ReactExports.use || ((promise) => {\n if (promise.status === \"pending\") {\n throw promise;\n } else if (promise.status === \"fulfilled\") {\n return promise.value;\n } else if (promise.status === \"rejected\") {\n throw promise.reason;\n } else {\n attachPromiseMeta(promise);\n throw promise;\n }\n});\nconst continuablePromiseMap = /* @__PURE__ */ new WeakMap();\nconst createContinuablePromise = (promise) => {\n let continuablePromise = continuablePromiseMap.get(promise);\n if (!continuablePromise) {\n continuablePromise = new Promise((resolve, reject) => {\n let curr = promise;\n const onFulfilled = (me) => (v) => {\n if (curr === me) {\n resolve(v);\n }\n };\n const onRejected = (me) => (e) => {\n if (curr === me) {\n reject(e);\n }\n };\n const registerCancelHandler = (p) => {\n if (\"onCancel\" in p && typeof p.onCancel === \"function\") {\n p.onCancel((nextValue) => {\n if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && nextValue === p) {\n throw new Error(\"[Bug] p is not updated even after cancelation\");\n }\n if (isPromiseLike(nextValue)) {\n continuablePromiseMap.set(nextValue, continuablePromise);\n curr = nextValue;\n nextValue.then(onFulfilled(nextValue), onRejected(nextValue));\n registerCancelHandler(nextValue);\n } else {\n resolve(nextValue);\n }\n });\n }\n };\n promise.then(onFulfilled(promise), onRejected(promise));\n registerCancelHandler(promise);\n });\n continuablePromiseMap.set(promise, continuablePromise);\n }\n return continuablePromise;\n};\nfunction useAtomValue(atom, options) {\n const store = useStore(options);\n const [[valueFromReducer, storeFromReducer, atomFromReducer], rerender] = useReducer(\n (prev) => {\n const nextValue = store.get(atom);\n if (Object.is(prev[0], nextValue) && prev[1] === store && prev[2] === atom) {\n return prev;\n }\n return [nextValue, store, atom];\n },\n void 0,\n () => [store.get(atom), store, atom]\n );\n let value = valueFromReducer;\n if (storeFromReducer !== store || atomFromReducer !== atom) {\n rerender();\n value = store.get(atom);\n }\n const delay = options == null ? void 0 : options.delay;\n useEffect(() => {\n const unsub = store.sub(atom, () => {\n if (typeof delay === \"number\") {\n const value2 = store.get(atom);\n if (isPromiseLike(value2)) {\n attachPromiseMeta(createContinuablePromise(value2));\n }\n setTimeout(rerender, delay);\n return;\n }\n rerender();\n });\n rerender();\n return unsub;\n }, [store, atom, delay]);\n useDebugValue(value);\n if (isPromiseLike(value)) {\n const promise = createContinuablePromise(value);\n return use(promise);\n }\n return value;\n}\n\nfunction useSetAtom(atom, options) {\n const store = useStore(options);\n const setAtom = useCallback(\n (...args) => {\n if ((import.meta.env ? import.meta.env.MODE : void 0) !== \"production\" && !(\"write\" in atom)) {\n throw new Error(\"not writable atom\");\n }\n return store.set(atom, ...args);\n },\n [store, atom]\n );\n return setAtom;\n}\n\nfunction useAtom(atom, options) {\n return [\n useAtomValue(atom, options),\n // We do wrong type assertion here, which results in throwing an error.\n useSetAtom(atom, options)\n ];\n}\n\nexport { Provider, useAtom, useAtomValue, useSetAtom, useStore };\n"],"names":["ReactExports"],"mappings":"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","x_google_ignoreList":[0]}