nextjs-cms 0.5.9 → 0.5.11

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 (258) hide show
  1. package/dist/api/axios/axiosInstance.d.ts +1 -1
  2. package/dist/api/axios/axiosInstance.js +8 -8
  3. package/dist/api/index.d.ts +855 -855
  4. package/dist/api/index.d.ts.map +1 -1
  5. package/dist/api/index.js +12 -12
  6. package/dist/api/lib/serverActions.d.ts +239 -239
  7. package/dist/api/lib/serverActions.d.ts.map +1 -1
  8. package/dist/api/lib/serverActions.js +834 -834
  9. package/dist/api/root.d.ts +828 -828
  10. package/dist/api/root.js +30 -30
  11. package/dist/api/routers/accountSettings.d.ts +60 -60
  12. package/dist/api/routers/accountSettings.js +108 -108
  13. package/dist/api/routers/admins.d.ts +105 -105
  14. package/dist/api/routers/admins.js +219 -219
  15. package/dist/api/routers/auth.d.ts +47 -47
  16. package/dist/api/routers/auth.js +25 -25
  17. package/dist/api/routers/categorySection.d.ts +103 -103
  18. package/dist/api/routers/categorySection.js +38 -38
  19. package/dist/api/routers/cmsSettings.d.ts +48 -48
  20. package/dist/api/routers/cmsSettings.js +51 -51
  21. package/dist/api/routers/cpanel.d.ts +83 -83
  22. package/dist/api/routers/cpanel.js +216 -216
  23. package/dist/api/routers/files.d.ts +47 -47
  24. package/dist/api/routers/files.js +23 -23
  25. package/dist/api/routers/gallery.d.ts +35 -35
  26. package/dist/api/routers/gallery.js +62 -62
  27. package/dist/api/routers/googleAnalytics.d.ts +30 -30
  28. package/dist/api/routers/googleAnalytics.js +7 -7
  29. package/dist/api/routers/hasItemsSection.d.ts +139 -139
  30. package/dist/api/routers/hasItemsSection.js +34 -34
  31. package/dist/api/routers/navigation.d.ts +51 -51
  32. package/dist/api/routers/navigation.js +11 -11
  33. package/dist/api/routers/simpleSection.d.ts +57 -57
  34. package/dist/api/routers/simpleSection.js +12 -12
  35. package/dist/api/trpc.d.ts +106 -106
  36. package/dist/api/trpc.js +72 -72
  37. package/dist/auth/axios/axiosInstance.d.ts +1 -1
  38. package/dist/auth/axios/axiosInstance.js +8 -8
  39. package/dist/auth/csrf.d.ts +29 -29
  40. package/dist/auth/csrf.js +76 -76
  41. package/dist/auth/hooks/index.d.ts +3 -3
  42. package/dist/auth/hooks/index.d.ts.map +1 -1
  43. package/dist/auth/hooks/index.js +3 -3
  44. package/dist/auth/hooks/useAxiosPrivate.d.ts +4 -4
  45. package/dist/auth/hooks/useAxiosPrivate.js +74 -74
  46. package/dist/auth/hooks/useRefreshToken.d.ts +6 -6
  47. package/dist/auth/hooks/useRefreshToken.js +79 -79
  48. package/dist/auth/index.d.ts +22 -22
  49. package/dist/auth/index.js +44 -44
  50. package/dist/auth/jwt.d.ts +5 -5
  51. package/dist/auth/jwt.js +25 -25
  52. package/dist/auth/lib/actions.d.ts +32 -32
  53. package/dist/auth/lib/actions.d.ts.map +1 -1
  54. package/dist/auth/lib/actions.js +209 -209
  55. package/dist/auth/lib/client.d.ts +3 -3
  56. package/dist/auth/lib/client.js +46 -46
  57. package/dist/auth/lib/index.d.ts +2 -2
  58. package/dist/auth/lib/index.d.ts.map +1 -1
  59. package/dist/auth/lib/index.js +2 -2
  60. package/dist/auth/react.d.ts +105 -105
  61. package/dist/auth/react.d.ts.map +1 -1
  62. package/dist/auth/react.js +347 -347
  63. package/dist/auth/trpc.d.ts +5 -5
  64. package/dist/auth/trpc.d.ts.map +1 -1
  65. package/dist/auth/trpc.js +81 -81
  66. package/dist/core/config/config-loader.d.ts +91 -91
  67. package/dist/core/config/config-loader.js +230 -230
  68. package/dist/core/config/index.d.ts +2 -2
  69. package/dist/core/config/index.d.ts.map +1 -1
  70. package/dist/core/config/index.js +1 -1
  71. package/dist/core/config/loader.d.ts +1 -1
  72. package/dist/core/config/loader.js +42 -42
  73. package/dist/core/db/index.d.ts +1 -1
  74. package/dist/core/db/index.d.ts.map +1 -1
  75. package/dist/core/db/index.js +1 -1
  76. package/dist/core/db/table-checker/DbTable.d.ts +5 -5
  77. package/dist/core/db/table-checker/DbTable.js +5 -5
  78. package/dist/core/db/table-checker/MysqlTable.d.ts +33 -33
  79. package/dist/core/db/table-checker/MysqlTable.d.ts.map +1 -1
  80. package/dist/core/db/table-checker/MysqlTable.js +94 -94
  81. package/dist/core/db/table-checker/index.d.ts +1 -1
  82. package/dist/core/db/table-checker/index.d.ts.map +1 -1
  83. package/dist/core/db/table-checker/index.js +1 -1
  84. package/dist/core/factories/FieldFactory.d.ts +123 -123
  85. package/dist/core/factories/FieldFactory.d.ts.map +1 -1
  86. package/dist/core/factories/FieldFactory.js +411 -411
  87. package/dist/core/factories/SectionFactory.d.ts +109 -109
  88. package/dist/core/factories/SectionFactory.d.ts.map +1 -1
  89. package/dist/core/factories/SectionFactory.js +415 -415
  90. package/dist/core/factories/index.d.ts +2 -2
  91. package/dist/core/factories/index.d.ts.map +1 -1
  92. package/dist/core/factories/index.js +2 -2
  93. package/dist/core/fields/checkbox.d.ts +62 -62
  94. package/dist/core/fields/checkbox.d.ts.map +1 -1
  95. package/dist/core/fields/checkbox.js +62 -62
  96. package/dist/core/fields/color.d.ts +83 -83
  97. package/dist/core/fields/color.d.ts.map +1 -1
  98. package/dist/core/fields/color.js +91 -91
  99. package/dist/core/fields/date.d.ts +99 -99
  100. package/dist/core/fields/date.d.ts.map +1 -1
  101. package/dist/core/fields/date.js +108 -108
  102. package/dist/core/fields/document.d.ts +179 -179
  103. package/dist/core/fields/document.d.ts.map +1 -1
  104. package/dist/core/fields/document.js +277 -277
  105. package/dist/core/fields/field-group.d.ts +17 -17
  106. package/dist/core/fields/field-group.d.ts.map +1 -1
  107. package/dist/core/fields/field-group.js +6 -6
  108. package/dist/core/fields/field.d.ts +125 -125
  109. package/dist/core/fields/field.d.ts.map +1 -1
  110. package/dist/core/fields/field.js +148 -148
  111. package/dist/core/fields/fileField.d.ts +14 -14
  112. package/dist/core/fields/fileField.d.ts.map +1 -1
  113. package/dist/core/fields/fileField.js +5 -5
  114. package/dist/core/fields/index.d.ts +64 -64
  115. package/dist/core/fields/index.d.ts.map +1 -1
  116. package/dist/core/fields/index.js +18 -18
  117. package/dist/core/fields/map.d.ts +166 -166
  118. package/dist/core/fields/map.d.ts.map +1 -1
  119. package/dist/core/fields/map.js +152 -152
  120. package/dist/core/fields/number.d.ts +185 -185
  121. package/dist/core/fields/number.d.ts.map +1 -1
  122. package/dist/core/fields/number.js +241 -241
  123. package/dist/core/fields/password.d.ts +108 -108
  124. package/dist/core/fields/password.d.ts.map +1 -1
  125. package/dist/core/fields/password.js +133 -133
  126. package/dist/core/fields/photo.d.ts +288 -288
  127. package/dist/core/fields/photo.d.ts.map +1 -1
  128. package/dist/core/fields/photo.js +410 -410
  129. package/dist/core/fields/richText.d.ts +294 -294
  130. package/dist/core/fields/richText.d.ts.map +1 -1
  131. package/dist/core/fields/richText.js +338 -338
  132. package/dist/core/fields/select.d.ts +365 -365
  133. package/dist/core/fields/select.d.ts.map +1 -1
  134. package/dist/core/fields/select.js +499 -499
  135. package/dist/core/fields/selectMultiple.d.ts +235 -235
  136. package/dist/core/fields/selectMultiple.d.ts.map +1 -1
  137. package/dist/core/fields/selectMultiple.js +417 -417
  138. package/dist/core/fields/tags.d.ts +130 -130
  139. package/dist/core/fields/tags.d.ts.map +1 -1
  140. package/dist/core/fields/tags.js +105 -105
  141. package/dist/core/fields/text.d.ts +135 -135
  142. package/dist/core/fields/text.d.ts.map +1 -1
  143. package/dist/core/fields/text.js +157 -157
  144. package/dist/core/fields/textArea.d.ts +106 -106
  145. package/dist/core/fields/textArea.d.ts.map +1 -1
  146. package/dist/core/fields/textArea.js +126 -126
  147. package/dist/core/fields/video.d.ts +147 -147
  148. package/dist/core/fields/video.d.ts.map +1 -1
  149. package/dist/core/fields/video.js +248 -248
  150. package/dist/core/helpers/entity.d.ts +7 -7
  151. package/dist/core/helpers/entity.js +27 -27
  152. package/dist/core/helpers/index.d.ts +4 -4
  153. package/dist/core/helpers/index.d.ts.map +1 -1
  154. package/dist/core/helpers/index.js +3 -3
  155. package/dist/core/index.d.ts +7 -7
  156. package/dist/core/index.d.ts.map +1 -1
  157. package/dist/core/index.js +7 -7
  158. package/dist/core/sections/category.d.ts +282 -282
  159. package/dist/core/sections/category.d.ts.map +1 -1
  160. package/dist/core/sections/category.js +147 -147
  161. package/dist/core/sections/hasItems.d.ts +631 -631
  162. package/dist/core/sections/hasItems.d.ts.map +1 -1
  163. package/dist/core/sections/hasItems.js +144 -144
  164. package/dist/core/sections/index.d.ts +4 -4
  165. package/dist/core/sections/index.d.ts.map +1 -1
  166. package/dist/core/sections/index.js +4 -4
  167. package/dist/core/sections/section.d.ts +225 -225
  168. package/dist/core/sections/section.d.ts.map +1 -1
  169. package/dist/core/sections/section.js +341 -341
  170. package/dist/core/sections/simple.d.ts +98 -98
  171. package/dist/core/sections/simple.d.ts.map +1 -1
  172. package/dist/core/sections/simple.js +95 -95
  173. package/dist/core/security/dom.d.ts +10 -10
  174. package/dist/core/security/dom.js +92 -92
  175. package/dist/core/submit/ItemEditSubmit.d.ts +75 -75
  176. package/dist/core/submit/ItemEditSubmit.js +186 -186
  177. package/dist/core/submit/NewItemSubmit.d.ts +13 -13
  178. package/dist/core/submit/NewItemSubmit.js +93 -93
  179. package/dist/core/submit/SimpleSectionSubmit.d.ts +12 -12
  180. package/dist/core/submit/SimpleSectionSubmit.js +93 -93
  181. package/dist/core/submit/index.d.ts +4 -4
  182. package/dist/core/submit/index.js +4 -4
  183. package/dist/core/submit/submit.d.ts +115 -115
  184. package/dist/core/submit/submit.js +479 -479
  185. package/dist/core/types/index.d.ts +279 -279
  186. package/dist/core/types/index.d.ts.map +1 -1
  187. package/dist/core/types/index.js +1 -1
  188. package/dist/db/client.d.ts +8 -8
  189. package/dist/db/client.d.ts.map +1 -1
  190. package/dist/db/client.js +19 -19
  191. package/dist/db/config.d.ts +5 -5
  192. package/dist/db/config.js +22 -22
  193. package/dist/db/drizzle.config.d.ts +5 -5
  194. package/dist/db/drizzle.config.js +18 -18
  195. package/dist/db/index.d.ts +2 -2
  196. package/dist/db/index.js +3 -3
  197. package/dist/db/schema.d.ts +638 -638
  198. package/dist/db/schema.js +73 -73
  199. package/dist/index.d.ts +7 -7
  200. package/dist/index.d.ts.map +1 -1
  201. package/dist/index.js +7 -7
  202. package/dist/translations/index.d.ts +2 -2
  203. package/dist/translations/index.js +15 -15
  204. package/dist/utils/CpanelApi.d.ts +24 -24
  205. package/dist/utils/CpanelApi.js +64 -64
  206. package/dist/utils/constants.d.ts +13 -13
  207. package/dist/utils/constants.js +61 -61
  208. package/dist/utils/index.d.ts +4 -4
  209. package/dist/utils/index.d.ts.map +1 -1
  210. package/dist/utils/index.js +4 -4
  211. package/dist/utils/utils.d.ts +59 -59
  212. package/dist/utils/utils.js +132 -132
  213. package/dist/validators/checkbox.d.ts +3 -3
  214. package/dist/validators/checkbox.d.ts.map +1 -1
  215. package/dist/validators/checkbox.js +12 -12
  216. package/dist/validators/color.d.ts +3 -3
  217. package/dist/validators/color.d.ts.map +1 -1
  218. package/dist/validators/color.js +7 -7
  219. package/dist/validators/date.d.ts +3 -3
  220. package/dist/validators/date.d.ts.map +1 -1
  221. package/dist/validators/date.js +5 -5
  222. package/dist/validators/document.d.ts +3 -3
  223. package/dist/validators/document.d.ts.map +1 -1
  224. package/dist/validators/document.js +57 -57
  225. package/dist/validators/index.d.ts +14 -14
  226. package/dist/validators/index.d.ts.map +1 -1
  227. package/dist/validators/index.js +14 -14
  228. package/dist/validators/map.d.ts +3 -3
  229. package/dist/validators/map.d.ts.map +1 -1
  230. package/dist/validators/map.js +5 -5
  231. package/dist/validators/number.d.ts +3 -3
  232. package/dist/validators/number.d.ts.map +1 -1
  233. package/dist/validators/number.js +20 -20
  234. package/dist/validators/password.d.ts +3 -3
  235. package/dist/validators/password.d.ts.map +1 -1
  236. package/dist/validators/password.js +11 -11
  237. package/dist/validators/photo.d.ts +3 -3
  238. package/dist/validators/photo.d.ts.map +1 -1
  239. package/dist/validators/photo.js +100 -100
  240. package/dist/validators/richText.d.ts +3 -3
  241. package/dist/validators/richText.d.ts.map +1 -1
  242. package/dist/validators/richText.js +8 -8
  243. package/dist/validators/select-multiple.d.ts +9 -9
  244. package/dist/validators/select-multiple.d.ts.map +1 -1
  245. package/dist/validators/select-multiple.js +20 -20
  246. package/dist/validators/select.d.ts +3 -3
  247. package/dist/validators/select.d.ts.map +1 -1
  248. package/dist/validators/select.js +5 -5
  249. package/dist/validators/text.d.ts +3 -3
  250. package/dist/validators/text.d.ts.map +1 -1
  251. package/dist/validators/text.js +7 -7
  252. package/dist/validators/textarea.d.ts +3 -3
  253. package/dist/validators/textarea.d.ts.map +1 -1
  254. package/dist/validators/textarea.js +7 -7
  255. package/dist/validators/video.d.ts +3 -3
  256. package/dist/validators/video.d.ts.map +1 -1
  257. package/dist/validators/video.js +57 -57
  258. package/package.json +4 -5
@@ -1,131 +1,131 @@
1
- import type { BaseFieldConfig } from "./field.js";
2
- import { Field } from "./field.js";
3
- import { entityKind } from "../helpers.js";
4
- import * as z from 'zod';
5
- declare const configSchema: z.ZodObject<{
6
- /**
7
- * A destination table where the values will be saved
8
- * When this is set, the value of the field will only be saved in the destination table as one row per each value
9
- */
10
- destinationDb: z.ZodOptional<z.ZodObject<{
11
- table: z.ZodString;
12
- itemIdentifier: z.ZodString;
13
- selectIdentifier: z.ZodString;
14
- }, z.core.$strict>>;
15
- autoCompletion: z.ZodOptional<z.ZodObject<{
16
- table: z.ZodString;
17
- column: z.ZodString;
18
- }, z.core.$strict>>;
19
- placeholder: z.ZodOptional<z.ZodString>;
20
- /**
21
- * Whether to sanitize the value before saving it to the database.
22
- * If true, the value will be escaped to prevent XSS attacks.
23
- * If false, the value will be saved as is (raw input).
24
- * @default false
25
- */
26
- sanitize: z.ZodOptional<z.ZodBoolean>;
27
- }, z.core.$strict>;
28
- type Config = z.infer<typeof configSchema>;
29
- export declare class TagsField extends Field<'tags', Config> {
30
- static readonly [entityKind]: string;
31
- readonly destinationDb?: {
32
- table: string;
33
- itemIdentifier: string;
34
- selectIdentifier: string;
35
- };
36
- readonly placeholder: string;
37
- readonly sanitize: boolean;
38
- constructor(config: BaseFieldConfig<Config>);
39
- getValue(): any;
40
- exportForClient(): {
41
- placeholder: string;
42
- sanitize: boolean;
43
- type: "tags";
44
- name: string;
45
- label: string;
46
- required: boolean;
47
- conditionalFields: import("../types.js").ConditionalField[];
48
- readonly: boolean;
49
- defaultValue: any;
50
- value: any;
51
- };
52
- checkRequired(): void;
53
- prepareForSubmission(): Promise<void>;
54
- }
55
- export type TagsFieldClientConfig = ReturnType<TagsField['exportForClient']>;
56
- declare const optionsSchema: z.ZodObject<{
57
- /**
58
- * A destination table where the values will be saved
59
- * When this is set, the value of the field will only be saved in the destination table as one row per each value
60
- */
61
- destinationDb: z.ZodOptional<z.ZodObject<{
62
- table: z.ZodString;
63
- itemIdentifier: z.ZodString;
64
- selectIdentifier: z.ZodString;
65
- }, z.core.$strict>>;
66
- autoCompletion: z.ZodOptional<z.ZodObject<{
67
- table: z.ZodString;
68
- column: z.ZodString;
69
- }, z.core.$strict>>;
70
- placeholder: z.ZodOptional<z.ZodString>;
71
- /**
72
- * Whether to sanitize the value before saving it to the database.
73
- * If true, the value will be escaped to prevent XSS attacks.
74
- * If false, the value will be saved as is (raw input).
75
- * @default false
76
- */
77
- sanitize: z.ZodOptional<z.ZodBoolean>;
78
- name: z.ZodString;
79
- label: z.ZodOptional<z.ZodString>;
80
- required: z.ZodOptional<z.ZodBoolean>;
81
- defaultValue: z.ZodOptional<z.ZodAny>;
82
- order: z.ZodOptional<z.ZodNumber>;
83
- conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
84
- adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
85
- }, z.core.$strict>;
86
- declare const tagsFieldConfigSchema: z.ZodObject<{
87
- type: z.ZodLiteral<"tags">;
88
- build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<TagsField, TagsField>>;
89
- /**
90
- * A destination table where the values will be saved
91
- * When this is set, the value of the field will only be saved in the destination table as one row per each value
92
- */
93
- destinationDb: z.ZodOptional<z.ZodObject<{
94
- table: z.ZodString;
95
- itemIdentifier: z.ZodString;
96
- selectIdentifier: z.ZodString;
97
- }, z.core.$strict>>;
98
- autoCompletion: z.ZodOptional<z.ZodObject<{
99
- table: z.ZodString;
100
- column: z.ZodString;
101
- }, z.core.$strict>>;
102
- placeholder: z.ZodOptional<z.ZodString>;
103
- /**
104
- * Whether to sanitize the value before saving it to the database.
105
- * If true, the value will be escaped to prevent XSS attacks.
106
- * If false, the value will be saved as is (raw input).
107
- * @default false
108
- */
109
- sanitize: z.ZodOptional<z.ZodBoolean>;
110
- name: z.ZodString;
111
- label: z.ZodOptional<z.ZodString>;
112
- required: z.ZodOptional<z.ZodBoolean>;
113
- defaultValue: z.ZodOptional<z.ZodAny>;
114
- order: z.ZodOptional<z.ZodNumber>;
115
- conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
116
- adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
117
- }, z.core.$strict>;
118
- /**
119
- * Tags field configuration type
120
- * This is a plain object that can be serialized and used anywhere
121
- * The build() method allows creating a TagsField instance when needed
122
- */
123
- export type TagsFieldConfig = z.infer<typeof tagsFieldConfigSchema>;
124
- /**
125
- * Helper function to create a tags field configuration
126
- * Returns a config object with a build() method that can be serialized and used anywhere
127
- * @param field
128
- */
129
- export declare function tagsField(field: z.infer<typeof optionsSchema>): TagsFieldConfig;
130
- export {};
1
+ import type { BaseFieldConfig } from './field.js';
2
+ import { Field } from './field.js';
3
+ import { entityKind } from '../helpers/index.js';
4
+ import * as z from 'zod';
5
+ declare const configSchema: z.ZodObject<{
6
+ /**
7
+ * A destination table where the values will be saved
8
+ * When this is set, the value of the field will only be saved in the destination table as one row per each value
9
+ */
10
+ destinationDb: z.ZodOptional<z.ZodObject<{
11
+ table: z.ZodString;
12
+ itemIdentifier: z.ZodString;
13
+ selectIdentifier: z.ZodString;
14
+ }, z.core.$strict>>;
15
+ autoCompletion: z.ZodOptional<z.ZodObject<{
16
+ table: z.ZodString;
17
+ column: z.ZodString;
18
+ }, z.core.$strict>>;
19
+ placeholder: z.ZodOptional<z.ZodString>;
20
+ /**
21
+ * Whether to sanitize the value before saving it to the database.
22
+ * If true, the value will be escaped to prevent XSS attacks.
23
+ * If false, the value will be saved as is (raw input).
24
+ * @default false
25
+ */
26
+ sanitize: z.ZodOptional<z.ZodBoolean>;
27
+ }, z.core.$strict>;
28
+ type Config = z.infer<typeof configSchema>;
29
+ export declare class TagsField extends Field<'tags', Config> {
30
+ static readonly [entityKind]: string;
31
+ readonly destinationDb?: {
32
+ table: string;
33
+ itemIdentifier: string;
34
+ selectIdentifier: string;
35
+ };
36
+ readonly placeholder: string;
37
+ readonly sanitize: boolean;
38
+ constructor(config: BaseFieldConfig<Config>);
39
+ getValue(): any;
40
+ exportForClient(): {
41
+ placeholder: string;
42
+ sanitize: boolean;
43
+ type: "tags";
44
+ name: string;
45
+ label: string;
46
+ required: boolean;
47
+ conditionalFields: import("../types/index.js").ConditionalField[];
48
+ readonly: boolean;
49
+ defaultValue: any;
50
+ value: any;
51
+ };
52
+ checkRequired(): void;
53
+ prepareForSubmission(): Promise<void>;
54
+ }
55
+ export type TagsFieldClientConfig = ReturnType<TagsField['exportForClient']>;
56
+ declare const optionsSchema: z.ZodObject<{
57
+ /**
58
+ * A destination table where the values will be saved
59
+ * When this is set, the value of the field will only be saved in the destination table as one row per each value
60
+ */
61
+ destinationDb: z.ZodOptional<z.ZodObject<{
62
+ table: z.ZodString;
63
+ itemIdentifier: z.ZodString;
64
+ selectIdentifier: z.ZodString;
65
+ }, z.core.$strict>>;
66
+ autoCompletion: z.ZodOptional<z.ZodObject<{
67
+ table: z.ZodString;
68
+ column: z.ZodString;
69
+ }, z.core.$strict>>;
70
+ placeholder: z.ZodOptional<z.ZodString>;
71
+ /**
72
+ * Whether to sanitize the value before saving it to the database.
73
+ * If true, the value will be escaped to prevent XSS attacks.
74
+ * If false, the value will be saved as is (raw input).
75
+ * @default false
76
+ */
77
+ sanitize: z.ZodOptional<z.ZodBoolean>;
78
+ name: z.ZodString;
79
+ label: z.ZodOptional<z.ZodString>;
80
+ required: z.ZodOptional<z.ZodBoolean>;
81
+ defaultValue: z.ZodOptional<z.ZodAny>;
82
+ order: z.ZodOptional<z.ZodNumber>;
83
+ conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
84
+ adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
85
+ }, z.core.$strict>;
86
+ declare const tagsFieldConfigSchema: z.ZodObject<{
87
+ type: z.ZodLiteral<"tags">;
88
+ build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<TagsField, TagsField>>;
89
+ /**
90
+ * A destination table where the values will be saved
91
+ * When this is set, the value of the field will only be saved in the destination table as one row per each value
92
+ */
93
+ destinationDb: z.ZodOptional<z.ZodObject<{
94
+ table: z.ZodString;
95
+ itemIdentifier: z.ZodString;
96
+ selectIdentifier: z.ZodString;
97
+ }, z.core.$strict>>;
98
+ autoCompletion: z.ZodOptional<z.ZodObject<{
99
+ table: z.ZodString;
100
+ column: z.ZodString;
101
+ }, z.core.$strict>>;
102
+ placeholder: z.ZodOptional<z.ZodString>;
103
+ /**
104
+ * Whether to sanitize the value before saving it to the database.
105
+ * If true, the value will be escaped to prevent XSS attacks.
106
+ * If false, the value will be saved as is (raw input).
107
+ * @default false
108
+ */
109
+ sanitize: z.ZodOptional<z.ZodBoolean>;
110
+ name: z.ZodString;
111
+ label: z.ZodOptional<z.ZodString>;
112
+ required: z.ZodOptional<z.ZodBoolean>;
113
+ defaultValue: z.ZodOptional<z.ZodAny>;
114
+ order: z.ZodOptional<z.ZodNumber>;
115
+ conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
116
+ adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
117
+ }, z.core.$strict>;
118
+ /**
119
+ * Tags field configuration type
120
+ * This is a plain object that can be serialized and used anywhere
121
+ * The build() method allows creating a TagsField instance when needed
122
+ */
123
+ export type TagsFieldConfig = z.infer<typeof tagsFieldConfigSchema>;
124
+ /**
125
+ * Helper function to create a tags field configuration
126
+ * Returns a config object with a build() method that can be serialized and used anywhere
127
+ * @param field
128
+ */
129
+ export declare function tagsField(field: z.infer<typeof optionsSchema>): TagsFieldConfig;
130
+ export {};
131
131
  //# sourceMappingURL=tags.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../../src/core/fields/tags.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAyB,MAAM,SAAS,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,QAAA,MAAM,YAAY;IACd;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;kBAEL,CAAA;AAEF,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAE1C,qBAAa,SAAU,SAAQ,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;IAChD,gBAAyB,CAAC,UAAU,CAAC,EAAE,MAAM,CAAc;IAC3D,SAAkB,aAAa,CAAC,EAAE;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,cAAc,EAAE,MAAM,CAAA;QACtB,gBAAgB,EAAE,MAAM,CAAA;KAC3B,CAAA;IACD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;gBAEd,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;IAO3C,QAAQ;IAIQ,eAAe;;;;;;;;;;;;IAQ/B,aAAa;IAMP,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;CAa9C;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAE5E,QAAA,MAAM,aAAa;IAnFf;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;;;;;;;;kBA6DL,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;IAxFvB;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;;;;;;;;kBAmEL,CAAA;AAEF;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,eAAe,CAmB/E"}
1
+ {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../../src/core/fields/tags.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,KAAK,EAAyB,MAAM,YAAY,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,QAAA,MAAM,YAAY;IACd;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;kBAEL,CAAA;AAEF,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAE1C,qBAAa,SAAU,SAAQ,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;IAChD,gBAAyB,CAAC,UAAU,CAAC,EAAE,MAAM,CAAc;IAC3D,SAAkB,aAAa,CAAC,EAAE;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,cAAc,EAAE,MAAM,CAAA;QACtB,gBAAgB,EAAE,MAAM,CAAA;KAC3B,CAAA;IACD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;gBAEd,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;IAO3C,QAAQ;IAIQ,eAAe;;;;;;;;;;;;IAQ/B,aAAa;IAMP,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;CAa9C;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAE5E,QAAA,MAAM,aAAa;IAnFf;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;;;;;;;;kBA6DL,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;IAxFvB;;;OAGG;;;;;;;;;;;IAiBH;;;;;OAKG;;;;;;;;;kBAmEL,CAAA;AAEF;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,eAAe,CAmB/E"}
@@ -1,105 +1,105 @@
1
- import { Field, baseFieldConfigSchema } from "./field.js";
2
- import { entityKind } from "../helpers.js";
3
- import * as z from 'zod';
4
- import { escapeHTML } from "../security/dom.js";
5
- const configSchema = z.strictObject({
6
- /**
7
- * A destination table where the values will be saved
8
- * When this is set, the value of the field will only be saved in the destination table as one row per each value
9
- */
10
- destinationDb: z
11
- .strictObject({
12
- table: z.string().describe('The destination table name'),
13
- itemIdentifier: z.string().describe('The identifier of the item that has this tags field as a field'),
14
- selectIdentifier: z.string().describe('An identifier name for the value of the values in the tags field'),
15
- })
16
- .optional()
17
- .describe('Destination table configuration'),
18
- autoCompletion: z
19
- .strictObject({
20
- table: z.string().describe('The table where the auto completion values are stored'),
21
- column: z.string().describe('The column where the values are stored'),
22
- })
23
- .optional()
24
- .describe('Auto completion configuration'),
25
- placeholder: z.string().optional().describe('The placeholder text for the field'),
26
- /**
27
- * Whether to sanitize the value before saving it to the database.
28
- * If true, the value will be escaped to prevent XSS attacks.
29
- * If false, the value will be saved as is (raw input).
30
- * @default false
31
- */
32
- sanitize: z.boolean().optional().describe('Sanitize the value before saving'),
33
- });
34
- export class TagsField extends Field {
35
- static [entityKind] = 'TagsField';
36
- destinationDb;
37
- placeholder;
38
- sanitize;
39
- constructor(config) {
40
- super(config, 'tags');
41
- this.destinationDb = config.destinationDb;
42
- this.placeholder = config.placeholder || '';
43
- this.sanitize = config.sanitize ?? false;
44
- }
45
- getValue() {
46
- return this.value;
47
- }
48
- exportForClient() {
49
- return {
50
- ...super.exportForClient(),
51
- placeholder: this.placeholder,
52
- sanitize: this.sanitize,
53
- };
54
- }
55
- checkRequired() {
56
- if (this.required && (!this.value || this.value.length === 0)) {
57
- throw new Error(`Field ${this.label} is required`);
58
- }
59
- }
60
- async prepareForSubmission() {
61
- if (this.value) {
62
- if (!Array.isArray(this.value)) {
63
- throw new Error(`Field ${this.label} must be an array of tags`);
64
- }
65
- if (this.value.some((tag) => typeof tag !== 'string')) {
66
- throw new Error(`Field ${this.label} must contain only string tags`);
67
- }
68
- if (this.sanitize) {
69
- this.value = this.value.map((tag) => escapeHTML(tag) || tag);
70
- }
71
- }
72
- }
73
- }
74
- const optionsSchema = z.strictObject({
75
- ...baseFieldConfigSchema.shape,
76
- ...configSchema.shape,
77
- });
78
- const tagsFieldConfigSchema = z.strictObject({
79
- ...optionsSchema.shape,
80
- type: z.literal('tags').describe('The type of the field'),
81
- build: z.function().output(z.instanceof(TagsField)).describe('Build a TagsField instance from this config'),
82
- });
83
- /**
84
- * Helper function to create a tags field configuration
85
- * Returns a config object with a build() method that can be serialized and used anywhere
86
- * @param field
87
- */
88
- export function tagsField(field) {
89
- /**
90
- * Validate the field config
91
- */
92
- const result = optionsSchema.safeParse(field);
93
- if (!result.success) {
94
- throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
95
- }
96
- const config = {
97
- ...field,
98
- type: 'tags',
99
- build() {
100
- // Use the original field config directly (it doesn't have build() method)
101
- return new TagsField(field);
102
- },
103
- };
104
- return config;
105
- }
1
+ import { Field, baseFieldConfigSchema } from './field.js';
2
+ import { entityKind } from '../helpers/index.js';
3
+ import * as z from 'zod';
4
+ import { escapeHTML } from '../security/dom.js';
5
+ const configSchema = z.strictObject({
6
+ /**
7
+ * A destination table where the values will be saved
8
+ * When this is set, the value of the field will only be saved in the destination table as one row per each value
9
+ */
10
+ destinationDb: z
11
+ .strictObject({
12
+ table: z.string().describe('The destination table name'),
13
+ itemIdentifier: z.string().describe('The identifier of the item that has this tags field as a field'),
14
+ selectIdentifier: z.string().describe('An identifier name for the value of the values in the tags field'),
15
+ })
16
+ .optional()
17
+ .describe('Destination table configuration'),
18
+ autoCompletion: z
19
+ .strictObject({
20
+ table: z.string().describe('The table where the auto completion values are stored'),
21
+ column: z.string().describe('The column where the values are stored'),
22
+ })
23
+ .optional()
24
+ .describe('Auto completion configuration'),
25
+ placeholder: z.string().optional().describe('The placeholder text for the field'),
26
+ /**
27
+ * Whether to sanitize the value before saving it to the database.
28
+ * If true, the value will be escaped to prevent XSS attacks.
29
+ * If false, the value will be saved as is (raw input).
30
+ * @default false
31
+ */
32
+ sanitize: z.boolean().optional().describe('Sanitize the value before saving'),
33
+ });
34
+ export class TagsField extends Field {
35
+ static [entityKind] = 'TagsField';
36
+ destinationDb;
37
+ placeholder;
38
+ sanitize;
39
+ constructor(config) {
40
+ super(config, 'tags');
41
+ this.destinationDb = config.destinationDb;
42
+ this.placeholder = config.placeholder || '';
43
+ this.sanitize = config.sanitize ?? false;
44
+ }
45
+ getValue() {
46
+ return this.value;
47
+ }
48
+ exportForClient() {
49
+ return {
50
+ ...super.exportForClient(),
51
+ placeholder: this.placeholder,
52
+ sanitize: this.sanitize,
53
+ };
54
+ }
55
+ checkRequired() {
56
+ if (this.required && (!this.value || this.value.length === 0)) {
57
+ throw new Error(`Field ${this.label} is required`);
58
+ }
59
+ }
60
+ async prepareForSubmission() {
61
+ if (this.value) {
62
+ if (!Array.isArray(this.value)) {
63
+ throw new Error(`Field ${this.label} must be an array of tags`);
64
+ }
65
+ if (this.value.some((tag) => typeof tag !== 'string')) {
66
+ throw new Error(`Field ${this.label} must contain only string tags`);
67
+ }
68
+ if (this.sanitize) {
69
+ this.value = this.value.map((tag) => escapeHTML(tag) || tag);
70
+ }
71
+ }
72
+ }
73
+ }
74
+ const optionsSchema = z.strictObject({
75
+ ...baseFieldConfigSchema.shape,
76
+ ...configSchema.shape,
77
+ });
78
+ const tagsFieldConfigSchema = z.strictObject({
79
+ ...optionsSchema.shape,
80
+ type: z.literal('tags').describe('The type of the field'),
81
+ build: z.function().output(z.instanceof(TagsField)).describe('Build a TagsField instance from this config'),
82
+ });
83
+ /**
84
+ * Helper function to create a tags field configuration
85
+ * Returns a config object with a build() method that can be serialized and used anywhere
86
+ * @param field
87
+ */
88
+ export function tagsField(field) {
89
+ /**
90
+ * Validate the field config
91
+ */
92
+ const result = optionsSchema.safeParse(field);
93
+ if (!result.success) {
94
+ throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
95
+ }
96
+ const config = {
97
+ ...field,
98
+ type: 'tags',
99
+ build() {
100
+ // Use the original field config directly (it doesn't have build() method)
101
+ return new TagsField(field);
102
+ },
103
+ };
104
+ return config;
105
+ }