@effect-app/vue-components 4.0.0-beta.21 → 4.0.0-beta.211

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 (196) hide show
  1. package/README.md +36 -8
  2. package/dist/reset.css +52 -0
  3. package/dist/types/components/CommandButton.vue.d.ts +6 -4
  4. package/dist/types/components/OmegaForm/OmegaArray.vue.d.ts +1 -1
  5. package/dist/types/components/OmegaForm/OmegaAutoGen.vue.d.ts +1 -1
  6. package/dist/types/components/OmegaForm/OmegaErrorsInternal.vue.d.ts +1 -1
  7. package/dist/types/components/OmegaForm/OmegaFormInput.vue.d.ts +1 -1
  8. package/dist/types/components/OmegaForm/OmegaInput.vue.d.ts +1 -1
  9. package/dist/types/components/OmegaForm/OmegaInternalInput.vue.d.ts +2 -1
  10. package/dist/types/components/OmegaForm/OmegaWrapper.vue.d.ts +1 -1
  11. package/dist/types/components/OmegaForm/createUseFormWithCustomInput.d.ts +2 -2
  12. package/dist/types/components/OmegaForm/errors.d.ts +33 -0
  13. package/dist/types/components/OmegaForm/getOmegaStore.d.ts +1 -1
  14. package/dist/types/components/OmegaForm/hocs.d.ts +3 -0
  15. package/dist/types/components/OmegaForm/index.d.ts +13 -3
  16. package/dist/types/components/OmegaForm/inputs.d.ts +4 -0
  17. package/dist/types/components/OmegaForm/meta/checks.d.ts +4 -0
  18. package/dist/types/components/OmegaForm/meta/createMeta.d.ts +32 -0
  19. package/dist/types/components/OmegaForm/meta/defaults.d.ts +2 -0
  20. package/dist/types/components/OmegaForm/meta/redacted.d.ts +2 -0
  21. package/dist/types/components/OmegaForm/meta/types.d.ts +56 -0
  22. package/dist/types/components/OmegaForm/meta/walker.d.ts +18 -0
  23. package/dist/types/components/OmegaForm/persistency.d.ts +58 -0
  24. package/dist/types/components/OmegaForm/submit.d.ts +60 -0
  25. package/dist/types/components/OmegaForm/types.d.ts +281 -0
  26. package/dist/types/components/OmegaForm/useOmegaForm.d.ts +7 -213
  27. package/dist/types/components/OmegaForm/validation/localized.d.ts +10 -0
  28. package/dist/types/index.d.ts +0 -1
  29. package/dist/types/utils/index.d.ts +6 -6
  30. package/dist/vue-components.es.js +29 -45
  31. package/dist/vue-components10.es.js +5 -0
  32. package/dist/vue-components11.es.js +20 -0
  33. package/dist/vue-components12.es.js +49 -0
  34. package/dist/vue-components13.es.js +128 -0
  35. package/dist/vue-components14.es.js +65 -0
  36. package/dist/vue-components15.es.js +60 -0
  37. package/dist/vue-components16.es.js +22 -0
  38. package/dist/vue-components17.es.js +5 -0
  39. package/dist/vue-components18.es.js +80 -0
  40. package/dist/vue-components19.es.js +92 -0
  41. package/dist/vue-components2.es.js +11 -0
  42. package/dist/vue-components20.es.js +73 -0
  43. package/dist/vue-components21.es.js +12 -0
  44. package/dist/vue-components22.es.js +56 -0
  45. package/dist/vue-components23.es.js +5 -0
  46. package/dist/vue-components24.es.js +44 -0
  47. package/dist/vue-components25.es.js +5 -0
  48. package/dist/vue-components26.es.js +84 -0
  49. package/dist/vue-components28.es.js +8 -0
  50. package/dist/vue-components29.es.js +9 -0
  51. package/dist/vue-components3.es.js +86 -0
  52. package/dist/vue-components30.es.js +269 -0
  53. package/dist/vue-components32.es.js +8 -0
  54. package/dist/vue-components33.es.js +73 -0
  55. package/dist/vue-components34.es.js +5 -0
  56. package/dist/vue-components35.es.js +52 -0
  57. package/dist/vue-components36.es.js +5 -0
  58. package/dist/vue-components37.es.js +24 -0
  59. package/dist/vue-components38.es.js +5 -0
  60. package/dist/vue-components39.es.js +59 -0
  61. package/dist/vue-components4.es.js +5 -0
  62. package/dist/vue-components40.es.js +5 -0
  63. package/dist/vue-components41.es.js +12 -0
  64. package/dist/vue-components42.es.js +22 -0
  65. package/dist/vue-components44.es.js +9 -0
  66. package/dist/vue-components45.es.js +4 -0
  67. package/dist/vue-components46.es.js +38 -0
  68. package/dist/vue-components47.es.js +27 -0
  69. package/dist/vue-components48.es.js +28 -0
  70. package/dist/vue-components49.es.js +7 -0
  71. package/dist/vue-components5.es.js +24 -0
  72. package/dist/vue-components50.es.js +18 -0
  73. package/dist/vue-components51.es.js +36 -0
  74. package/dist/vue-components52.es.js +18 -0
  75. package/dist/vue-components53.es.js +21 -0
  76. package/dist/vue-components54.es.js +30 -0
  77. package/dist/vue-components55.es.js +7 -0
  78. package/dist/vue-components56.es.js +9 -0
  79. package/dist/vue-components57.es.js +38 -0
  80. package/dist/vue-components58.es.js +25 -0
  81. package/dist/vue-components59.es.js +128 -0
  82. package/dist/vue-components6.es.js +13 -0
  83. package/dist/vue-components60.es.js +24 -0
  84. package/dist/vue-components61.es.js +21 -0
  85. package/dist/vue-components62.es.js +9 -0
  86. package/dist/vue-components63.es.js +19 -0
  87. package/dist/vue-components64.es.js +5 -0
  88. package/dist/vue-components65.es.js +29 -0
  89. package/dist/vue-components66.es.js +5 -0
  90. package/dist/vue-components67.es.js +29 -0
  91. package/dist/vue-components68.es.js +6 -0
  92. package/dist/vue-components69.es.js +18 -0
  93. package/dist/vue-components7.es.js +13 -0
  94. package/dist/vue-components70.es.js +40 -0
  95. package/dist/vue-components71.es.js +81 -0
  96. package/dist/vue-components72.es.js +33 -0
  97. package/dist/vue-components73.es.js +19 -0
  98. package/dist/vue-components74.es.js +48 -0
  99. package/dist/vue-components8.es.js +35 -0
  100. package/dist/vue-components9.es.js +47 -0
  101. package/package.json +35 -31
  102. package/src/components/CommandButton.vue +55 -7
  103. package/src/components/OmegaForm/OmegaArray.vue +2 -4
  104. package/src/components/OmegaForm/OmegaAutoGen.vue +2 -1
  105. package/src/components/OmegaForm/OmegaErrorsInternal.vue +1 -1
  106. package/src/components/OmegaForm/OmegaFormInput.vue +1 -1
  107. package/src/components/OmegaForm/OmegaInput.vue +7 -36
  108. package/src/components/OmegaForm/OmegaInputVuetify.vue +5 -2
  109. package/src/components/OmegaForm/OmegaInternalInput.vue +18 -10
  110. package/src/components/OmegaForm/OmegaTaggedUnion.vue +2 -1
  111. package/src/components/OmegaForm/OmegaTaggedUnionInternal.vue +1 -1
  112. package/src/components/OmegaForm/OmegaWrapper.vue +1 -1
  113. package/src/components/OmegaForm/blockDialog.ts +18 -6
  114. package/src/components/OmegaForm/createUseFormWithCustomInput.ts +2 -1
  115. package/src/components/OmegaForm/errors.ts +136 -0
  116. package/src/components/OmegaForm/getOmegaStore.ts +1 -1
  117. package/src/components/OmegaForm/hocs.ts +19 -0
  118. package/src/components/OmegaForm/index.ts +16 -4
  119. package/src/components/OmegaForm/inputs.ts +22 -0
  120. package/src/components/OmegaForm/meta/checks.ts +81 -0
  121. package/src/components/OmegaForm/meta/createMeta.ts +138 -0
  122. package/src/components/OmegaForm/meta/defaults.ts +132 -0
  123. package/src/components/OmegaForm/meta/redacted.ts +66 -0
  124. package/src/components/OmegaForm/meta/types.ts +78 -0
  125. package/src/components/OmegaForm/meta/walker.ts +248 -0
  126. package/src/components/OmegaForm/persistency.ts +247 -0
  127. package/src/components/OmegaForm/submit.ts +128 -0
  128. package/src/components/OmegaForm/types.ts +751 -0
  129. package/src/components/OmegaForm/useOmegaForm.ts +58 -893
  130. package/src/components/OmegaForm/validation/localized.ts +202 -0
  131. package/src/index.ts +0 -1
  132. package/src/reset.css +52 -0
  133. package/src/utils/index.ts +10 -7
  134. package/dist/types/components/OmegaForm/OmegaFormStuff.d.ts +0 -157
  135. package/dist/types/constants/index.d.ts +0 -1
  136. package/dist/vue-components.es10.js +0 -239
  137. package/dist/vue-components.es11.js +0 -32
  138. package/dist/vue-components.es12.js +0 -481
  139. package/dist/vue-components.es13.js +0 -49
  140. package/dist/vue-components.es14.js +0 -4
  141. package/dist/vue-components.es15.js +0 -4
  142. package/dist/vue-components.es16.js +0 -6
  143. package/dist/vue-components.es17.js +0 -13
  144. package/dist/vue-components.es18.js +0 -57
  145. package/dist/vue-components.es19.js +0 -56
  146. package/dist/vue-components.es2.js +0 -31
  147. package/dist/vue-components.es20.js +0 -8
  148. package/dist/vue-components.es21.js +0 -8
  149. package/dist/vue-components.es22.js +0 -5
  150. package/dist/vue-components.es23.js +0 -5
  151. package/dist/vue-components.es24.js +0 -4
  152. package/dist/vue-components.es25.js +0 -4
  153. package/dist/vue-components.es26.js +0 -4
  154. package/dist/vue-components.es27.js +0 -4
  155. package/dist/vue-components.es28.js +0 -19
  156. package/dist/vue-components.es29.js +0 -13
  157. package/dist/vue-components.es3.js +0 -17
  158. package/dist/vue-components.es30.js +0 -31
  159. package/dist/vue-components.es31.js +0 -6
  160. package/dist/vue-components.es32.js +0 -4
  161. package/dist/vue-components.es33.js +0 -4
  162. package/dist/vue-components.es34.js +0 -113
  163. package/dist/vue-components.es36.js +0 -9
  164. package/dist/vue-components.es37.js +0 -34
  165. package/dist/vue-components.es39.js +0 -194
  166. package/dist/vue-components.es4.js +0 -52
  167. package/dist/vue-components.es41.js +0 -6
  168. package/dist/vue-components.es42.js +0 -25
  169. package/dist/vue-components.es43.js +0 -7
  170. package/dist/vue-components.es44.js +0 -23
  171. package/dist/vue-components.es45.js +0 -32
  172. package/dist/vue-components.es46.js +0 -24
  173. package/dist/vue-components.es47.js +0 -14
  174. package/dist/vue-components.es48.js +0 -7
  175. package/dist/vue-components.es49.js +0 -21
  176. package/dist/vue-components.es5.js +0 -52
  177. package/dist/vue-components.es50.js +0 -11
  178. package/dist/vue-components.es51.js +0 -33
  179. package/dist/vue-components.es52.js +0 -50
  180. package/dist/vue-components.es53.js +0 -28
  181. package/dist/vue-components.es54.js +0 -13
  182. package/dist/vue-components.es55.js +0 -67
  183. package/dist/vue-components.es56.js +0 -58
  184. package/dist/vue-components.es57.js +0 -19
  185. package/dist/vue-components.es58.js +0 -35
  186. package/dist/vue-components.es59.js +0 -31
  187. package/dist/vue-components.es6.js +0 -69
  188. package/dist/vue-components.es60.js +0 -44
  189. package/dist/vue-components.es61.js +0 -4
  190. package/dist/vue-components.es62.js +0 -46
  191. package/dist/vue-components.es63.js +0 -4
  192. package/dist/vue-components.es7.js +0 -83
  193. package/dist/vue-components.es8.js +0 -63
  194. package/dist/vue-components.es9.js +0 -21
  195. package/src/components/OmegaForm/OmegaFormStuff.ts +0 -1184
  196. package/src/constants/index.ts +0 -1
@@ -1,239 +0,0 @@
1
- import { useForm as K } from "@tanstack/vue-form";
2
- import { Data as T, S as I, Effect as m, Fiber as V, Option as z, Array as P } from "effect-app";
3
- import { runtimeFiberAsPromise as W } from "./vue-components.es17.js";
4
- import { computed as $, onUnmounted as D, onMounted as G, onBeforeUnmount as Z, watch as R, ref as Q, h as J } from "vue";
5
- import { useIntl as X } from "./vue-components.es3.js";
6
- import Y from "./vue-components.es18.js";
7
- import C from "./vue-components.es19.js";
8
- import ee from "./vue-components.es20.js";
9
- import { generateMetaFromSchema as re, deepMerge as N, defaultsValueFromSchema as te } from "./vue-components.es12.js";
10
- import se from "./vue-components.es6.js";
11
- import ne from "./vue-components.es8.js";
12
- import oe from "./vue-components.es21.js";
13
- import { trace as H } from "./vue-components.es22.js";
14
- import { context as _ } from "./vue-components.es23.js";
15
- class ie extends T.TaggedError("FormErrors") {
16
- }
17
- const M = (a) => function(s) {
18
- return {
19
- render() {
20
- return J(s, {
21
- form: a,
22
- ...this.$attrs
23
- }, this.$slots);
24
- }
25
- };
26
- }, ae = (a) => {
27
- const { formatMessage: l } = X(), s = (c) => c.replace(/([A-Z])/g, " $1").replace(/^./, (F) => F.toUpperCase()).trim(), p = (c) => l ? l({ id: `general.fields.${c}`, defaultMessage: s(c) }) : s(c);
28
- return (c) => a.i18nNamespace ? l({ id: `${a.i18nNamespace}.fields.${c}`, defaultMessage: p(c) }) : p(c);
29
- }, ce = (a) => function(s) {
30
- return {
31
- setup() {
32
- const { fieldMap: p, form: v } = a, c = v.useStore((S) => S.errors), F = v.useStore((S) => S.fieldMeta), h = v.useStore((S) => S.errorMap), A = ae(v), L = $(() => {
33
- const S = Object.entries(F.value).reduce((y, [w, g]) => {
34
- const u = g?.errors ?? [];
35
- if (!u.length)
36
- return y;
37
- const d = p.value.get(w);
38
- return d && y.push({
39
- label: d.label,
40
- inputId: d.id,
41
- errors: [u[0]?.message].filter(Boolean)
42
- }), y;
43
- }, []), o = [];
44
- if (h.value.onSubmit) {
45
- for (const [y, w] of Object.entries(h.value.onSubmit))
46
- if (P.isArray(w) && w.length)
47
- for (const g of w) {
48
- const u = g;
49
- if (u?.path && P.isArray(u.path) && u.path.length) {
50
- const d = u.path.join(".");
51
- if (!p.value.has(d)) {
52
- o.push({
53
- label: A(d),
54
- inputId: d,
55
- errors: [u.message].filter(Boolean)
56
- });
57
- break;
58
- }
59
- }
60
- }
61
- }
62
- return [...S, ...o];
63
- });
64
- return {
65
- generalErrors: c,
66
- errors: L
67
- };
68
- },
69
- render({ errors: p, generalErrors: v }) {
70
- return J(s, {
71
- errors: p,
72
- generalErrors: v,
73
- ...this.$attrs
74
- }, this.$slots);
75
- }
76
- };
77
- }, b = (a, l) => a.includes(l), Fe = (a, l, s) => {
78
- if (!a) throw new Error("Schema is required");
79
- const p = I.toStandardSchemaV1(a), v = I.decodeUnknownEffect(a), { meta: c, unionMeta: F } = re(a), h = $(() => {
80
- if (s?.persistency?.id)
81
- return s.persistency.id;
82
- const e = window.location.pathname, r = Object.keys(c);
83
- return `${e}-${r.join("-")}`;
84
- }), A = () => {
85
- const e = new URLSearchParams(window.location.search);
86
- e.delete(h.value);
87
- const r = new URL(window.location.href);
88
- r.search = e.toString(), window.history.replaceState({}, "", r.toString());
89
- }, L = $(() => {
90
- let e;
91
- const r = s?.persistency;
92
- if (
93
- // query string has higher priority than local/session storage
94
- r?.policies && !e && (b(r.policies, "local") || b(r.policies, "session"))
95
- ) {
96
- const n = b(r.policies, "local") ? localStorage : sessionStorage;
97
- if (n)
98
- try {
99
- const t = JSON.parse(
100
- n.getItem(h.value) || "{}"
101
- );
102
- n.removeItem(h.value), e = t;
103
- } catch (t) {
104
- console.error(t);
105
- }
106
- }
107
- if (r?.policies && b(r.policies, "querystring"))
108
- try {
109
- const t = new URLSearchParams(window.location.search).get(h.value);
110
- A(), t && (e = N(e || {}, JSON.parse(t)));
111
- } catch (n) {
112
- console.error(n);
113
- }
114
- e ??= {};
115
- const i = {
116
- tanstack: l?.defaultValues || {},
117
- persistency: e,
118
- schema: te(a)
119
- };
120
- return (s?.defaultValuesPriority || ["tanstack", "persistency", "schema"]).reverse().reduce(
121
- (n, t) => Object.keys(n).length ? N(n, i[t]) : i[t],
122
- {}
123
- );
124
- }), S = (e, r) => e ? _.with(H.setSpan(_.active(), e), r) : r(), o = K({
125
- ...l,
126
- validators: {
127
- onSubmit: p,
128
- ...l?.validators || {}
129
- },
130
- onSubmit: l?.onSubmit ? ({ formApi: e, meta: r, value: i }) => S(r?.currentSpan, async () => {
131
- const n = await m.runPromise(v(i)), t = l.onSubmit({
132
- formApi: e,
133
- meta: r,
134
- value: n
135
- });
136
- if (V.isFiber(t))
137
- return await W(t);
138
- if (m.isEffect(t)) {
139
- const f = await m.runPromise(t);
140
- return V.isFiber(f) ? await W(f) : f;
141
- }
142
- return t;
143
- }) : void 0,
144
- defaultValues: L.value
145
- }), y = () => {
146
- Object.keys(c).forEach((e) => {
147
- o.setFieldValue(e, void 0);
148
- });
149
- }, w = (e) => e.reduce((r, i) => {
150
- const n = i.split(".");
151
- return n.reduce((t, f, U) => (U === n.length - 1 ? t[f] = o.getFieldValue(i) : t[f] = t[f] ?? {}, t[f]), r), r;
152
- }, {}), g = (e) => {
153
- if (!e) return;
154
- const { banKeys: r, keys: i } = e;
155
- if (P.isArray(i))
156
- return w(i);
157
- if (P.isArray(r)) {
158
- const n = Object.keys(c).filter((t) => r.includes(t));
159
- return w(n);
160
- }
161
- return o.store.state.values;
162
- }, u = () => {
163
- const e = s?.persistency;
164
- if (!(!e?.policies || e.policies.length === 0) && (b(e.policies, "local") || b(e.policies, "session"))) {
165
- const r = b(e.policies, "local") ? localStorage : sessionStorage;
166
- if (!r) return;
167
- const i = g(e);
168
- return r.setItem(h.value, JSON.stringify(i));
169
- }
170
- }, d = () => {
171
- const e = s?.persistency;
172
- if (!(!e?.policies || e.policies.length === 0) && b(e.policies, "querystring")) {
173
- const r = g(e), i = new URLSearchParams(window.location.search);
174
- i.set(h.value, JSON.stringify(r));
175
- const n = new URL(window.location.href);
176
- n.search = i.toString(), window.history.replaceState({}, "", n.toString());
177
- }
178
- }, j = (e) => {
179
- o.store.state.isDirty && e.preventDefault();
180
- };
181
- if (D(u), G(() => {
182
- window.addEventListener("beforeunload", u), window.addEventListener("blur", d), s?.preventWindowExit && s.preventWindowExit !== "nope" && window.addEventListener("beforeunload", j);
183
- }), Z(() => {
184
- window.removeEventListener("beforeunload", u), window.removeEventListener("blur", d), s?.preventWindowExit && s.preventWindowExit !== "nope" && window.removeEventListener("beforeunload", j);
185
- }), s?.preventWindowExit === "prevent-and-reset") {
186
- const e = o.useStore((t) => t.isSubmitting), r = o.useStore((t) => t.submissionAttempts), i = o.useStore((t) => t.canSubmit), n = o.useStore((t) => t.values);
187
- R([e, r], ([t, f], [U]) => {
188
- U && !t && f > 0 && i.value && o.reset(n.value);
189
- });
190
- }
191
- const x = (e) => m.currentSpan.pipe(
192
- m.option,
193
- m.flatMap(
194
- (r) => m.promise(() => o.handleSubmit(z.isSome(r) ? { currentSpan: r.value, ...e } : e))
195
- )
196
- ), q = (e) => e?.checkErrors ? x(e?.meta).pipe(m.flatMap(m.fnUntraced(function* () {
197
- const r = o.getAllErrors();
198
- if (Object.keys(r.fields).length || r.form.errors.length)
199
- return yield* m.fail(new ie({ form: r.form, fields: r.fields }));
200
- }))) : x(e?.meta), B = o.handleSubmit, O = Q(/* @__PURE__ */ new Map()), E = Object.assign(o, {
201
- i18nNamespace: s?.i18nNamespace,
202
- ignorePreventCloseEvents: s?.ignorePreventCloseEvents,
203
- meta: c,
204
- unionMeta: F,
205
- clear: y,
206
- handleSubmit: (e) => {
207
- const r = H.getSpan(_.active());
208
- return B({ currentSpan: r, ...e });
209
- },
210
- // /** @experimental */
211
- handleSubmitEffect: q,
212
- registerField: (e) => {
213
- R(e, (r) => {
214
- O.value.set(r.name, { label: r.label, id: r.id });
215
- }, { immediate: !0 }), D(() => {
216
- O.value.get(e.value.name)?.id === e.value.id && O.value.delete(e.value.name);
217
- });
218
- }
219
- }), k = { form: E, fieldMap: O };
220
- return Object.assign(E, {
221
- // Type-level properties for performance optimization (not used at runtime)
222
- _paths: void 0,
223
- _keys: void 0,
224
- _schema: a,
225
- errorContext: k,
226
- Form: M(E)(oe),
227
- Input: M(E)(s?.input ?? se),
228
- TaggedUnion: M(E)(ne),
229
- Field: o.Field,
230
- Errors: ce(k)(ee),
231
- Array: M(E)(Y),
232
- AutoGen: M(E)(C)
233
- });
234
- };
235
- export {
236
- ie as FormErrors,
237
- ae as useErrorLabel,
238
- Fe as useOmegaForm
239
- };
@@ -1,32 +0,0 @@
1
- import l from "./vue-components.es28.js";
2
- import { inject as c, provide as u } from "vue";
3
- import { onMountedWithCleanup as f } from "./vue-components.es29.js";
4
- const p = () => l(), i = /* @__PURE__ */ Symbol("DialogBus"), r = () => c(i, null), g = () => {
5
- const n = p();
6
- return u(i, n), n;
7
- }, d = (n) => {
8
- const o = r();
9
- if (!o)
10
- return;
11
- const s = n();
12
- f(() => {
13
- const e = (t) => {
14
- s.value && (confirm("Es sind ungespeicherte Änderungen vorhanden. Wirklich schließen?") || (t.prevent = !0));
15
- };
16
- return o.on("dialog-closing", e), () => o.off("dialog-closing", e);
17
- });
18
- }, h = (n) => {
19
- let o = r();
20
- return o || (o = g()), () => {
21
- const e = {};
22
- o.emit("dialog-closing", e), e.prevent ? typeof e.prevent == "object" && "then" in e.prevent && e.prevent.then((t) => {
23
- t !== !1 && n();
24
- }) : n();
25
- };
26
- };
27
- export {
28
- r as injectBus,
29
- g as provideBus,
30
- h as useOnClose,
31
- d as usePreventClose
32
- };