@fragno-dev/forms 0.0.3 → 0.1.2

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 (33) hide show
  1. package/README.md +159 -25
  2. package/dist/browser/client/react.d.ts +143 -94
  3. package/dist/browser/client/react.d.ts.map +1 -1
  4. package/dist/browser/client/react.js +105 -13
  5. package/dist/browser/client/react.js.map +1 -1
  6. package/dist/browser/client/solid.d.ts +143 -94
  7. package/dist/browser/client/solid.d.ts.map +1 -1
  8. package/dist/browser/client/solid.js +25 -11
  9. package/dist/browser/client/solid.js.map +1 -1
  10. package/dist/browser/client/svelte.d.ts +143 -94
  11. package/dist/browser/client/svelte.d.ts.map +1 -1
  12. package/dist/browser/client/svelte.js +11 -3
  13. package/dist/browser/client/svelte.js.map +1 -1
  14. package/dist/browser/client/vanilla.d.ts +142 -93
  15. package/dist/browser/client/vanilla.d.ts.map +1 -1
  16. package/dist/browser/client/vanilla.js +21 -1
  17. package/dist/browser/client/vanilla.js.map +1 -1
  18. package/dist/browser/client/vue.d.ts +73 -24
  19. package/dist/browser/client/vue.d.ts.map +1 -1
  20. package/dist/browser/client/vue.js +23 -1
  21. package/dist/browser/client/vue.js.map +1 -1
  22. package/dist/browser/index.d.ts +700 -301
  23. package/dist/browser/index.d.ts.map +1 -1
  24. package/dist/browser/index.js +1 -1
  25. package/dist/browser/{src-DbMX_NY6.js → src-BNcd9ogF.js} +556 -348
  26. package/dist/browser/src-BNcd9ogF.js.map +1 -0
  27. package/dist/node/index.d.ts +546 -147
  28. package/dist/node/index.d.ts.map +1 -1
  29. package/dist/node/index.js +133 -103
  30. package/dist/node/index.js.map +1 -1
  31. package/dist/tsconfig.tsbuildinfo +1 -0
  32. package/package.json +31 -52
  33. package/dist/browser/src-DbMX_NY6.js.map +0 -1
@@ -1,132 +1,181 @@
1
- import * as zod636 from "zod";
2
- import * as zod_v4_core43 from "zod/v4/core";
3
- import * as _fragno_dev_core_api14 from "@fragno-dev/core/api";
4
- import * as _standard_schema_spec41 from "@standard-schema/spec";
1
+ import * as zod1095 from "zod";
2
+ import * as zod_v4_core67 from "zod/v4/core";
3
+ import * as _fragno_dev_core_api19 from "@fragno-dev/core/api";
4
+ import * as _standard_schema_spec47 from "@standard-schema/spec";
5
5
  import { FragnoPublicClientConfig } from "@fragno-dev/core/client";
6
6
  import * as _fragno_dev_core_svelte0 from "@fragno-dev/core/svelte";
7
7
 
8
8
  //#region src/client/svelte.d.ts
9
9
  declare function createFormsClient(config?: FragnoPublicClientConfig): {
10
- useForm: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/:slug", zod636.ZodObject<{
11
- id: zod636.ZodString;
12
- title: zod636.ZodString;
13
- description: zod636.ZodNullable<zod636.ZodString>;
14
- slug: zod636.ZodString;
15
- status: zod636.ZodEnum<{
10
+ useForm: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/:slug", zod1095.ZodObject<{
11
+ id: zod1095.ZodString;
12
+ title: zod1095.ZodString;
13
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
14
+ slug: zod1095.ZodString;
15
+ status: zod1095.ZodEnum<{
16
16
  draft: "draft";
17
17
  open: "open";
18
18
  closed: "closed";
19
19
  static: "static";
20
20
  }>;
21
- dataSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
22
- uiSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
23
- version: zod636.ZodNumber;
24
- createdAt: zod636.ZodDate;
25
- updatedAt: zod636.ZodDate;
26
- }, zod_v4_core43.$strip>, "NOT_FOUND", string>;
27
- useSubmitForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/:slug/submit", zod636.ZodObject<{
28
- data: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
29
- securityToken: zod636.ZodOptional<zod636.ZodString>;
30
- }, zod_v4_core43.$strip> | undefined, zod636.ZodString | undefined, "NOT_FOUND" | "VALIDATION_ERROR" | "FORM_NOT_OPEN", string>;
31
- useForms: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/forms", NonNullable<zod636.ZodString | zod636.ZodArray<zod636.ZodObject<{
32
- id: zod636.ZodString;
33
- title: zod636.ZodString;
34
- description: zod636.ZodNullable<zod636.ZodString>;
35
- slug: zod636.ZodString;
36
- status: zod636.ZodEnum<{
21
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
22
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
23
+ version: zod1095.ZodNumber;
24
+ createdAt: zod1095.ZodDate;
25
+ updatedAt: zod1095.ZodDate;
26
+ }, zod_v4_core67.$strip>, "NOT_FOUND", string>;
27
+ useSubmitForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api19.NonGetHTTPMethod, "/:slug/submit", zod1095.ZodObject<{
28
+ data: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
29
+ securityToken: zod1095.ZodOptional<zod1095.ZodString>;
30
+ }, zod_v4_core67.$strip> | undefined, zod1095.ZodString | undefined, "NOT_FOUND" | "VALIDATION_ERROR" | "FORM_NOT_OPEN", string>;
31
+ useForms: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/forms", zod1095.ZodArray<zod1095.ZodObject<{
32
+ id: zod1095.ZodString;
33
+ title: zod1095.ZodString;
34
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
35
+ slug: zod1095.ZodString;
36
+ status: zod1095.ZodEnum<{
37
37
  draft: "draft";
38
38
  open: "open";
39
39
  closed: "closed";
40
40
  static: "static";
41
41
  }>;
42
- dataSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
43
- uiSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
44
- version: zod636.ZodNumber;
45
- createdAt: zod636.ZodDate;
46
- updatedAt: zod636.ZodDate;
47
- }, zod_v4_core43.$strip>> | undefined>, string, string>;
48
- useCreateForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/admin/forms", _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | zod636.ZodObject<{
49
- status: zod636.ZodEnum<{
42
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
43
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
44
+ version: zod1095.ZodNumber;
45
+ createdAt: zod1095.ZodDate;
46
+ updatedAt: zod1095.ZodDate;
47
+ }, zod_v4_core67.$strip>>, string, string>;
48
+ useFormById: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/forms/:id", zod1095.ZodObject<{
49
+ id: zod1095.ZodString;
50
+ title: zod1095.ZodString;
51
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
52
+ slug: zod1095.ZodString;
53
+ status: zod1095.ZodEnum<{
50
54
  draft: "draft";
51
55
  open: "open";
52
56
  closed: "closed";
53
57
  static: "static";
54
58
  }>;
55
- title: zod636.ZodString;
56
- description: zod636.ZodNullable<zod636.ZodString>;
57
- slug: zod636.ZodString;
58
- dataSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
59
- uiSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
60
- }, zod_v4_core43.$strip> | undefined, zod636.ZodString | zod636.ZodArray<zod636.ZodObject<{
61
- id: zod636.ZodString;
62
- title: zod636.ZodString;
63
- description: zod636.ZodNullable<zod636.ZodString>;
64
- slug: zod636.ZodString;
65
- status: zod636.ZodEnum<{
59
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
60
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
61
+ version: zod1095.ZodNumber;
62
+ createdAt: zod1095.ZodDate;
63
+ updatedAt: zod1095.ZodDate;
64
+ }, zod_v4_core67.$strip>, "NOT_FOUND", string>;
65
+ useCreateForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api19.NonGetHTTPMethod, "/admin/forms", zod1095.ZodObject<{
66
+ title: zod1095.ZodString;
67
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
68
+ slug: zod1095.ZodString;
69
+ status: zod1095.ZodEnum<{
66
70
  draft: "draft";
67
71
  open: "open";
68
72
  closed: "closed";
69
73
  static: "static";
70
74
  }>;
71
- dataSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
72
- uiSchema: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
73
- version: zod636.ZodNumber;
74
- createdAt: zod636.ZodDate;
75
- updatedAt: zod636.ZodDate;
76
- }, zod_v4_core43.$strip>> | undefined, string, string>;
77
- useUpdateForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/admin/forms/:id", _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | zod636.ZodObject<{
78
- status: zod636.ZodOptional<zod636.ZodEnum<{
75
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
76
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
77
+ }, zod_v4_core67.$strip> | _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, zod1095.ZodString | zod1095.ZodArray<zod1095.ZodObject<{
78
+ id: zod1095.ZodString;
79
+ title: zod1095.ZodString;
80
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
81
+ slug: zod1095.ZodString;
82
+ status: zod1095.ZodEnum<{
83
+ draft: "draft";
84
+ open: "open";
85
+ closed: "closed";
86
+ static: "static";
87
+ }>;
88
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
89
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
90
+ version: zod1095.ZodNumber;
91
+ createdAt: zod1095.ZodDate;
92
+ updatedAt: zod1095.ZodDate;
93
+ }, zod_v4_core67.$strip>> | undefined, string, string>;
94
+ useUpdateForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api19.NonGetHTTPMethod, "/admin/forms/:id", zod1095.ZodObject<{
95
+ title: zod1095.ZodOptional<zod1095.ZodString>;
96
+ description: zod1095.ZodOptional<zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>>;
97
+ slug: zod1095.ZodOptional<zod1095.ZodString>;
98
+ status: zod1095.ZodOptional<zod1095.ZodEnum<{
79
99
  draft: "draft";
80
100
  open: "open";
81
101
  closed: "closed";
82
102
  static: "static";
83
103
  }>>;
84
- title: zod636.ZodOptional<zod636.ZodString>;
85
- description: zod636.ZodOptional<zod636.ZodNullable<zod636.ZodString>>;
86
- slug: zod636.ZodOptional<zod636.ZodString>;
87
- dataSchema: zod636.ZodOptional<zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>>;
88
- uiSchema: zod636.ZodOptional<zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>>;
89
- }, zod_v4_core43.$strip> | undefined, _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "STATIC_FORM_READ_ONLY", string>;
90
- useDeleteForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/admin/forms/:id", _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | zod636.ZodObject<{
91
- status: zod636.ZodOptional<zod636.ZodEnum<{
104
+ dataSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
105
+ uiSchema: zod1095.ZodOptional<zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>>;
106
+ }, zod_v4_core67.$strip> | _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, zod1095.ZodObject<{
107
+ id: zod1095.ZodString;
108
+ title: zod1095.ZodString;
109
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
110
+ slug: zod1095.ZodString;
111
+ status: zod1095.ZodEnum<{
112
+ draft: "draft";
113
+ open: "open";
114
+ closed: "closed";
115
+ static: "static";
116
+ }>;
117
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
118
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
119
+ version: zod1095.ZodNumber;
120
+ createdAt: zod1095.ZodDate;
121
+ updatedAt: zod1095.ZodDate;
122
+ }, zod_v4_core67.$strip> | _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "INVALID_JSON_SCHEMA" | "STATIC_FORM_READ_ONLY", string>;
123
+ useDeleteForm: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api19.NonGetHTTPMethod, "/admin/forms/:id", zod1095.ZodObject<{
124
+ title: zod1095.ZodOptional<zod1095.ZodString>;
125
+ description: zod1095.ZodOptional<zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>>;
126
+ slug: zod1095.ZodOptional<zod1095.ZodString>;
127
+ status: zod1095.ZodOptional<zod1095.ZodEnum<{
92
128
  draft: "draft";
93
129
  open: "open";
94
130
  closed: "closed";
95
131
  static: "static";
96
132
  }>>;
97
- title: zod636.ZodOptional<zod636.ZodString>;
98
- description: zod636.ZodOptional<zod636.ZodNullable<zod636.ZodString>>;
99
- slug: zod636.ZodOptional<zod636.ZodString>;
100
- dataSchema: zod636.ZodOptional<zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>>;
101
- uiSchema: zod636.ZodOptional<zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>>;
102
- }, zod_v4_core43.$strip> | undefined, _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "STATIC_FORM_READ_ONLY", string>;
103
- useSubmissions: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/forms/:id/submissions", zod636.ZodArray<zod636.ZodObject<{
104
- id: zod636.ZodString;
105
- formId: zod636.ZodNullable<zod636.ZodString>;
106
- formVersion: zod636.ZodNumber;
107
- data: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
108
- submittedAt: zod636.ZodDate;
109
- ip: zod636.ZodNullable<zod636.ZodString>;
110
- userAgent: zod636.ZodNullable<zod636.ZodString>;
111
- }, zod_v4_core43.$strip>>, string, "sortOrder">;
112
- useSubmission: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/submissions/:id", NonNullable<_standard_schema_spec41.StandardSchemaV1<unknown, unknown> | zod636.ZodObject<{
113
- id: zod636.ZodString;
114
- formId: zod636.ZodNullable<zod636.ZodString>;
115
- formVersion: zod636.ZodNumber;
116
- data: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
117
- submittedAt: zod636.ZodDate;
118
- ip: zod636.ZodNullable<zod636.ZodString>;
119
- userAgent: zod636.ZodNullable<zod636.ZodString>;
120
- }, zod_v4_core43.$strip> | undefined>, "NOT_FOUND", string>;
121
- useDeleteSubmission: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/admin/submissions/:id", _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | undefined, _standard_schema_spec41.StandardSchemaV1<unknown, unknown> | zod636.ZodObject<{
122
- id: zod636.ZodString;
123
- formId: zod636.ZodNullable<zod636.ZodString>;
124
- formVersion: zod636.ZodNumber;
125
- data: zod636.ZodRecord<zod636.ZodString, zod636.ZodUnknown>;
126
- submittedAt: zod636.ZodDate;
127
- ip: zod636.ZodNullable<zod636.ZodString>;
128
- userAgent: zod636.ZodNullable<zod636.ZodString>;
129
- }, zod_v4_core43.$strip> | undefined, "NOT_FOUND", string>;
133
+ dataSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
134
+ uiSchema: zod1095.ZodOptional<zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>>;
135
+ }, zod_v4_core67.$strip> | _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, zod1095.ZodObject<{
136
+ id: zod1095.ZodString;
137
+ title: zod1095.ZodString;
138
+ description: zod1095.ZodOptional<zod1095.ZodNullable<zod1095.ZodString>>;
139
+ slug: zod1095.ZodString;
140
+ status: zod1095.ZodEnum<{
141
+ draft: "draft";
142
+ open: "open";
143
+ closed: "closed";
144
+ static: "static";
145
+ }>;
146
+ dataSchema: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
147
+ uiSchema: zod1095.ZodOptional<zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>>;
148
+ version: zod1095.ZodNumber;
149
+ createdAt: zod1095.ZodDate;
150
+ updatedAt: zod1095.ZodDate;
151
+ }, zod_v4_core67.$strip> | _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, "NOT_FOUND" | "INVALID_JSON_SCHEMA" | "STATIC_FORM_READ_ONLY", string>;
152
+ useSubmissions: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/forms/:id/submissions", zod1095.ZodArray<zod1095.ZodObject<{
153
+ id: zod1095.ZodString;
154
+ formId: zod1095.ZodNullable<zod1095.ZodString>;
155
+ formVersion: zod1095.ZodNumber;
156
+ data: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
157
+ submittedAt: zod1095.ZodDate;
158
+ ip: zod1095.ZodNullable<zod1095.ZodString>;
159
+ userAgent: zod1095.ZodNullable<zod1095.ZodString>;
160
+ }, zod_v4_core67.$strip>>, string, "sortOrder">;
161
+ useSubmission: _fragno_dev_core_svelte0.FragnoSvelteHook<"GET", "/admin/submissions/:id", zod1095.ZodObject<{
162
+ id: zod1095.ZodString;
163
+ formId: zod1095.ZodNullable<zod1095.ZodString>;
164
+ formVersion: zod1095.ZodNumber;
165
+ data: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
166
+ submittedAt: zod1095.ZodDate;
167
+ ip: zod1095.ZodNullable<zod1095.ZodString>;
168
+ userAgent: zod1095.ZodNullable<zod1095.ZodString>;
169
+ }, zod_v4_core67.$strip>, "NOT_FOUND", string>;
170
+ useDeleteSubmission: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api19.NonGetHTTPMethod, "/admin/submissions/:id", _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | undefined, _standard_schema_spec47.StandardSchemaV1<unknown, unknown> | zod1095.ZodObject<{
171
+ id: zod1095.ZodString;
172
+ formId: zod1095.ZodNullable<zod1095.ZodString>;
173
+ formVersion: zod1095.ZodNumber;
174
+ data: zod1095.ZodRecord<zod1095.ZodString, zod1095.ZodUnknown>;
175
+ submittedAt: zod1095.ZodDate;
176
+ ip: zod1095.ZodNullable<zod1095.ZodString>;
177
+ userAgent: zod1095.ZodNullable<zod1095.ZodString>;
178
+ }, zod_v4_core67.$strip> | undefined, "NOT_FOUND", string>;
130
179
  };
131
180
  //# sourceMappingURL=svelte.d.ts.map
132
181
 
@@ -1 +1 @@
1
- {"version":3,"file":"svelte.d.ts","names":[],"sources":["../../../../src/client/svelte.ts"],"sourcesContent":[],"mappings":";;;;;;;;iBAIgB,iBAAA,UAA0B;;QAA6B,MAAA,CAAA;;;;;MAAvD,KAAA,EAAA,OAAiB;MAAA,IAAA,EAAA,MAAA;MAAS,MAAA,EAAA,QAAA;MAA6B,MAAA,EAAA,QAAA"}
1
+ {"version":3,"file":"svelte.d.ts","names":[],"sources":["../../../../src/client/svelte.ts"],"sourcesContent":[],"mappings":";;;;;;;;iBAKgB,iBAAA,UAA0B;;QAA6B,OAAA,CAAA;;;;;MAAvD,KAAA,EAAA,OAAiB;MAAA,IAAA,EAAA,MAAA;MAAS,MAAA,EAAA,QAAA;MAA6B,MAAA,EAAA,QAAA"}
@@ -1,6 +1,6 @@
1
- import { atom, createFormsClients, isGetHook, isMutatorHook, isStore } from "../src-DbMX_NY6.js";
2
- import { get, writable } from "svelte/store";
1
+ import { atom, createFormsClients, isGetHook, isMutatorHook, isStore } from "../src-BNcd9ogF.js";
3
2
  import { onDestroy } from "svelte";
3
+ import { get, writable } from "svelte/store";
4
4
 
5
5
  //#region ../fragno/dist/client/client.svelte.js
6
6
  function isReadable(value) {
@@ -99,7 +99,15 @@ function createSvelteMutator(hook) {
99
99
  };
100
100
  }
101
101
  function createSvelteStore(hook) {
102
- return hook.obj;
102
+ if ("obj" in hook) return hook.obj;
103
+ return (...args) => {
104
+ const value = hook.factory(...args);
105
+ const disposer = value[Symbol.dispose];
106
+ if (typeof disposer === "function") onDestroy(() => {
107
+ disposer.call(value);
108
+ });
109
+ return value;
110
+ };
103
111
  }
104
112
  function useFragno(clientObj) {
105
113
  const result = {};
@@ -1 +1 @@
1
- {"version":3,"file":"svelte.js","names":["isGetHook","isMutatorHook","isStore","atom","get","writable","onDestroy","isReadable","value","isCallable","readableToAtom","a","subscribe","newVal","set","runeToAtom","$effect","createSvelteHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","updatedStoreValue","createSvelteMutator","mutatorStore","storeValue","mutate","args","body","createSvelteStore","obj","useFragno","clientObj","result","prototype","hasOwnProperty","call","useFragno","createFormsClients","FragnoPublicClientConfig","createFormsClient","config"],"sources":["../../../../fragno/dist/client/client.svelte.js","../../../src/client/svelte.ts"],"sourcesContent":["import { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { get, writable } from \"svelte/store\";\nimport { onDestroy } from \"svelte\";\n\n//#region src/client/client.svelte.ts\nfunction isReadable(value) {\n\treturn typeof value === \"object\" && value !== null && \"subscribe\" in value;\n}\nfunction isCallable(value) {\n\treturn typeof value === \"function\";\n}\nfunction readableToAtom(value) {\n\tconst a = atom(get(value));\n\tvalue.subscribe((newVal) => {\n\t\ta.set(newVal);\n\t});\n\treturn a;\n}\nfunction runeToAtom(value) {\n\tconst a = atom(value());\n\t$effect(() => {\n\t\ta.set(value());\n\t});\n\treturn a;\n}\nfunction createSvelteHook(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\tif (isCallable(v)) pathParams[key] = runeToAtom(v);\n\t\t\telse pathParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tif (isCallable(v)) queryParams[key] = runeToAtom(v);\n\t\t\telse queryParams[key] = isReadable(v) ? readableToAtom(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 = writable(void 0);\n\t\tconst loading = writable(false);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = store.subscribe((updatedStoreValue) => {\n\t\t\tdata.set(updatedStoreValue.data);\n\t\t\tloading.set(updatedStoreValue.loading);\n\t\t\terror.set(updatedStoreValue.error);\n\t\t});\n\t\tonDestroy(() => {\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 createSvelteMutator(hook) {\n\treturn () => {\n\t\tconst data = writable(void 0);\n\t\tconst loading = writable(void 0);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = hook.mutatorStore.subscribe((storeValue) => {\n\t\t\tdata.set(storeValue.data);\n\t\t\tloading.set(storeValue.loading);\n\t\t\terror.set(storeValue.error);\n\t\t});\n\t\tonDestroy(() => {\n\t\t\tunsubscribe();\n\t\t});\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] = isReadable(v) ? readableToAtom(v) : 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] = isReadable(v) ? readableToAtom(v) : v;\n\t\t\t}\n\t\t\treturn hook.mutatorStore.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,\n\t\t\terror,\n\t\t\tdata\n\t\t};\n\t};\n}\nfunction createSvelteStore(hook) {\n\treturn hook.obj;\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] = createSvelteHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createSvelteMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createSvelteStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\n\n//#endregion\nexport { createSvelteStore, readableToAtom, runeToAtom, useFragno };\n//# sourceMappingURL=client.svelte.js.map","import { useFragno } from \"@fragno-dev/core/svelte\";\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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"}
1
+ {"version":3,"file":"svelte.js","names":["isGetHook","isMutatorHook","isStore","atom","onDestroy","get","writable","isReadable","value","isCallable","readableToAtom","a","subscribe","newVal","set","runeToAtom","$effect","createSvelteHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","updatedStoreValue","createSvelteMutator","mutatorStore","storeValue","mutate","args","body","createSvelteStore","obj","factory","disposer","Symbol","dispose","call","useFragno","clientObj","result","prototype","hasOwnProperty","FragnoPublicClientConfig","useFragno","createFormsClients","createFormsClient","config"],"sources":["../../../../fragno/dist/client/client.svelte.js","../../../src/client/svelte.ts"],"sourcesContent":["import { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { onDestroy } from \"svelte\";\nimport { get, writable } from \"svelte/store\";\n\n//#region src/client/client.svelte.ts\nfunction isReadable(value) {\n\treturn typeof value === \"object\" && value !== null && \"subscribe\" in value;\n}\nfunction isCallable(value) {\n\treturn typeof value === \"function\";\n}\nfunction readableToAtom(value) {\n\tconst a = atom(get(value));\n\tvalue.subscribe((newVal) => {\n\t\ta.set(newVal);\n\t});\n\treturn a;\n}\nfunction runeToAtom(value) {\n\tconst a = atom(value());\n\t$effect(() => {\n\t\ta.set(value());\n\t});\n\treturn a;\n}\nfunction createSvelteHook(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\tif (isCallable(v)) pathParams[key] = runeToAtom(v);\n\t\t\telse pathParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tif (isCallable(v)) queryParams[key] = runeToAtom(v);\n\t\t\telse queryParams[key] = isReadable(v) ? readableToAtom(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 = writable(void 0);\n\t\tconst loading = writable(false);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = store.subscribe((updatedStoreValue) => {\n\t\t\tdata.set(updatedStoreValue.data);\n\t\t\tloading.set(updatedStoreValue.loading);\n\t\t\terror.set(updatedStoreValue.error);\n\t\t});\n\t\tonDestroy(() => {\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 createSvelteMutator(hook) {\n\treturn () => {\n\t\tconst data = writable(void 0);\n\t\tconst loading = writable(void 0);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = hook.mutatorStore.subscribe((storeValue) => {\n\t\t\tdata.set(storeValue.data);\n\t\t\tloading.set(storeValue.loading);\n\t\t\terror.set(storeValue.error);\n\t\t});\n\t\tonDestroy(() => {\n\t\t\tunsubscribe();\n\t\t});\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] = isReadable(v) ? readableToAtom(v) : 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] = isReadable(v) ? readableToAtom(v) : v;\n\t\t\t}\n\t\t\treturn hook.mutatorStore.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,\n\t\t\terror,\n\t\t\tdata\n\t\t};\n\t};\n}\nfunction createSvelteStore(hook) {\n\tif (\"obj\" in hook) return hook.obj;\n\treturn ((...args) => {\n\t\tconst value = hook.factory(...args);\n\t\tconst disposer = value[Symbol.dispose];\n\t\tif (typeof disposer === \"function\") onDestroy(() => {\n\t\t\tdisposer.call(value);\n\t\t});\n\t\treturn value;\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] = createSvelteHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createSvelteMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createSvelteStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\n\n//#endregion\nexport { createSvelteStore, readableToAtom, runeToAtom, useFragno };\n//# sourceMappingURL=client.svelte.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/svelte\";\n\nimport { createFormsClients } from \"..\";\n\nexport function createFormsClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createFormsClients(config));\n}\n"],"mappings":"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"}