@fragno-dev/forms 0.0.1

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.
@@ -0,0 +1,135 @@
1
+ import * as zod0 from "zod";
2
+ import * as zod_v4_core0 from "zod/v4/core";
3
+ import * as _fragno_dev_core_api0 from "@fragno-dev/core/api";
4
+ import * as _standard_schema_spec0 from "@standard-schema/spec";
5
+ import { FragnoPublicClientConfig } from "@fragno-dev/core/client";
6
+ import * as _fragno_dev_core_vue0 from "@fragno-dev/core/vue";
7
+
8
+ //#region src/client/vue.d.ts
9
+ declare function createFormsClient(config?: FragnoPublicClientConfig): {
10
+ useForm: _fragno_dev_core_vue0.FragnoVueHook<"GET", "/:slug", zod0.ZodObject<{
11
+ id: zod0.ZodString;
12
+ title: zod0.ZodString;
13
+ description: zod0.ZodNullable<zod0.ZodString>;
14
+ slug: zod0.ZodString;
15
+ status: zod0.ZodEnum<{
16
+ draft: "draft";
17
+ open: "open";
18
+ closed: "closed";
19
+ static: "static";
20
+ }>;
21
+ dataSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
22
+ uiSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
23
+ version: zod0.ZodNumber;
24
+ createdAt: zod0.ZodDate;
25
+ updatedAt: zod0.ZodDate;
26
+ }, zod_v4_core0.$strip>, "NOT_FOUND", string>;
27
+ useSubmitForm: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/:slug/submit", zod0.ZodObject<{
28
+ data: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
29
+ securityToken: zod0.ZodOptional<zod0.ZodString>;
30
+ }, zod_v4_core0.$strip> | undefined, zod0.ZodString | undefined, "NOT_FOUND" | "VALIDATION_ERROR" | "FORM_NOT_OPEN", string>;
31
+ useForms: _fragno_dev_core_vue0.FragnoVueHook<"GET", "/admin/forms", NonNullable<zod0.ZodString | zod0.ZodArray<zod0.ZodObject<{
32
+ id: zod0.ZodString;
33
+ title: zod0.ZodString;
34
+ description: zod0.ZodNullable<zod0.ZodString>;
35
+ slug: zod0.ZodString;
36
+ status: zod0.ZodEnum<{
37
+ draft: "draft";
38
+ open: "open";
39
+ closed: "closed";
40
+ static: "static";
41
+ }>;
42
+ dataSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
43
+ uiSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
44
+ version: zod0.ZodNumber;
45
+ createdAt: zod0.ZodDate;
46
+ updatedAt: zod0.ZodDate;
47
+ }, zod_v4_core0.$strip>> | undefined>, string, string>;
48
+ useCreateForm: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/admin/forms", _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | zod0.ZodObject<{
49
+ status: zod0.ZodEnum<{
50
+ draft: "draft";
51
+ open: "open";
52
+ closed: "closed";
53
+ static: "static";
54
+ }>;
55
+ title: zod0.ZodString;
56
+ description: zod0.ZodNullable<zod0.ZodString>;
57
+ slug: zod0.ZodString;
58
+ dataSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
59
+ uiSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
60
+ }, zod_v4_core0.$strip> | undefined, zod0.ZodString | zod0.ZodArray<zod0.ZodObject<{
61
+ id: zod0.ZodString;
62
+ title: zod0.ZodString;
63
+ description: zod0.ZodNullable<zod0.ZodString>;
64
+ slug: zod0.ZodString;
65
+ status: zod0.ZodEnum<{
66
+ draft: "draft";
67
+ open: "open";
68
+ closed: "closed";
69
+ static: "static";
70
+ }>;
71
+ dataSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
72
+ uiSchema: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
73
+ version: zod0.ZodNumber;
74
+ createdAt: zod0.ZodDate;
75
+ updatedAt: zod0.ZodDate;
76
+ }, zod_v4_core0.$strip>> | undefined, string, string>;
77
+ useUpdateForm: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/admin/forms/:id", _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | zod0.ZodObject<{
78
+ status: zod0.ZodOptional<zod0.ZodEnum<{
79
+ draft: "draft";
80
+ open: "open";
81
+ closed: "closed";
82
+ static: "static";
83
+ }>>;
84
+ title: zod0.ZodOptional<zod0.ZodString>;
85
+ description: zod0.ZodOptional<zod0.ZodNullable<zod0.ZodString>>;
86
+ slug: zod0.ZodOptional<zod0.ZodString>;
87
+ dataSchema: zod0.ZodOptional<zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>>;
88
+ uiSchema: zod0.ZodOptional<zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>>;
89
+ }, zod_v4_core0.$strip> | undefined, _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "STATIC_FORM_READ_ONLY", string>;
90
+ useDeleteForm: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/admin/forms/:id", _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | zod0.ZodObject<{
91
+ status: zod0.ZodOptional<zod0.ZodEnum<{
92
+ draft: "draft";
93
+ open: "open";
94
+ closed: "closed";
95
+ static: "static";
96
+ }>>;
97
+ title: zod0.ZodOptional<zod0.ZodString>;
98
+ description: zod0.ZodOptional<zod0.ZodNullable<zod0.ZodString>>;
99
+ slug: zod0.ZodOptional<zod0.ZodString>;
100
+ dataSchema: zod0.ZodOptional<zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>>;
101
+ uiSchema: zod0.ZodOptional<zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>>;
102
+ }, zod_v4_core0.$strip> | undefined, _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "STATIC_FORM_READ_ONLY", string>;
103
+ useSubmissions: _fragno_dev_core_vue0.FragnoVueHook<"GET", "/admin/forms/:id/submissions", zod0.ZodArray<zod0.ZodObject<{
104
+ id: zod0.ZodString;
105
+ formId: zod0.ZodNullable<zod0.ZodString>;
106
+ formVersion: zod0.ZodNumber;
107
+ data: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
108
+ submittedAt: zod0.ZodDate;
109
+ ip: zod0.ZodNullable<zod0.ZodString>;
110
+ userAgent: zod0.ZodNullable<zod0.ZodString>;
111
+ }, zod_v4_core0.$strip>>, string, "sortOrder">;
112
+ useSubmission: _fragno_dev_core_vue0.FragnoVueHook<"GET", "/admin/submissions/:id", NonNullable<_standard_schema_spec0.StandardSchemaV1<unknown, unknown> | zod0.ZodObject<{
113
+ id: zod0.ZodString;
114
+ formId: zod0.ZodNullable<zod0.ZodString>;
115
+ formVersion: zod0.ZodNumber;
116
+ data: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
117
+ submittedAt: zod0.ZodDate;
118
+ ip: zod0.ZodNullable<zod0.ZodString>;
119
+ userAgent: zod0.ZodNullable<zod0.ZodString>;
120
+ }, zod_v4_core0.$strip> | undefined>, "NOT_FOUND", string>;
121
+ useDeleteSubmission: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/admin/submissions/:id", _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | undefined, _standard_schema_spec0.StandardSchemaV1<unknown, unknown> | zod0.ZodObject<{
122
+ id: zod0.ZodString;
123
+ formId: zod0.ZodNullable<zod0.ZodString>;
124
+ formVersion: zod0.ZodNumber;
125
+ data: zod0.ZodRecord<zod0.ZodString, zod0.ZodUnknown>;
126
+ submittedAt: zod0.ZodDate;
127
+ ip: zod0.ZodNullable<zod0.ZodString>;
128
+ userAgent: zod0.ZodNullable<zod0.ZodString>;
129
+ }, zod_v4_core0.$strip> | undefined, "NOT_FOUND", string>;
130
+ };
131
+ //# sourceMappingURL=vue.d.ts.map
132
+
133
+ //#endregion
134
+ export { createFormsClient };
135
+ //# sourceMappingURL=vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue.d.ts","names":[],"sources":["../../../../src/client/vue.ts"],"sourcesContent":[],"mappings":";;;;;;;;iBAIgB,iBAAA,UAA0B;;QAA6B,IAAA,CAAA;;;;;MAAvD,KAAA,EAAA,OAAiB;MAAA,IAAA,EAAA,MAAA;MAAS,MAAA,EAAA,QAAA;MAA6B,MAAA,EAAA,QAAA"}
@@ -0,0 +1,110 @@
1
+ import { atom, createFormsClients, isGetHook, isMutatorHook } from "../src-DElBPLyi.js";
2
+ import { computed, getCurrentScope, isRef, onScopeDispose, ref, shallowRef, watch } from "vue";
3
+
4
+ //#region ../fragno/dist/client/vue.js
5
+ /**
6
+ * Converts a Vue Ref to a NanoStore Atom.
7
+ *
8
+ * This is used to convert Vue refs to atoms, so that we can use them in the store.
9
+ *
10
+ * @private
11
+ */
12
+ function refToAtom(ref$1) {
13
+ const a = atom(ref$1.value);
14
+ watch(ref$1, (newVal) => {
15
+ a.set(newVal);
16
+ });
17
+ return a;
18
+ }
19
+ function createVueHook(hook) {
20
+ return ({ path, query } = {}) => {
21
+ const pathParams = {};
22
+ const queryParams = {};
23
+ for (const [key, value] of Object.entries(path ?? {})) {
24
+ const v = value;
25
+ pathParams[key] = isRef(v) ? refToAtom(v) : v;
26
+ }
27
+ for (const [key, value] of Object.entries(query ?? {})) {
28
+ const v = value;
29
+ queryParams[key] = isRef(v) ? refToAtom(v) : v;
30
+ }
31
+ const store = hook.store({
32
+ path: pathParams,
33
+ query: queryParams
34
+ });
35
+ const data = ref();
36
+ const loading = ref();
37
+ const error = ref();
38
+ const unsubscribe = store.subscribe((updatedStoreValue) => {
39
+ data.value = updatedStoreValue.data;
40
+ loading.value = updatedStoreValue.loading;
41
+ error.value = updatedStoreValue.error;
42
+ });
43
+ if (getCurrentScope()) onScopeDispose(() => {
44
+ unsubscribe();
45
+ });
46
+ return {
47
+ data,
48
+ loading,
49
+ error
50
+ };
51
+ };
52
+ }
53
+ function createVueMutator(hook) {
54
+ return () => {
55
+ const store = useStore(hook.mutatorStore);
56
+ const mutate = async (args) => {
57
+ const { body, path, query } = args;
58
+ const pathParams = {};
59
+ const queryParams = {};
60
+ for (const [key, value] of Object.entries(path ?? {})) {
61
+ const v = value;
62
+ pathParams[key] = isRef(v) ? v.value : v;
63
+ }
64
+ for (const [key, value] of Object.entries(query ?? {})) {
65
+ const v = value;
66
+ queryParams[key] = isRef(v) ? v.value : v;
67
+ }
68
+ return store.value.mutate({
69
+ body,
70
+ path: pathParams,
71
+ query: queryParams
72
+ });
73
+ };
74
+ return {
75
+ mutate,
76
+ loading: computed(() => store.value.loading),
77
+ error: computed(() => store.value.error),
78
+ data: computed(() => store.value.data)
79
+ };
80
+ };
81
+ }
82
+ function useFragno(clientObj) {
83
+ const result = {};
84
+ for (const key in clientObj) {
85
+ if (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;
86
+ const hook = clientObj[key];
87
+ if (isGetHook(hook)) result[key] = createVueHook(hook);
88
+ else if (isMutatorHook(hook)) result[key] = createVueMutator(hook);
89
+ else result[key] = hook;
90
+ }
91
+ return result;
92
+ }
93
+ function useStore(store) {
94
+ const state = shallowRef();
95
+ const unsubscribe = store.subscribe((value) => {
96
+ state.value = value;
97
+ });
98
+ if (getCurrentScope()) onScopeDispose(unsubscribe);
99
+ return state;
100
+ }
101
+
102
+ //#endregion
103
+ //#region src/client/vue.ts
104
+ function createFormsClient(config = {}) {
105
+ return useFragno(createFormsClients(config));
106
+ }
107
+
108
+ //#endregion
109
+ export { createFormsClient };
110
+ //# sourceMappingURL=vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue.js","names":["isGetHook","isMutatorHook","atom","computed","computed$1","getCurrentScope","isRef","onScopeDispose","ref","shallowRef","watch","refToAtom","ref$1","a","value","newVal","set","createVueHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","subscribe","updatedStoreValue","createVueMutator","useStore","mutatorStore","mutate","args","body","useFragno","clientObj","result","prototype","hasOwnProperty","call","state","useFragno","createFormsClients","FragnoPublicClientConfig","createFormsClient","config"],"sources":["../../../../fragno/dist/client/vue.js","../../../src/client/vue.ts"],"sourcesContent":["import { isGetHook, isMutatorHook } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { computed as computed$1, getCurrentScope, isRef, onScopeDispose, ref, shallowRef, watch } from \"vue\";\n\n//#region src/client/vue.ts\n/**\n* Converts a Vue Ref to a NanoStore Atom.\n*\n* This is used to convert Vue refs to atoms, so that we can use them in the store.\n*\n* @private\n*/\nfunction refToAtom(ref$1) {\n\tconst a = atom(ref$1.value);\n\twatch(ref$1, (newVal) => {\n\t\ta.set(newVal);\n\t});\n\treturn a;\n}\nfunction createVueHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParams = {};\n\t\tconst queryParams = {};\n\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\tconst v = value;\n\t\t\tpathParams[key] = isRef(v) ? refToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tqueryParams[key] = isRef(v) ? refToAtom(v) : v;\n\t\t}\n\t\tconst store = hook.store({\n\t\t\tpath: pathParams,\n\t\t\tquery: queryParams\n\t\t});\n\t\tconst data = ref();\n\t\tconst loading = ref();\n\t\tconst error = ref();\n\t\tconst unsubscribe = store.subscribe((updatedStoreValue) => {\n\t\t\tdata.value = updatedStoreValue.data;\n\t\t\tloading.value = updatedStoreValue.loading;\n\t\t\terror.value = updatedStoreValue.error;\n\t\t});\n\t\tif (getCurrentScope()) onScopeDispose(() => {\n\t\t\tunsubscribe();\n\t\t});\n\t\treturn {\n\t\t\tdata,\n\t\t\tloading,\n\t\t\terror\n\t\t};\n\t};\n}\nfunction createVueMutator(hook) {\n\treturn () => {\n\t\tconst store = useStore(hook.mutatorStore);\n\t\tconst mutate = async (args) => {\n\t\t\tconst { body, path, query } = args;\n\t\t\tconst pathParams = {};\n\t\t\tconst queryParams = {};\n\t\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tpathParams[key] = isRef(v) ? v.value : v;\n\t\t\t}\n\t\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tqueryParams[key] = isRef(v) ? v.value : v;\n\t\t\t}\n\t\t\treturn store.value.mutate({\n\t\t\t\tbody,\n\t\t\t\tpath: pathParams,\n\t\t\t\tquery: queryParams\n\t\t\t});\n\t\t};\n\t\treturn {\n\t\t\tmutate,\n\t\t\tloading: computed$1(() => store.value.loading),\n\t\t\terror: computed$1(() => store.value.error),\n\t\t\tdata: computed$1(() => store.value.data)\n\t\t};\n\t};\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createVueHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createVueMutator(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\nfunction useStore(store) {\n\tconst state = shallowRef();\n\tconst unsubscribe = store.subscribe((value) => {\n\t\tstate.value = value;\n\t});\n\tif (getCurrentScope()) onScopeDispose(unsubscribe);\n\treturn state;\n}\n\n//#endregion\nexport { refToAtom, useFragno, useStore };\n//# sourceMappingURL=vue.js.map","import { useFragno } from \"@fragno-dev/core/vue\";\nimport { createFormsClients } from \"..\";\nimport type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\n\nexport function createFormsClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createFormsClients(config));\n}\n"],"mappings":"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"}