@effect-app/vue-components 4.0.0-beta.31 → 4.0.0-beta.310

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 (208) hide show
  1. package/README.md +13 -9
  2. package/dist/reset.css +39 -38
  3. package/dist/types/components/CommandButton.vue.d.ts +24 -5
  4. package/dist/types/components/Dialog.vue.d.ts +3 -1
  5. package/dist/types/components/FixedNuxtErrorBoundary.vue.d.ts +39 -0
  6. package/dist/types/components/OmegaForm/InputProps.d.ts +1 -1
  7. package/dist/types/components/OmegaForm/OmegaArray.vue.d.ts +1 -1
  8. package/dist/types/components/OmegaForm/OmegaAutoGen.vue.d.ts +2 -2
  9. package/dist/types/components/OmegaForm/OmegaErrorsInternal.vue.d.ts +1 -1
  10. package/dist/types/components/OmegaForm/OmegaFormInput.vue.d.ts +1 -1
  11. package/dist/types/components/OmegaForm/OmegaInput.vue.d.ts +1 -1
  12. package/dist/types/components/OmegaForm/OmegaInputVuetify.vue.d.ts +6 -0
  13. package/dist/types/components/OmegaForm/OmegaInternalInput.vue.d.ts +6 -9
  14. package/dist/types/components/OmegaForm/OmegaTaggedUnion.vue.d.ts +2 -2
  15. package/dist/types/components/OmegaForm/OmegaTaggedUnionInternal.vue.d.ts +3 -3
  16. package/dist/types/components/OmegaForm/OmegaWrapper.vue.d.ts +1 -1
  17. package/dist/types/components/OmegaForm/createUseFormWithCustomInput.d.ts +4 -2
  18. package/dist/types/components/OmegaForm/errors.d.ts +33 -0
  19. package/dist/types/components/OmegaForm/getOmegaStore.d.ts +1 -1
  20. package/dist/types/components/OmegaForm/hocs.d.ts +3 -0
  21. package/dist/types/components/OmegaForm/index.d.ts +14 -3
  22. package/dist/types/components/OmegaForm/inputs.d.ts +4 -0
  23. package/dist/types/components/OmegaForm/meta/checks.d.ts +4 -0
  24. package/dist/types/components/OmegaForm/meta/createMeta.d.ts +33 -0
  25. package/dist/types/components/OmegaForm/meta/defaults.d.ts +21 -0
  26. package/dist/types/components/OmegaForm/meta/redacted.d.ts +2 -0
  27. package/dist/types/components/OmegaForm/meta/types.d.ts +56 -0
  28. package/dist/types/components/OmegaForm/meta/walker.d.ts +18 -0
  29. package/dist/types/components/OmegaForm/persistency.d.ts +58 -0
  30. package/dist/types/components/OmegaForm/submit.d.ts +60 -0
  31. package/dist/types/components/OmegaForm/types.d.ts +312 -0
  32. package/dist/types/components/OmegaForm/useOmegaForm.d.ts +9 -213
  33. package/dist/types/components/OmegaForm/validation/localized.d.ts +10 -0
  34. package/dist/types/components/index.d.ts +1 -0
  35. package/dist/types/index.d.ts +0 -1
  36. package/dist/types/utils/index.d.ts +8 -8
  37. package/dist/vue-components.es.js +30 -44
  38. package/dist/vue-components10.es.js +5 -0
  39. package/dist/vue-components11.es.js +56 -0
  40. package/dist/vue-components12.es.js +5 -0
  41. package/dist/vue-components13.es.js +20 -0
  42. package/dist/vue-components14.es.js +49 -0
  43. package/dist/vue-components15.es.js +128 -0
  44. package/dist/vue-components16.es.js +65 -0
  45. package/dist/vue-components17.es.js +114 -0
  46. package/dist/vue-components18.es.js +22 -0
  47. package/dist/vue-components19.es.js +5 -0
  48. package/dist/vue-components2.es.js +11 -0
  49. package/dist/vue-components20.es.js +80 -0
  50. package/dist/vue-components21.es.js +93 -0
  51. package/dist/vue-components22.es.js +73 -0
  52. package/dist/vue-components23.es.js +12 -0
  53. package/dist/vue-components24.es.js +57 -0
  54. package/dist/vue-components25.es.js +5 -0
  55. package/dist/vue-components26.es.js +44 -0
  56. package/dist/vue-components27.es.js +5 -0
  57. package/dist/vue-components28.es.js +84 -0
  58. package/dist/vue-components3.es.js +98 -0
  59. package/dist/vue-components30.es.js +8 -0
  60. package/dist/vue-components31.es.js +9 -0
  61. package/dist/vue-components32.es.js +24 -0
  62. package/dist/vue-components33.es.js +300 -0
  63. package/dist/vue-components35.es.js +8 -0
  64. package/dist/vue-components36.es.js +73 -0
  65. package/dist/vue-components37.es.js +5 -0
  66. package/dist/vue-components38.es.js +64 -0
  67. package/dist/vue-components39.es.js +5 -0
  68. package/dist/vue-components4.es.js +5 -0
  69. package/dist/vue-components40.es.js +24 -0
  70. package/dist/vue-components41.es.js +5 -0
  71. package/dist/vue-components42.es.js +59 -0
  72. package/dist/vue-components43.es.js +5 -0
  73. package/dist/vue-components44.es.js +12 -0
  74. package/dist/vue-components45.es.js +22 -0
  75. package/dist/vue-components47.es.js +9 -0
  76. package/dist/vue-components48.es.js +4 -0
  77. package/dist/vue-components49.es.js +38 -0
  78. package/dist/vue-components5.es.js +24 -0
  79. package/dist/vue-components50.es.js +27 -0
  80. package/dist/vue-components51.es.js +28 -0
  81. package/dist/vue-components52.es.js +7 -0
  82. package/dist/vue-components53.es.js +18 -0
  83. package/dist/vue-components54.es.js +36 -0
  84. package/dist/vue-components55.es.js +18 -0
  85. package/dist/vue-components56.es.js +21 -0
  86. package/dist/vue-components57.es.js +30 -0
  87. package/dist/vue-components58.es.js +7 -0
  88. package/dist/vue-components59.es.js +9 -0
  89. package/dist/vue-components6.es.js +13 -0
  90. package/dist/vue-components60.es.js +38 -0
  91. package/dist/vue-components61.es.js +25 -0
  92. package/dist/vue-components62.es.js +128 -0
  93. package/dist/vue-components63.es.js +24 -0
  94. package/dist/vue-components64.es.js +21 -0
  95. package/dist/vue-components65.es.js +9 -0
  96. package/dist/vue-components66.es.js +19 -0
  97. package/dist/vue-components67.es.js +5 -0
  98. package/dist/vue-components68.es.js +29 -0
  99. package/dist/vue-components69.es.js +5 -0
  100. package/dist/vue-components7.es.js +13 -0
  101. package/dist/vue-components70.es.js +43 -0
  102. package/dist/vue-components71.es.js +101 -0
  103. package/dist/vue-components72.es.js +36 -0
  104. package/dist/vue-components73.es.js +19 -0
  105. package/dist/vue-components74.es.js +50 -0
  106. package/dist/vue-components8.es.js +35 -0
  107. package/dist/vue-components9.es.js +47 -0
  108. package/package.json +39 -33
  109. package/src/components/CommandButton.vue +96 -16
  110. package/src/components/Dialog.vue +0 -1
  111. package/src/components/FixedNuxtErrorBoundary.vue +112 -0
  112. package/src/components/OmegaForm/InputProps.ts +1 -1
  113. package/src/components/OmegaForm/OmegaArray.vue +8 -9
  114. package/src/components/OmegaForm/OmegaAutoGen.vue +3 -2
  115. package/src/components/OmegaForm/OmegaErrorsInternal.vue +1 -1
  116. package/src/components/OmegaForm/OmegaFormInput.vue +1 -1
  117. package/src/components/OmegaForm/OmegaInput.vue +26 -40
  118. package/src/components/OmegaForm/OmegaInputVuetify.vue +58 -8
  119. package/src/components/OmegaForm/OmegaInternalInput.vue +32 -13
  120. package/src/components/OmegaForm/OmegaTaggedUnion.vue +10 -3
  121. package/src/components/OmegaForm/OmegaTaggedUnionInternal.vue +6 -6
  122. package/src/components/OmegaForm/OmegaWrapper.vue +1 -1
  123. package/src/components/OmegaForm/blockDialog.ts +18 -6
  124. package/src/components/OmegaForm/createUseFormWithCustomInput.ts +16 -14
  125. package/src/components/OmegaForm/errors.ts +136 -0
  126. package/src/components/OmegaForm/getOmegaStore.ts +1 -1
  127. package/src/components/OmegaForm/hocs.ts +19 -0
  128. package/src/components/OmegaForm/index.ts +17 -4
  129. package/src/components/OmegaForm/inputs.ts +22 -0
  130. package/src/components/OmegaForm/meta/checks.ts +82 -0
  131. package/src/components/OmegaForm/meta/createMeta.ts +140 -0
  132. package/src/components/OmegaForm/meta/defaults.ts +262 -0
  133. package/src/components/OmegaForm/meta/redacted.ts +66 -0
  134. package/src/components/OmegaForm/meta/types.ts +78 -0
  135. package/src/components/OmegaForm/meta/walker.ts +248 -0
  136. package/src/components/OmegaForm/persistency.ts +247 -0
  137. package/src/components/OmegaForm/submit.ts +131 -0
  138. package/src/components/OmegaForm/types.ts +801 -0
  139. package/src/components/OmegaForm/useOmegaForm.ts +103 -896
  140. package/src/components/OmegaForm/useRegisterField.ts +1 -1
  141. package/src/components/OmegaForm/validation/localized.ts +203 -0
  142. package/src/components/index.ts +1 -0
  143. package/src/index.ts +0 -1
  144. package/src/reset.css +39 -38
  145. package/src/utils/index.ts +11 -8
  146. package/dist/types/components/OmegaForm/OmegaFormStuff.d.ts +0 -159
  147. package/dist/types/constants/index.d.ts +0 -1
  148. package/dist/vue-components.es10.js +0 -239
  149. package/dist/vue-components.es11.js +0 -32
  150. package/dist/vue-components.es12.js +0 -503
  151. package/dist/vue-components.es13.js +0 -49
  152. package/dist/vue-components.es14.js +0 -4
  153. package/dist/vue-components.es15.js +0 -4
  154. package/dist/vue-components.es16.js +0 -6
  155. package/dist/vue-components.es17.js +0 -13
  156. package/dist/vue-components.es18.js +0 -57
  157. package/dist/vue-components.es19.js +0 -56
  158. package/dist/vue-components.es2.js +0 -30
  159. package/dist/vue-components.es20.js +0 -8
  160. package/dist/vue-components.es21.js +0 -8
  161. package/dist/vue-components.es22.js +0 -5
  162. package/dist/vue-components.es23.js +0 -5
  163. package/dist/vue-components.es24.js +0 -4
  164. package/dist/vue-components.es25.js +0 -4
  165. package/dist/vue-components.es26.js +0 -4
  166. package/dist/vue-components.es27.js +0 -4
  167. package/dist/vue-components.es28.js +0 -19
  168. package/dist/vue-components.es29.js +0 -13
  169. package/dist/vue-components.es3.js +0 -17
  170. package/dist/vue-components.es30.js +0 -194
  171. package/dist/vue-components.es32.js +0 -31
  172. package/dist/vue-components.es33.js +0 -6
  173. package/dist/vue-components.es34.js +0 -4
  174. package/dist/vue-components.es35.js +0 -4
  175. package/dist/vue-components.es36.js +0 -113
  176. package/dist/vue-components.es38.js +0 -9
  177. package/dist/vue-components.es39.js +0 -34
  178. package/dist/vue-components.es4.js +0 -52
  179. package/dist/vue-components.es41.js +0 -6
  180. package/dist/vue-components.es42.js +0 -25
  181. package/dist/vue-components.es43.js +0 -7
  182. package/dist/vue-components.es44.js +0 -23
  183. package/dist/vue-components.es45.js +0 -32
  184. package/dist/vue-components.es46.js +0 -24
  185. package/dist/vue-components.es47.js +0 -14
  186. package/dist/vue-components.es48.js +0 -7
  187. package/dist/vue-components.es49.js +0 -21
  188. package/dist/vue-components.es5.js +0 -52
  189. package/dist/vue-components.es50.js +0 -11
  190. package/dist/vue-components.es51.js +0 -33
  191. package/dist/vue-components.es52.js +0 -50
  192. package/dist/vue-components.es53.js +0 -28
  193. package/dist/vue-components.es54.js +0 -13
  194. package/dist/vue-components.es55.js +0 -67
  195. package/dist/vue-components.es56.js +0 -58
  196. package/dist/vue-components.es57.js +0 -19
  197. package/dist/vue-components.es58.js +0 -35
  198. package/dist/vue-components.es59.js +0 -31
  199. package/dist/vue-components.es6.js +0 -69
  200. package/dist/vue-components.es60.js +0 -44
  201. package/dist/vue-components.es61.js +0 -4
  202. package/dist/vue-components.es62.js +0 -46
  203. package/dist/vue-components.es63.js +0 -4
  204. package/dist/vue-components.es7.js +0 -83
  205. package/dist/vue-components.es8.js +0 -63
  206. package/dist/vue-components.es9.js +0 -21
  207. package/src/components/OmegaForm/OmegaFormStuff.ts +0 -1276
  208. package/src/constants/index.ts +0 -1
@@ -0,0 +1,19 @@
1
+ import { ProxyTracer as e } from "./vue-components64.es.js";
2
+ import { NoopTracerProvider as t } from "./vue-components65.es.js";
3
+ //#region ../../node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js
4
+ var n = new t(), r = class {
5
+ getTracer(t, n, r) {
6
+ return this.getDelegateTracer(t, n, r) ?? new e(this, t, n, r);
7
+ }
8
+ getDelegate() {
9
+ return this._delegate ?? n;
10
+ }
11
+ setDelegate(e) {
12
+ this._delegate = e;
13
+ }
14
+ getDelegateTracer(e, t, n) {
15
+ return this._delegate?.getTracer(e, t, n);
16
+ }
17
+ };
18
+ //#endregion
19
+ export { r as ProxyTracerProvider };
@@ -0,0 +1,5 @@
1
+ import { ContextAPI as e } from "./vue-components57.es.js";
2
+ //#region ../../node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/context-api.js
3
+ var t = e.getInstance();
4
+ //#endregion
5
+ export { t as context };
@@ -0,0 +1,29 @@
1
+ import { getGlobal as e, registerGlobal as t, unregisterGlobal as n } from "./vue-components50.es.js";
2
+ import { DiagAPI as r } from "./vue-components54.es.js";
3
+ import { deleteSpan as i, getActiveSpan as a, getSpan as o, getSpanContext as s, setSpan as c, setSpanContext as l } from "./vue-components61.es.js";
4
+ import { isSpanContextValid as u, wrapSpanContext as d } from "./vue-components62.es.js";
5
+ import { ProxyTracerProvider as f } from "./vue-components66.es.js";
6
+ //#region ../../node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/api/trace.js
7
+ var p = "trace", m = class m {
8
+ constructor() {
9
+ this._proxyTracerProvider = new f(), this.wrapSpanContext = d, this.isSpanContextValid = u, this.deleteSpan = i, this.getSpan = o, this.getActiveSpan = a, this.getSpanContext = s, this.setSpan = c, this.setSpanContext = l;
10
+ }
11
+ static getInstance() {
12
+ return this._instance ||= new m(), this._instance;
13
+ }
14
+ setGlobalTracerProvider(e) {
15
+ let n = t(p, this._proxyTracerProvider, r.instance());
16
+ return n && this._proxyTracerProvider.setDelegate(e), n;
17
+ }
18
+ getTracerProvider() {
19
+ return e(p) || this._proxyTracerProvider;
20
+ }
21
+ getTracer(e, t) {
22
+ return this.getTracerProvider().getTracer(e, t);
23
+ }
24
+ disable() {
25
+ n(p, r.instance()), this._proxyTracerProvider = new f();
26
+ }
27
+ };
28
+ //#endregion
29
+ export { m as TraceAPI };
@@ -0,0 +1,5 @@
1
+ import { TraceAPI as e } from "./vue-components68.es.js";
2
+ //#region ../../node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/trace-api.js
3
+ var t = e.getInstance();
4
+ //#endregion
5
+ export { t as trace };
@@ -0,0 +1,13 @@
1
+ import { onMounted as e, onUnmounted as t } from "vue";
2
+ //#region src/components/OmegaForm/onMountedWithCleanup.ts
3
+ function n(n) {
4
+ let r;
5
+ e(() => {
6
+ let e = n();
7
+ e && (r = e);
8
+ }), t(() => {
9
+ r && r();
10
+ });
11
+ }
12
+ //#endregion
13
+ export { n as onMountedWithCleanup };
@@ -0,0 +1,43 @@
1
+ import { context as e } from "./vue-components67.es.js";
2
+ import { trace as t } from "./vue-components69.es.js";
3
+ import * as n from "effect-app/Option";
4
+ import * as r from "effect-app/Effect";
5
+ import { runtimeFiberAsPromise as i } from "effect-app/utils";
6
+ import * as a from "effect/Data";
7
+ import * as o from "effect/Fiber";
8
+ //#region src/components/OmegaForm/submit.ts
9
+ var s = class extends a.TaggedError("FormErrors") {}, c = (n, r) => n ? e.with(t.setSpan(e.active(), n), r) : r(), l = (e, t, n) => {
10
+ if (e) return ({ formApi: a, meta: s, value: l }) => c(s?.currentSpan, async () => {
11
+ let c = e({
12
+ formApi: a,
13
+ meta: s,
14
+ value: await n(t(l))
15
+ });
16
+ if (o.isFiber(c)) return await i(c);
17
+ if (r.isEffect(c)) {
18
+ let e = await n(c);
19
+ return o.isFiber(e) ? await i(e) : e;
20
+ }
21
+ return c;
22
+ });
23
+ }, u = (i) => {
24
+ let a = i.handleSubmit.bind(i), o = async (e) => await a(e), c = (n) => o({
25
+ currentSpan: t.getSpan(e.active()),
26
+ ...n
27
+ }), l = (e) => r.currentSpan.pipe(r.option, r.flatMap((t) => r.promise(() => o(n.isSome(t) ? {
28
+ currentSpan: t.value,
29
+ ...e
30
+ } : e))));
31
+ return {
32
+ handleSubmit: c,
33
+ handleSubmitEffect: (e) => e?.checkErrors ? l(e?.meta).pipe(r.flatMap(r.fnUntraced(function* () {
34
+ let e = i.getAllErrors();
35
+ if (Object.keys(e.fields).length || e.form.errors.length) return yield* r.fail(new s({
36
+ form: e.form,
37
+ fields: e.fields
38
+ }));
39
+ }))) : l(e?.meta)
40
+ };
41
+ };
42
+ //#endregion
43
+ export { s as FormErrors, u as makeSubmitHandlers, l as wrapOnSubmit };
@@ -0,0 +1,101 @@
1
+ import { useIntl as e } from "./vue-components6.es.js";
2
+ import { generateMetaFromSchema as t, unwrapDeclaration as n } from "./vue-components16.es.js";
3
+ import { defaultsValueFromSchema as r, fillNestedDefaults as i } from "./vue-components17.es.js";
4
+ import { toFormSchema as a } from "./vue-components18.es.js";
5
+ import { usePersistency as o } from "./vue-components20.es.js";
6
+ import { annotateLiteralUnionMessages as s, toLocalizedStandardSchemaV1 as c } from "./vue-components21.es.js";
7
+ import { eHoc as l, makeFieldMap as u } from "./vue-components22.es.js";
8
+ import { fHoc as d } from "./vue-components23.es.js";
9
+ import f from "./vue-components25.es.js";
10
+ import p from "./vue-components27.es.js";
11
+ import m from "./vue-components31.es.js";
12
+ import h from "./vue-components39.es.js";
13
+ import g from "./vue-components43.es.js";
14
+ import _ from "./vue-components47.es.js";
15
+ import { makeSubmitHandlers as v, wrapOnSubmit as y } from "./vue-components70.es.js";
16
+ import { watch as b } from "vue";
17
+ import * as x from "effect-app/Schema";
18
+ import { revalidateLogic as S, useForm as C } from "@tanstack/vue-form";
19
+ import * as w from "effect-app/Context";
20
+ import { makeRunPromise as T } from "@effect-app/vue/runtime";
21
+ //#region src/components/OmegaForm/useOmegaForm.ts
22
+ var E = Symbol("OmegaForm"), D = T(w.empty()), O = (w, T, E) => {
23
+ if (!w) throw Error("Schema is required");
24
+ let { trans: O } = e(), k = a(w), A = s(k, O), j = n(k.ast), M = (e) => i(j, e), N = c(A, O), P = {
25
+ ...N,
26
+ "~standard": {
27
+ ...N["~standard"],
28
+ validate: (e) => N["~standard"].validate(M(e))
29
+ }
30
+ }, F = x.decodeUnknownEffectConcurrently(k), I = (e) => F(M(e)), { meta: L, unionMeta: R } = t(k), z = { form: void 0 }, B = o({
31
+ meta: L,
32
+ persistency: E?.persistency,
33
+ preventWindowExit: E?.preventWindowExit,
34
+ defaultValuesPriority: E?.defaultValuesPriority,
35
+ tanstackDefaultValues: T?.defaultValues,
36
+ schemaDefaultValues: () => r(w),
37
+ getForm: () => z.form
38
+ }), V = C({
39
+ ...T,
40
+ validationLogic: S(),
41
+ validators: {
42
+ onDynamic: P,
43
+ ...T?.validators
44
+ },
45
+ onSubmit: y(T?.onSubmit, I, D),
46
+ defaultValues: B.defaultValues.value
47
+ });
48
+ z.form = V;
49
+ let H = () => {
50
+ let e = V.state.values, t = i(j, e);
51
+ if (t === e || !t || typeof t != "object") return;
52
+ let n = e, r = t;
53
+ for (let e of Object.keys(r)) if (r[e] !== n[e]) {
54
+ let t = e;
55
+ V.setFieldValue(t, r[e], {
56
+ dontUpdateMeta: !0,
57
+ dontValidate: !0
58
+ });
59
+ }
60
+ }, U = () => {
61
+ Object.keys(L).forEach((e) => {
62
+ V.setFieldValue(e, void 0);
63
+ });
64
+ };
65
+ if (E?.preventWindowExit === "prevent-and-reset") {
66
+ let e = V.useStore((e) => e.isSubmitting), t = V.useStore((e) => e.submissionAttempts), n = V.useStore((e) => e.canSubmit), r = V.useStore((e) => e.values);
67
+ b([e, t], ([e, t], [i]) => {
68
+ i && !e && t > 0 && n.value && V.reset(r.value);
69
+ });
70
+ }
71
+ let { handleSubmit: W, handleSubmitEffect: G } = v(V), { fieldMap: K, registerField: q } = u(), J = Object.assign(V, {
72
+ i18nNamespace: E?.i18nNamespace,
73
+ ignorePreventCloseEvents: E?.ignorePreventCloseEvents,
74
+ inputs: E?.inputs,
75
+ meta: L,
76
+ unionMeta: R,
77
+ clear: U,
78
+ normalizeNullableStructs: H,
79
+ handleSubmit: W,
80
+ handleSubmitEffect: G,
81
+ registerField: q
82
+ }), Y = {
83
+ form: J,
84
+ fieldMap: K
85
+ };
86
+ return Object.assign(J, {
87
+ _paths: void 0,
88
+ _keys: void 0,
89
+ _schema: w,
90
+ errorContext: Y,
91
+ Form: d(J)(_),
92
+ Input: d(J)(E?.input ?? h),
93
+ TaggedUnion: d(J)(g),
94
+ Field: V.Field,
95
+ Errors: l(Y)(m),
96
+ Array: d(J)(f),
97
+ AutoGen: d(J)(p)
98
+ });
99
+ };
100
+ //#endregion
101
+ export { E as OmegaFormKey, O as useOmegaForm };
@@ -0,0 +1,36 @@
1
+ import e from "./vue-components39.es.js";
2
+ import { useOmegaForm as t } from "./vue-components71.es.js";
3
+ import { h as n } from "vue";
4
+ //#region src/components/OmegaForm/createUseFormWithCustomInput.ts
5
+ var r = (r) => (i, a, o) => {
6
+ let s = {
7
+ name: "WrappedInput",
8
+ inheritAttrs: !1,
9
+ setup(t, { attrs: i, slots: a }) {
10
+ return () => n(e, {
11
+ ...t,
12
+ ...i
13
+ }, {
14
+ default: ({ field: e, state: t, ...s }) => {
15
+ let c = Object.fromEntries(Object.entries(i).filter(([e]) => !Object.prototype.hasOwnProperty.call(s, e) && e !== "form"));
16
+ return n(o?.inputs?.[s.type] ?? r, {
17
+ ...c,
18
+ field: e,
19
+ state: t,
20
+ inputProps: s
21
+ }, {
22
+ ...a.label && { label: (e) => a.label(e) },
23
+ ...a.default && { default: (e) => a.default(e) }
24
+ });
25
+ },
26
+ ...a.label && { label: (e) => a.label(e) }
27
+ });
28
+ }
29
+ };
30
+ return t(i, a, {
31
+ ...o,
32
+ input: s
33
+ });
34
+ };
35
+ //#endregion
36
+ export { r as createUseFormWithCustomInput };
@@ -0,0 +1,19 @@
1
+ import "./vue-components8.es.js";
2
+ import "./vue-components13.es.js";
3
+ import "./vue-components16.es.js";
4
+ import "./vue-components17.es.js";
5
+ import "./vue-components18.es.js";
6
+ import "./vue-components20.es.js";
7
+ import "./vue-components21.es.js";
8
+ import "./vue-components22.es.js";
9
+ import "./vue-components37.es.js";
10
+ import "./vue-components39.es.js";
11
+ import "./vue-components41.es.js";
12
+ import "./vue-components43.es.js";
13
+ import "./vue-components70.es.js";
14
+ import "./vue-components71.es.js";
15
+ import "./vue-components72.es.js";
16
+ //#region src/components/OmegaForm/index.ts
17
+ var e = (e) => e;
18
+ //#endregion
19
+ export { e as duplicateSchema };
@@ -0,0 +1,50 @@
1
+ import { __exportAll as e } from "./vue-components2.es.js";
2
+ import t from "./vue-components4.es.js";
3
+ import { useOnClose as n, usePreventClose as r } from "./vue-components8.es.js";
4
+ import i from "./vue-components10.es.js";
5
+ import a from "./vue-components12.es.js";
6
+ import { getInputType as o } from "./vue-components13.es.js";
7
+ import { createMeta as s, generateMetaFromSchema as c, isNullableOrUndefined as l, metadataFromAst as u } from "./vue-components16.es.js";
8
+ import { defaultsValueFromSchema as d } from "./vue-components17.es.js";
9
+ import { toFormSchema as f } from "./vue-components18.es.js";
10
+ import { deepMerge as p } from "./vue-components20.es.js";
11
+ import { makeStandardSchemaV1Hooks as m, toLocalizedStandardSchemaV1 as h } from "./vue-components21.es.js";
12
+ import { useErrorLabel as g } from "./vue-components22.es.js";
13
+ import _ from "./vue-components37.es.js";
14
+ import v from "./vue-components39.es.js";
15
+ import y from "./vue-components41.es.js";
16
+ import b from "./vue-components43.es.js";
17
+ import { FormErrors as x } from "./vue-components70.es.js";
18
+ import { OmegaFormKey as S, useOmegaForm as C } from "./vue-components71.es.js";
19
+ import { createUseFormWithCustomInput as w } from "./vue-components72.es.js";
20
+ import { duplicateSchema as T } from "./vue-components73.es.js";
21
+ //#region src/components/index.ts
22
+ var E = /* @__PURE__ */ e({
23
+ CommandButton: () => t,
24
+ Dialog: () => i,
25
+ FixedNuxtErrorBoundary: () => a,
26
+ FormErrors: () => x,
27
+ OmegaFormKey: () => S,
28
+ OmegaInput: () => v,
29
+ OmegaTaggedUnion: () => b,
30
+ OmegaTaggedUnionInternal: () => y,
31
+ OmegaVuetifyInput: () => _,
32
+ createMeta: () => s,
33
+ createUseFormWithCustomInput: () => w,
34
+ deepMerge: () => p,
35
+ defaultsValueFromSchema: () => d,
36
+ duplicateSchema: () => T,
37
+ generateMetaFromSchema: () => c,
38
+ getInputType: () => o,
39
+ isNullableOrUndefined: () => l,
40
+ makeStandardSchemaV1Hooks: () => m,
41
+ metadataFromAst: () => u,
42
+ toFormSchema: () => f,
43
+ toLocalizedStandardSchemaV1: () => h,
44
+ useErrorLabel: () => g,
45
+ useOmegaForm: () => C,
46
+ useOnClose: () => n,
47
+ usePreventClose: () => r
48
+ });
49
+ //#endregion
50
+ export { E as components_exports };
@@ -0,0 +1,35 @@
1
+ import e from "./vue-components5.es.js";
2
+ import { useIntl as t } from "./vue-components6.es.js";
3
+ import { onMountedWithCleanup as n } from "./vue-components7.es.js";
4
+ import { inject as r, provide as i } from "vue";
5
+ //#region src/components/OmegaForm/blockDialog.ts
6
+ var a = () => e(), o = Symbol("DialogBus"), s = () => r(o, null), c = () => {
7
+ let e = a();
8
+ return i(o, e), e;
9
+ }, l = (e) => {
10
+ let r = s();
11
+ if (!r) return;
12
+ let { formatMessage: i, trans: a } = t(), o = e(), c = "There are unsaved changes. Are you sure you want to close?";
13
+ n(() => {
14
+ let e = (e) => {
15
+ if (o.value) {
16
+ let t = i ? i({
17
+ id: "form.unsaved_changes_confirm",
18
+ defaultMessage: c
19
+ }) : a?.("form.unsaved_changes_confirm") ?? c;
20
+ confirm(t) || (e.prevent = !0);
21
+ }
22
+ };
23
+ return r.on("dialog-closing", e), () => r.off("dialog-closing", e);
24
+ });
25
+ }, u = (e) => {
26
+ let t = s();
27
+ return t ||= c(), () => {
28
+ let n = {};
29
+ t.emit("dialog-closing", n), n.prevent ? typeof n.prevent == "object" && "then" in n.prevent && n.prevent.then((t) => {
30
+ t && e();
31
+ }).catch(console.error) : e();
32
+ };
33
+ };
34
+ //#endregion
35
+ export { u as useOnClose, l as usePreventClose };
@@ -0,0 +1,47 @@
1
+ import { onMountedWithCleanup as e } from "./vue-components7.es.js";
2
+ import { useOnClose as t } from "./vue-components8.es.js";
3
+ import { computed as n, createBlock as r, createSlots as i, defineComponent as a, guardReactiveProps as o, mergeModels as s, normalizeProps as c, openBlock as l, renderList as u, renderSlot as d, resolveComponent as f, unref as p, useModel as m, useSlots as h, withCtx as g } from "vue";
4
+ //#region src/components/Dialog.vue?vue&type=script&setup=true&lang.ts
5
+ var _ = /*@__PURE__*/ a({
6
+ __name: "Dialog",
7
+ props: /*@__PURE__*/ s({ persistent: { type: Boolean } }, {
8
+ modelValue: {
9
+ type: Boolean,
10
+ default: !1
11
+ },
12
+ modelModifiers: {}
13
+ }),
14
+ emits: ["update:modelValue"],
15
+ setup(a) {
16
+ let s = a, _ = m(a, "modelValue"), v = h(), y = n(() => {
17
+ let { default: e, ...t } = v;
18
+ return t;
19
+ }), b = t(() => _.value = !1);
20
+ return e(() => {
21
+ let e = (e) => {
22
+ _.value && !s.persistent && e.code === "Escape" && b();
23
+ };
24
+ return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
25
+ }), (e, t) => {
26
+ let n = f("v-dialog");
27
+ return l(), r(n, {
28
+ modelValue: _.value,
29
+ "onUpdate:modelValue": t[0] ||= (e) => _.value = e,
30
+ persistent: "",
31
+ "onClick:outside": p(b)
32
+ }, i({
33
+ default: g(({ isActive: t }) => [d(e.$slots, "default", {
34
+ open: _.value,
35
+ cancel: p(b),
36
+ isActive: t
37
+ })]),
38
+ _: 2
39
+ }, [u(y.value, (t, n) => ({
40
+ name: n,
41
+ fn: g((t) => [d(e.$slots, n, c(o(t)))])
42
+ }))]), 1032, ["modelValue", "onClick:outside"]);
43
+ };
44
+ }
45
+ });
46
+ //#endregion
47
+ export { _ as default };
package/package.json CHANGED
@@ -1,45 +1,50 @@
1
1
  {
2
2
  "name": "@effect-app/vue-components",
3
- "version": "4.0.0-beta.31",
3
+ "version": "4.0.0-beta.310",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "https://github.com/effect-app/libs.git",
7
+ "directory": "packages/vue-components"
8
+ },
4
9
  "peerDependencies": {
5
10
  "@mdi/js": "^7.4.47",
6
- "effect": "^4.0.0-beta.37",
7
- "intl-messageformat": "^11.1.2",
11
+ "effect": "^4.0.0-beta.90",
12
+ "intl-messageformat": "^11.2.7",
8
13
  "mdi-js": "^1.0.1",
9
14
  "primeflex": "^4.0.0",
10
15
  "primeicons": "^7.0.0",
11
- "primevue": "^4.5.4",
12
- "vue": "^3.5.29",
13
- "vuetify": "^4.0.1"
16
+ "primevue": "^4.5.5",
17
+ "vue": "^3.5.35",
18
+ "vue-router": "^5.1.0",
19
+ "vuetify": "^4.0.8"
14
20
  },
15
21
  "devDependencies": {
16
- "@storybook/vue3": "^10.2.15",
17
- "@storybook/vue3-vite": "^10.2.15",
18
- "@types/node": "^25.3.3",
19
- "@vitejs/plugin-vue": "^6.0.4",
20
- "@vue/test-utils": "^2.4.6",
21
- "@vueuse/core": "^14.2.1",
22
- "dprint": "^0.52.0",
23
- "jsdom": "^28.1.0",
22
+ "@storybook/vue3": "^10.4.1",
23
+ "@storybook/vue3-vite": "^10.4.1",
24
+ "@types/node": "^25.9.1",
25
+ "@vitejs/plugin-vue": "^6.0.7",
26
+ "@vue/test-utils": "^2.4.10",
27
+ "@vueuse/core": "^14.3.0",
28
+ "jsdom": "^29.1.1",
24
29
  "rimraf": "^6.1.3",
25
- "sass": "^1.97.3",
26
- "storybook": "^10.2.15",
27
- "typescript": "~5.9.3",
28
- "vite": "^7.3.1",
29
- "vite-plugin-css-injected-by-js": "^4.0.1",
30
+ "sass": "^1.100.0",
31
+ "storybook": "^10.4.1",
32
+ "storybook-vue3-router": "^7.0.0",
33
+ "typescript": "~6.0.3",
34
+ "vite": "^8.0.15",
35
+ "vite-plugin-css-injected-by-js": "^5.0.1",
30
36
  "vitepress": "^1.6.4",
31
- "vitest": "^4.0.18",
32
- "vue-router": "^5.0.3",
37
+ "vitest": "^4.1.7",
38
+ "vue-router": "^5.1.0",
33
39
  "vue-toastification": "^2.0.0-rc.5",
34
- "vue-tsc": "^3.2.5",
35
- "vuetify": "^4.0.1",
36
- "@effect-app/eslint-shared-config": "0.5.7-beta.2"
40
+ "vue-tsc": "^3.3.3",
41
+ "vuetify": "^4.0.8",
42
+ "@effect-app/eslint-shared-config": "0.6.0-beta.36"
37
43
  },
38
44
  "files": [
39
45
  "src",
40
46
  "dist"
41
47
  ],
42
- "module": "./dist/vue-components.es.js",
43
48
  "exports": {
44
49
  ".": {
45
50
  "types": "./dist/types/index.d.ts",
@@ -52,29 +57,30 @@
52
57
  }
53
58
  },
54
59
  "dependencies": {
55
- "@opentelemetry/api": "^1.9.0",
56
- "@tanstack/vue-form": "^1.23.5",
60
+ "@opentelemetry/api": "^1.9.1",
61
+ "@tanstack/vue-form": "^1.32.0",
57
62
  "highlight.js": "^11.11.1",
58
63
  "mitt": "^3.0.1",
59
64
  "vue3-highlightjs": "^1.0.5",
60
- "@effect-app/vue": "4.0.0-beta.31",
61
- "effect-app": "4.0.0-beta.31"
65
+ "@effect-app/vue": "4.0.0-beta.310",
66
+ "effect-app": "4.0.0-beta.310"
62
67
  },
63
68
  "scripts": {
64
69
  "check": "vue-tsc",
65
70
  "build": "pnpm build:run",
66
- "build:run": "rimraf dist && vue-tsc && vite build && cp src/reset.css dist/reset.css",
71
+ "build:run": "rimraf dist && vue-tsc -p tsconfig.build.json && vite build && cp src/reset.css dist/reset.css",
67
72
  "docs:dev": "vitepress dev docs",
68
73
  "docs:build": "vitepress build docs",
69
74
  "docs:serve": "vitepress serve docs",
70
- "lint": "NODE_OPTIONS=--max-old-space-size=8192 eslint src stories .storybook",
75
+ "lint": "oxlint --quiet --type-aware src stories && NODE_OPTIONS=--max-old-space-size=8192 ESLINT_TS=1 eslint --quiet src stories .storybook && pnpm exec dprint check --config ../../dprint.jsonc .",
71
76
  "ncu": "ncu",
72
77
  "clean": "rm -rf dist",
73
- "lint-fix": "pnpm lint --fix",
78
+ "lint-fix": "oxlint --quiet --type-aware --fix src stories && NODE_OPTIONS=--max-old-space-size=8192 ESLINT_TS=1 eslint --quiet --fix src stories .storybook && pnpm exec dprint fmt --config ../../dprint.jsonc .",
74
79
  "storybook": "storybook dev -p 6006",
75
80
  "build-storybook": "storybook build",
76
81
  "test": "vitest",
77
82
  "test:run": "vitest run",
78
83
  "test:watch": "vitest watch"
79
- }
84
+ },
85
+ "module": "./dist/vue-components.es.js"
80
86
  }