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.
- package/dist/api/axios/axiosInstance.d.ts +1 -1
- package/dist/api/axios/axiosInstance.js +8 -8
- package/dist/api/index.d.ts +855 -855
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +12 -12
- package/dist/api/lib/serverActions.d.ts +239 -239
- package/dist/api/lib/serverActions.d.ts.map +1 -1
- package/dist/api/lib/serverActions.js +834 -834
- package/dist/api/root.d.ts +828 -828
- package/dist/api/root.js +30 -30
- package/dist/api/routers/accountSettings.d.ts +60 -60
- package/dist/api/routers/accountSettings.js +108 -108
- package/dist/api/routers/admins.d.ts +105 -105
- package/dist/api/routers/admins.js +219 -219
- package/dist/api/routers/auth.d.ts +47 -47
- package/dist/api/routers/auth.js +25 -25
- package/dist/api/routers/categorySection.d.ts +103 -103
- package/dist/api/routers/categorySection.js +38 -38
- package/dist/api/routers/cmsSettings.d.ts +48 -48
- package/dist/api/routers/cmsSettings.js +51 -51
- package/dist/api/routers/cpanel.d.ts +83 -83
- package/dist/api/routers/cpanel.js +216 -216
- package/dist/api/routers/files.d.ts +47 -47
- package/dist/api/routers/files.js +23 -23
- package/dist/api/routers/gallery.d.ts +35 -35
- package/dist/api/routers/gallery.js +62 -62
- package/dist/api/routers/googleAnalytics.d.ts +30 -30
- package/dist/api/routers/googleAnalytics.js +7 -7
- package/dist/api/routers/hasItemsSection.d.ts +139 -139
- package/dist/api/routers/hasItemsSection.js +34 -34
- package/dist/api/routers/navigation.d.ts +51 -51
- package/dist/api/routers/navigation.js +11 -11
- package/dist/api/routers/simpleSection.d.ts +57 -57
- package/dist/api/routers/simpleSection.js +12 -12
- package/dist/api/trpc.d.ts +106 -106
- package/dist/api/trpc.js +72 -72
- package/dist/auth/axios/axiosInstance.d.ts +1 -1
- package/dist/auth/axios/axiosInstance.js +8 -8
- package/dist/auth/csrf.d.ts +29 -29
- package/dist/auth/csrf.js +76 -76
- package/dist/auth/hooks/index.d.ts +3 -3
- package/dist/auth/hooks/index.d.ts.map +1 -1
- package/dist/auth/hooks/index.js +3 -3
- package/dist/auth/hooks/useAxiosPrivate.d.ts +4 -4
- package/dist/auth/hooks/useAxiosPrivate.js +74 -74
- package/dist/auth/hooks/useRefreshToken.d.ts +6 -6
- package/dist/auth/hooks/useRefreshToken.js +79 -79
- package/dist/auth/index.d.ts +22 -22
- package/dist/auth/index.js +44 -44
- package/dist/auth/jwt.d.ts +5 -5
- package/dist/auth/jwt.js +25 -25
- package/dist/auth/lib/actions.d.ts +32 -32
- package/dist/auth/lib/actions.d.ts.map +1 -1
- package/dist/auth/lib/actions.js +209 -209
- package/dist/auth/lib/client.d.ts +3 -3
- package/dist/auth/lib/client.js +46 -46
- package/dist/auth/lib/index.d.ts +2 -2
- package/dist/auth/lib/index.d.ts.map +1 -1
- package/dist/auth/lib/index.js +2 -2
- package/dist/auth/react.d.ts +105 -105
- package/dist/auth/react.d.ts.map +1 -1
- package/dist/auth/react.js +347 -347
- package/dist/auth/trpc.d.ts +5 -5
- package/dist/auth/trpc.d.ts.map +1 -1
- package/dist/auth/trpc.js +81 -81
- package/dist/core/config/config-loader.d.ts +91 -91
- package/dist/core/config/config-loader.js +230 -230
- package/dist/core/config/index.d.ts +2 -2
- package/dist/core/config/index.d.ts.map +1 -1
- package/dist/core/config/index.js +1 -1
- package/dist/core/config/loader.d.ts +1 -1
- package/dist/core/config/loader.js +42 -42
- package/dist/core/db/index.d.ts +1 -1
- package/dist/core/db/index.d.ts.map +1 -1
- package/dist/core/db/index.js +1 -1
- package/dist/core/db/table-checker/DbTable.d.ts +5 -5
- package/dist/core/db/table-checker/DbTable.js +5 -5
- package/dist/core/db/table-checker/MysqlTable.d.ts +33 -33
- package/dist/core/db/table-checker/MysqlTable.d.ts.map +1 -1
- package/dist/core/db/table-checker/MysqlTable.js +94 -94
- package/dist/core/db/table-checker/index.d.ts +1 -1
- package/dist/core/db/table-checker/index.d.ts.map +1 -1
- package/dist/core/db/table-checker/index.js +1 -1
- package/dist/core/factories/FieldFactory.d.ts +123 -123
- package/dist/core/factories/FieldFactory.d.ts.map +1 -1
- package/dist/core/factories/FieldFactory.js +411 -411
- package/dist/core/factories/SectionFactory.d.ts +109 -109
- package/dist/core/factories/SectionFactory.d.ts.map +1 -1
- package/dist/core/factories/SectionFactory.js +415 -415
- package/dist/core/factories/index.d.ts +2 -2
- package/dist/core/factories/index.d.ts.map +1 -1
- package/dist/core/factories/index.js +2 -2
- package/dist/core/fields/checkbox.d.ts +62 -62
- package/dist/core/fields/checkbox.d.ts.map +1 -1
- package/dist/core/fields/checkbox.js +62 -62
- package/dist/core/fields/color.d.ts +83 -83
- package/dist/core/fields/color.d.ts.map +1 -1
- package/dist/core/fields/color.js +91 -91
- package/dist/core/fields/date.d.ts +99 -99
- package/dist/core/fields/date.d.ts.map +1 -1
- package/dist/core/fields/date.js +108 -108
- package/dist/core/fields/document.d.ts +179 -179
- package/dist/core/fields/document.d.ts.map +1 -1
- package/dist/core/fields/document.js +277 -277
- package/dist/core/fields/field-group.d.ts +17 -17
- package/dist/core/fields/field-group.d.ts.map +1 -1
- package/dist/core/fields/field-group.js +6 -6
- package/dist/core/fields/field.d.ts +125 -125
- package/dist/core/fields/field.d.ts.map +1 -1
- package/dist/core/fields/field.js +148 -148
- package/dist/core/fields/fileField.d.ts +14 -14
- package/dist/core/fields/fileField.d.ts.map +1 -1
- package/dist/core/fields/fileField.js +5 -5
- package/dist/core/fields/index.d.ts +64 -64
- package/dist/core/fields/index.d.ts.map +1 -1
- package/dist/core/fields/index.js +18 -18
- package/dist/core/fields/map.d.ts +166 -166
- package/dist/core/fields/map.d.ts.map +1 -1
- package/dist/core/fields/map.js +152 -152
- package/dist/core/fields/number.d.ts +185 -185
- package/dist/core/fields/number.d.ts.map +1 -1
- package/dist/core/fields/number.js +241 -241
- package/dist/core/fields/password.d.ts +108 -108
- package/dist/core/fields/password.d.ts.map +1 -1
- package/dist/core/fields/password.js +133 -133
- package/dist/core/fields/photo.d.ts +288 -288
- package/dist/core/fields/photo.d.ts.map +1 -1
- package/dist/core/fields/photo.js +410 -410
- package/dist/core/fields/richText.d.ts +294 -294
- package/dist/core/fields/richText.d.ts.map +1 -1
- package/dist/core/fields/richText.js +338 -338
- package/dist/core/fields/select.d.ts +365 -365
- package/dist/core/fields/select.d.ts.map +1 -1
- package/dist/core/fields/select.js +499 -499
- package/dist/core/fields/selectMultiple.d.ts +235 -235
- package/dist/core/fields/selectMultiple.d.ts.map +1 -1
- package/dist/core/fields/selectMultiple.js +417 -417
- package/dist/core/fields/tags.d.ts +130 -130
- package/dist/core/fields/tags.d.ts.map +1 -1
- package/dist/core/fields/tags.js +105 -105
- package/dist/core/fields/text.d.ts +135 -135
- package/dist/core/fields/text.d.ts.map +1 -1
- package/dist/core/fields/text.js +157 -157
- package/dist/core/fields/textArea.d.ts +106 -106
- package/dist/core/fields/textArea.d.ts.map +1 -1
- package/dist/core/fields/textArea.js +126 -126
- package/dist/core/fields/video.d.ts +147 -147
- package/dist/core/fields/video.d.ts.map +1 -1
- package/dist/core/fields/video.js +248 -248
- package/dist/core/helpers/entity.d.ts +7 -7
- package/dist/core/helpers/entity.js +27 -27
- package/dist/core/helpers/index.d.ts +4 -4
- package/dist/core/helpers/index.d.ts.map +1 -1
- package/dist/core/helpers/index.js +3 -3
- package/dist/core/index.d.ts +7 -7
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +7 -7
- package/dist/core/sections/category.d.ts +282 -282
- package/dist/core/sections/category.d.ts.map +1 -1
- package/dist/core/sections/category.js +147 -147
- package/dist/core/sections/hasItems.d.ts +631 -631
- package/dist/core/sections/hasItems.d.ts.map +1 -1
- package/dist/core/sections/hasItems.js +144 -144
- package/dist/core/sections/index.d.ts +4 -4
- package/dist/core/sections/index.d.ts.map +1 -1
- package/dist/core/sections/index.js +4 -4
- package/dist/core/sections/section.d.ts +225 -225
- package/dist/core/sections/section.d.ts.map +1 -1
- package/dist/core/sections/section.js +341 -341
- package/dist/core/sections/simple.d.ts +98 -98
- package/dist/core/sections/simple.d.ts.map +1 -1
- package/dist/core/sections/simple.js +95 -95
- package/dist/core/security/dom.d.ts +10 -10
- package/dist/core/security/dom.js +92 -92
- package/dist/core/submit/ItemEditSubmit.d.ts +75 -75
- package/dist/core/submit/ItemEditSubmit.js +186 -186
- package/dist/core/submit/NewItemSubmit.d.ts +13 -13
- package/dist/core/submit/NewItemSubmit.js +93 -93
- package/dist/core/submit/SimpleSectionSubmit.d.ts +12 -12
- package/dist/core/submit/SimpleSectionSubmit.js +93 -93
- package/dist/core/submit/index.d.ts +4 -4
- package/dist/core/submit/index.js +4 -4
- package/dist/core/submit/submit.d.ts +115 -115
- package/dist/core/submit/submit.js +479 -479
- package/dist/core/types/index.d.ts +279 -279
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/core/types/index.js +1 -1
- package/dist/db/client.d.ts +8 -8
- package/dist/db/client.d.ts.map +1 -1
- package/dist/db/client.js +19 -19
- package/dist/db/config.d.ts +5 -5
- package/dist/db/config.js +22 -22
- package/dist/db/drizzle.config.d.ts +5 -5
- package/dist/db/drizzle.config.js +18 -18
- package/dist/db/index.d.ts +2 -2
- package/dist/db/index.js +3 -3
- package/dist/db/schema.d.ts +638 -638
- package/dist/db/schema.js +73 -73
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -7
- package/dist/translations/index.d.ts +2 -2
- package/dist/translations/index.js +15 -15
- package/dist/utils/CpanelApi.d.ts +24 -24
- package/dist/utils/CpanelApi.js +64 -64
- package/dist/utils/constants.d.ts +13 -13
- package/dist/utils/constants.js +61 -61
- package/dist/utils/index.d.ts +4 -4
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +4 -4
- package/dist/utils/utils.d.ts +59 -59
- package/dist/utils/utils.js +132 -132
- package/dist/validators/checkbox.d.ts +3 -3
- package/dist/validators/checkbox.d.ts.map +1 -1
- package/dist/validators/checkbox.js +12 -12
- package/dist/validators/color.d.ts +3 -3
- package/dist/validators/color.d.ts.map +1 -1
- package/dist/validators/color.js +7 -7
- package/dist/validators/date.d.ts +3 -3
- package/dist/validators/date.d.ts.map +1 -1
- package/dist/validators/date.js +5 -5
- package/dist/validators/document.d.ts +3 -3
- package/dist/validators/document.d.ts.map +1 -1
- package/dist/validators/document.js +57 -57
- package/dist/validators/index.d.ts +14 -14
- package/dist/validators/index.d.ts.map +1 -1
- package/dist/validators/index.js +14 -14
- package/dist/validators/map.d.ts +3 -3
- package/dist/validators/map.d.ts.map +1 -1
- package/dist/validators/map.js +5 -5
- package/dist/validators/number.d.ts +3 -3
- package/dist/validators/number.d.ts.map +1 -1
- package/dist/validators/number.js +20 -20
- package/dist/validators/password.d.ts +3 -3
- package/dist/validators/password.d.ts.map +1 -1
- package/dist/validators/password.js +11 -11
- package/dist/validators/photo.d.ts +3 -3
- package/dist/validators/photo.d.ts.map +1 -1
- package/dist/validators/photo.js +100 -100
- package/dist/validators/richText.d.ts +3 -3
- package/dist/validators/richText.d.ts.map +1 -1
- package/dist/validators/richText.js +8 -8
- package/dist/validators/select-multiple.d.ts +9 -9
- package/dist/validators/select-multiple.d.ts.map +1 -1
- package/dist/validators/select-multiple.js +20 -20
- package/dist/validators/select.d.ts +3 -3
- package/dist/validators/select.d.ts.map +1 -1
- package/dist/validators/select.js +5 -5
- package/dist/validators/text.d.ts +3 -3
- package/dist/validators/text.d.ts.map +1 -1
- package/dist/validators/text.js +7 -7
- package/dist/validators/textarea.d.ts +3 -3
- package/dist/validators/textarea.d.ts.map +1 -1
- package/dist/validators/textarea.js +7 -7
- package/dist/validators/video.d.ts +3 -3
- package/dist/validators/video.d.ts.map +1 -1
- package/dist/validators/video.js +57 -57
- package/package.json +4 -5
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { FieldFactory } from
|
|
2
|
-
export { SectionFactory } from
|
|
1
|
+
export { FieldFactory } from './FieldFactory.js';
|
|
2
|
+
export { SectionFactory } from './SectionFactory.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/factories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/factories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { FieldFactory } from
|
|
2
|
-
export { SectionFactory } from
|
|
1
|
+
export { FieldFactory } from './FieldFactory.js';
|
|
2
|
+
export { SectionFactory } from './SectionFactory.js';
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
import type { BaseFieldConfig } from
|
|
2
|
-
import { Field } from
|
|
3
|
-
import { entityKind } from
|
|
4
|
-
import * as z from 'zod';
|
|
5
|
-
declare const configSchema: z.ZodObject<{
|
|
6
|
-
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
7
|
-
}, z.core.$strict>;
|
|
8
|
-
type Config = z.infer<typeof configSchema>;
|
|
9
|
-
export declare class CheckboxField extends Field<'checkbox', Config> {
|
|
10
|
-
static readonly [entityKind]: string;
|
|
11
|
-
constructor(config: BaseFieldConfig<Config>);
|
|
12
|
-
/**
|
|
13
|
-
* Get the value of the field
|
|
14
|
-
*/
|
|
15
|
-
getValue(): boolean;
|
|
16
|
-
checkRequired(): void;
|
|
17
|
-
prepareForSubmission(): Promise<void>;
|
|
18
|
-
exportForClient(): {
|
|
19
|
-
type: "checkbox";
|
|
20
|
-
name: string;
|
|
21
|
-
label: string;
|
|
22
|
-
required: boolean;
|
|
23
|
-
conditionalFields: import("../types.js").ConditionalField[];
|
|
24
|
-
readonly: boolean;
|
|
25
|
-
defaultValue: any;
|
|
26
|
-
value: any;
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
export type CheckboxFieldClientConfig = ReturnType<CheckboxField['exportForClient']>;
|
|
30
|
-
declare const optionsSchema: z.ZodObject<{
|
|
31
|
-
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
32
|
-
name: z.ZodString;
|
|
33
|
-
label: z.ZodOptional<z.ZodString>;
|
|
34
|
-
required: z.ZodOptional<z.ZodBoolean>;
|
|
35
|
-
order: z.ZodOptional<z.ZodNumber>;
|
|
36
|
-
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
|
|
37
|
-
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
38
|
-
}, z.core.$strict>;
|
|
39
|
-
declare const checkboxFieldConfigSchema: z.ZodObject<{
|
|
40
|
-
type: z.ZodLiteral<"checkbox">;
|
|
41
|
-
build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<CheckboxField, CheckboxField>>;
|
|
42
|
-
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
43
|
-
name: z.ZodString;
|
|
44
|
-
label: z.ZodOptional<z.ZodString>;
|
|
45
|
-
required: z.ZodOptional<z.ZodBoolean>;
|
|
46
|
-
order: z.ZodOptional<z.ZodNumber>;
|
|
47
|
-
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
|
|
48
|
-
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
49
|
-
}, z.core.$strict>;
|
|
50
|
-
/**
|
|
51
|
-
* Checkbox field configuration type
|
|
52
|
-
* This is a plain object that can be serialized and used anywhere
|
|
53
|
-
* The build() method allows creating a CheckboxField instance when needed
|
|
54
|
-
*/
|
|
55
|
-
export type CheckboxFieldConfig = z.infer<typeof checkboxFieldConfigSchema>;
|
|
56
|
-
/**
|
|
57
|
-
* Helper function to create a checkbox field configuration
|
|
58
|
-
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
59
|
-
* @param field
|
|
60
|
-
*/
|
|
61
|
-
export declare function checkboxField(field: z.infer<typeof optionsSchema>): CheckboxFieldConfig;
|
|
62
|
-
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
|
+
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
7
|
+
}, z.core.$strict>;
|
|
8
|
+
type Config = z.infer<typeof configSchema>;
|
|
9
|
+
export declare class CheckboxField extends Field<'checkbox', Config> {
|
|
10
|
+
static readonly [entityKind]: string;
|
|
11
|
+
constructor(config: BaseFieldConfig<Config>);
|
|
12
|
+
/**
|
|
13
|
+
* Get the value of the field
|
|
14
|
+
*/
|
|
15
|
+
getValue(): boolean;
|
|
16
|
+
checkRequired(): void;
|
|
17
|
+
prepareForSubmission(): Promise<void>;
|
|
18
|
+
exportForClient(): {
|
|
19
|
+
type: "checkbox";
|
|
20
|
+
name: string;
|
|
21
|
+
label: string;
|
|
22
|
+
required: boolean;
|
|
23
|
+
conditionalFields: import("../types/index.js").ConditionalField[];
|
|
24
|
+
readonly: boolean;
|
|
25
|
+
defaultValue: any;
|
|
26
|
+
value: any;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export type CheckboxFieldClientConfig = ReturnType<CheckboxField['exportForClient']>;
|
|
30
|
+
declare const optionsSchema: z.ZodObject<{
|
|
31
|
+
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
32
|
+
name: z.ZodString;
|
|
33
|
+
label: z.ZodOptional<z.ZodString>;
|
|
34
|
+
required: z.ZodOptional<z.ZodBoolean>;
|
|
35
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
36
|
+
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
|
|
37
|
+
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
38
|
+
}, z.core.$strict>;
|
|
39
|
+
declare const checkboxFieldConfigSchema: z.ZodObject<{
|
|
40
|
+
type: z.ZodLiteral<"checkbox">;
|
|
41
|
+
build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<CheckboxField, CheckboxField>>;
|
|
42
|
+
defaultValue: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodInt]>>;
|
|
43
|
+
name: z.ZodString;
|
|
44
|
+
label: z.ZodOptional<z.ZodString>;
|
|
45
|
+
required: z.ZodOptional<z.ZodBoolean>;
|
|
46
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
47
|
+
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
|
|
48
|
+
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
49
|
+
}, z.core.$strict>;
|
|
50
|
+
/**
|
|
51
|
+
* Checkbox field configuration type
|
|
52
|
+
* This is a plain object that can be serialized and used anywhere
|
|
53
|
+
* The build() method allows creating a CheckboxField instance when needed
|
|
54
|
+
*/
|
|
55
|
+
export type CheckboxFieldConfig = z.infer<typeof checkboxFieldConfigSchema>;
|
|
56
|
+
/**
|
|
57
|
+
* Helper function to create a checkbox field configuration
|
|
58
|
+
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
59
|
+
* @param field
|
|
60
|
+
*/
|
|
61
|
+
export declare function checkboxField(field: z.infer<typeof optionsSchema>): CheckboxFieldConfig;
|
|
62
|
+
export {};
|
|
63
63
|
//# sourceMappingURL=checkbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/core/fields/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/core/fields/checkbox.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;AAExB,QAAA,MAAM,YAAY;;kBAEhB,CAAA;AAEF,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAE1C,qBAAa,aAAc,SAAQ,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;IACxD,gBAAyB,CAAC,UAAU,CAAC,EAAE,MAAM,CAAkB;gBACnD,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;IAI3C;;OAEG;IACH,QAAQ,IAAI,OAAO;IAMnB,aAAa;IAEb,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,eAAe;;;;;;;;;;CAK3B;AAED,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAEpF,QAAA,MAAM,aAAa;;;;;;;;kBAGjB,CAAA;AAEF,QAAA,MAAM,yBAAyB;;;;;;;;;;kBAI7B,CAAA;AAEF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,mBAAmB,CAmBvF"}
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
import { Field, baseFieldConfigSchema } from
|
|
2
|
-
import { entityKind } from
|
|
3
|
-
import * as z from 'zod';
|
|
4
|
-
const configSchema = z.strictObject({
|
|
5
|
-
defaultValue: z.union([z.boolean(), z.int().positive()]).optional().describe('The default value of the field'),
|
|
6
|
-
});
|
|
7
|
-
export class CheckboxField extends Field {
|
|
8
|
-
static [entityKind] = 'CheckboxField';
|
|
9
|
-
constructor(config) {
|
|
10
|
-
super(config, 'checkbox');
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Get the value of the field
|
|
14
|
-
*/
|
|
15
|
-
getValue() {
|
|
16
|
-
/**
|
|
17
|
-
* Convert the checkbox value to a boolean
|
|
18
|
-
*/
|
|
19
|
-
return this.value === 'on';
|
|
20
|
-
}
|
|
21
|
-
checkRequired() { }
|
|
22
|
-
prepareForSubmission() {
|
|
23
|
-
return Promise.resolve();
|
|
24
|
-
}
|
|
25
|
-
exportForClient() {
|
|
26
|
-
return {
|
|
27
|
-
...super.exportForClient(),
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
const optionsSchema = z.strictObject({
|
|
32
|
-
...baseFieldConfigSchema.shape,
|
|
33
|
-
...configSchema.shape,
|
|
34
|
-
});
|
|
35
|
-
const checkboxFieldConfigSchema = z.strictObject({
|
|
36
|
-
...optionsSchema.shape,
|
|
37
|
-
type: z.literal('checkbox').describe('The type of the field'),
|
|
38
|
-
build: z.function().output(z.instanceof(CheckboxField)).describe('Build a CheckboxField instance from this config'),
|
|
39
|
-
});
|
|
40
|
-
/**
|
|
41
|
-
* Helper function to create a checkbox field configuration
|
|
42
|
-
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
43
|
-
* @param field
|
|
44
|
-
*/
|
|
45
|
-
export function checkboxField(field) {
|
|
46
|
-
/**
|
|
47
|
-
* Validate the field config
|
|
48
|
-
*/
|
|
49
|
-
const result = optionsSchema.safeParse(field);
|
|
50
|
-
if (!result.success) {
|
|
51
|
-
throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
|
|
52
|
-
}
|
|
53
|
-
const config = {
|
|
54
|
-
...field,
|
|
55
|
-
type: 'checkbox',
|
|
56
|
-
build() {
|
|
57
|
-
// Use the original field config directly (it doesn't have build() method)
|
|
58
|
-
return new CheckboxField(field);
|
|
59
|
-
},
|
|
60
|
-
};
|
|
61
|
-
return config;
|
|
62
|
-
}
|
|
1
|
+
import { Field, baseFieldConfigSchema } from './field.js';
|
|
2
|
+
import { entityKind } from '../helpers/index.js';
|
|
3
|
+
import * as z from 'zod';
|
|
4
|
+
const configSchema = z.strictObject({
|
|
5
|
+
defaultValue: z.union([z.boolean(), z.int().positive()]).optional().describe('The default value of the field'),
|
|
6
|
+
});
|
|
7
|
+
export class CheckboxField extends Field {
|
|
8
|
+
static [entityKind] = 'CheckboxField';
|
|
9
|
+
constructor(config) {
|
|
10
|
+
super(config, 'checkbox');
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get the value of the field
|
|
14
|
+
*/
|
|
15
|
+
getValue() {
|
|
16
|
+
/**
|
|
17
|
+
* Convert the checkbox value to a boolean
|
|
18
|
+
*/
|
|
19
|
+
return this.value === 'on';
|
|
20
|
+
}
|
|
21
|
+
checkRequired() { }
|
|
22
|
+
prepareForSubmission() {
|
|
23
|
+
return Promise.resolve();
|
|
24
|
+
}
|
|
25
|
+
exportForClient() {
|
|
26
|
+
return {
|
|
27
|
+
...super.exportForClient(),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
const optionsSchema = z.strictObject({
|
|
32
|
+
...baseFieldConfigSchema.shape,
|
|
33
|
+
...configSchema.shape,
|
|
34
|
+
});
|
|
35
|
+
const checkboxFieldConfigSchema = z.strictObject({
|
|
36
|
+
...optionsSchema.shape,
|
|
37
|
+
type: z.literal('checkbox').describe('The type of the field'),
|
|
38
|
+
build: z.function().output(z.instanceof(CheckboxField)).describe('Build a CheckboxField instance from this config'),
|
|
39
|
+
});
|
|
40
|
+
/**
|
|
41
|
+
* Helper function to create a checkbox field configuration
|
|
42
|
+
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
43
|
+
* @param field
|
|
44
|
+
*/
|
|
45
|
+
export function checkboxField(field) {
|
|
46
|
+
/**
|
|
47
|
+
* Validate the field config
|
|
48
|
+
*/
|
|
49
|
+
const result = optionsSchema.safeParse(field);
|
|
50
|
+
if (!result.success) {
|
|
51
|
+
throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
|
|
52
|
+
}
|
|
53
|
+
const config = {
|
|
54
|
+
...field,
|
|
55
|
+
type: 'checkbox',
|
|
56
|
+
build() {
|
|
57
|
+
// Use the original field config directly (it doesn't have build() method)
|
|
58
|
+
return new CheckboxField(field);
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
return config;
|
|
62
|
+
}
|
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
import type { BaseFieldConfig } from
|
|
2
|
-
import { Field } from
|
|
3
|
-
import { entityKind } from
|
|
4
|
-
import * as z from 'zod';
|
|
5
|
-
declare const configSchema: z.ZodObject<{
|
|
6
|
-
/**
|
|
7
|
-
* The default value of the field.
|
|
8
|
-
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
9
|
-
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
10
|
-
*/
|
|
11
|
-
defaultValue: z.ZodOptional<z.ZodString>;
|
|
12
|
-
}, z.core.$strict>;
|
|
13
|
-
type Config = z.infer<typeof configSchema>;
|
|
14
|
-
export declare class ColorField extends Field<'color', Config> {
|
|
15
|
-
static readonly [entityKind]: string;
|
|
16
|
-
private readonly _defaultValue;
|
|
17
|
-
value: string | undefined;
|
|
18
|
-
constructor(config: BaseFieldConfig<Config>);
|
|
19
|
-
/**
|
|
20
|
-
* Get the value of the field
|
|
21
|
-
*/
|
|
22
|
-
getValue(): string | undefined;
|
|
23
|
-
exportForClient(): {
|
|
24
|
-
type: "color";
|
|
25
|
-
name: string;
|
|
26
|
-
label: string;
|
|
27
|
-
required: boolean;
|
|
28
|
-
conditionalFields: import("../types.js").ConditionalField[];
|
|
29
|
-
readonly: boolean;
|
|
30
|
-
defaultValue: any;
|
|
31
|
-
value: any;
|
|
32
|
-
};
|
|
33
|
-
checkRequired(): void;
|
|
34
|
-
hasSqlNameAndValue(): boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Prepare the field for submission
|
|
37
|
-
*/
|
|
38
|
-
prepareForSubmission(): Promise<void>;
|
|
39
|
-
}
|
|
40
|
-
export type ColorFieldClientConfig = ReturnType<ColorField['exportForClient']>;
|
|
41
|
-
declare const optionsSchema: z.ZodObject<{
|
|
42
|
-
/**
|
|
43
|
-
* The default value of the field.
|
|
44
|
-
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
45
|
-
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
46
|
-
*/
|
|
47
|
-
defaultValue: z.ZodOptional<z.ZodString>;
|
|
48
|
-
name: z.ZodString;
|
|
49
|
-
label: z.ZodOptional<z.ZodString>;
|
|
50
|
-
required: z.ZodOptional<z.ZodBoolean>;
|
|
51
|
-
order: z.ZodOptional<z.ZodNumber>;
|
|
52
|
-
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
|
|
53
|
-
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
54
|
-
}, z.core.$strict>;
|
|
55
|
-
declare const colorFieldConfigSchema: z.ZodObject<{
|
|
56
|
-
type: z.ZodLiteral<"color">;
|
|
57
|
-
build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<ColorField, ColorField>>;
|
|
58
|
-
/**
|
|
59
|
-
* The default value of the field.
|
|
60
|
-
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
61
|
-
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
62
|
-
*/
|
|
63
|
-
defaultValue: z.ZodOptional<z.ZodString>;
|
|
64
|
-
name: z.ZodString;
|
|
65
|
-
label: z.ZodOptional<z.ZodString>;
|
|
66
|
-
required: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
-
order: z.ZodOptional<z.ZodNumber>;
|
|
68
|
-
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types.js").ConditionalRule, import("../types.js").ConditionalRule>>>;
|
|
69
|
-
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
70
|
-
}, z.core.$strict>;
|
|
71
|
-
/**
|
|
72
|
-
* Color field configuration type
|
|
73
|
-
* This is a plain object that can be serialized and used anywhere
|
|
74
|
-
* The build() method allows creating a ColorField instance when needed
|
|
75
|
-
*/
|
|
76
|
-
export type ColorFieldConfig = z.infer<typeof colorFieldConfigSchema>;
|
|
77
|
-
/**
|
|
78
|
-
* Helper function to create a color field configuration
|
|
79
|
-
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
80
|
-
* @param field
|
|
81
|
-
*/
|
|
82
|
-
export declare function colorField(field: z.infer<typeof optionsSchema>): ColorFieldConfig;
|
|
83
|
-
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
|
+
* The default value of the field.
|
|
8
|
+
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
9
|
+
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
10
|
+
*/
|
|
11
|
+
defaultValue: z.ZodOptional<z.ZodString>;
|
|
12
|
+
}, z.core.$strict>;
|
|
13
|
+
type Config = z.infer<typeof configSchema>;
|
|
14
|
+
export declare class ColorField extends Field<'color', Config> {
|
|
15
|
+
static readonly [entityKind]: string;
|
|
16
|
+
private readonly _defaultValue;
|
|
17
|
+
value: string | undefined;
|
|
18
|
+
constructor(config: BaseFieldConfig<Config>);
|
|
19
|
+
/**
|
|
20
|
+
* Get the value of the field
|
|
21
|
+
*/
|
|
22
|
+
getValue(): string | undefined;
|
|
23
|
+
exportForClient(): {
|
|
24
|
+
type: "color";
|
|
25
|
+
name: string;
|
|
26
|
+
label: string;
|
|
27
|
+
required: boolean;
|
|
28
|
+
conditionalFields: import("../types/index.js").ConditionalField[];
|
|
29
|
+
readonly: boolean;
|
|
30
|
+
defaultValue: any;
|
|
31
|
+
value: any;
|
|
32
|
+
};
|
|
33
|
+
checkRequired(): void;
|
|
34
|
+
hasSqlNameAndValue(): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Prepare the field for submission
|
|
37
|
+
*/
|
|
38
|
+
prepareForSubmission(): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
export type ColorFieldClientConfig = ReturnType<ColorField['exportForClient']>;
|
|
41
|
+
declare const optionsSchema: z.ZodObject<{
|
|
42
|
+
/**
|
|
43
|
+
* The default value of the field.
|
|
44
|
+
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
45
|
+
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
46
|
+
*/
|
|
47
|
+
defaultValue: z.ZodOptional<z.ZodString>;
|
|
48
|
+
name: z.ZodString;
|
|
49
|
+
label: z.ZodOptional<z.ZodString>;
|
|
50
|
+
required: z.ZodOptional<z.ZodBoolean>;
|
|
51
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
|
|
53
|
+
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
54
|
+
}, z.core.$strict>;
|
|
55
|
+
declare const colorFieldConfigSchema: z.ZodObject<{
|
|
56
|
+
type: z.ZodLiteral<"color">;
|
|
57
|
+
build: z.ZodFunction<z.core.$ZodFunctionArgs, z.ZodCustom<ColorField, ColorField>>;
|
|
58
|
+
/**
|
|
59
|
+
* The default value of the field.
|
|
60
|
+
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
61
|
+
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
62
|
+
*/
|
|
63
|
+
defaultValue: z.ZodOptional<z.ZodString>;
|
|
64
|
+
name: z.ZodString;
|
|
65
|
+
label: z.ZodOptional<z.ZodString>;
|
|
66
|
+
required: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
68
|
+
conditionalRules: z.ZodOptional<z.ZodArray<z.ZodCustom<import("../types/index.js").ConditionalRule, import("../types/index.js").ConditionalRule>>>;
|
|
69
|
+
adminGenerated: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<true>, z.ZodLiteral<false>, z.ZodLiteral<"readonly">]>>;
|
|
70
|
+
}, z.core.$strict>;
|
|
71
|
+
/**
|
|
72
|
+
* Color field configuration type
|
|
73
|
+
* This is a plain object that can be serialized and used anywhere
|
|
74
|
+
* The build() method allows creating a ColorField instance when needed
|
|
75
|
+
*/
|
|
76
|
+
export type ColorFieldConfig = z.infer<typeof colorFieldConfigSchema>;
|
|
77
|
+
/**
|
|
78
|
+
* Helper function to create a color field configuration
|
|
79
|
+
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
80
|
+
* @param field
|
|
81
|
+
*/
|
|
82
|
+
export declare function colorField(field: z.infer<typeof optionsSchema>): ColorFieldConfig;
|
|
83
|
+
export {};
|
|
84
84
|
//# sourceMappingURL=color.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/core/fields/color.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/core/fields/color.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;AAExB,QAAA,MAAM,YAAY;IACd;;;;OAIG;;kBAEL,CAAA;AAEF,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAE1C,qBAAa,UAAW,SAAQ,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC;IAClD,gBAAyB,CAAC,UAAU,CAAC,EAAE,MAAM,CAAe;IAC5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;gBACtB,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;IAO3C;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,SAAS;IAIrB,eAAe;;;;;;;;;;IAMxB,aAAa;IAWJ,kBAAkB,IAAI,OAAO;IAOtC;;OAEG;IACG,oBAAoB;CAQ7B;AAED,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAE9E,QAAA,MAAM,aAAa;IAnEf;;;;OAIG;;;;;;;;kBAkEL,CAAA;AAEF,QAAA,MAAM,sBAAsB;;;IAxExB;;;;OAIG;;;;;;;;kBAwEL,CAAA;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,gBAAgB,CAmBjF"}
|
|
@@ -1,91 +1,91 @@
|
|
|
1
|
-
import { Field, baseFieldConfigSchema } from
|
|
2
|
-
import { entityKind } from
|
|
3
|
-
import * as z from 'zod';
|
|
4
|
-
const configSchema = z.strictObject({
|
|
5
|
-
/**
|
|
6
|
-
* The default value of the field.
|
|
7
|
-
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
8
|
-
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
9
|
-
*/
|
|
10
|
-
defaultValue: z.string().optional().describe('The default value of the field'),
|
|
11
|
-
});
|
|
12
|
-
export class ColorField extends Field {
|
|
13
|
-
static [entityKind] = 'ColorField';
|
|
14
|
-
_defaultValue;
|
|
15
|
-
value;
|
|
16
|
-
constructor(config) {
|
|
17
|
-
super(config, 'color');
|
|
18
|
-
this.value = config.defaultValue;
|
|
19
|
-
this._defaultValue = config.defaultValue;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Get the value of the field
|
|
23
|
-
*/
|
|
24
|
-
getValue() {
|
|
25
|
-
return this.value;
|
|
26
|
-
}
|
|
27
|
-
exportForClient() {
|
|
28
|
-
return {
|
|
29
|
-
...super.exportForClient(),
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
checkRequired() {
|
|
33
|
-
/**
|
|
34
|
-
* Check if the field is required
|
|
35
|
-
*/
|
|
36
|
-
if (this.required) {
|
|
37
|
-
if (!this.value || this.value.trim().length === 0) {
|
|
38
|
-
throw new Error(`Field ${this.label} is required`);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
hasSqlNameAndValue() {
|
|
43
|
-
/**
|
|
44
|
-
* Include the field in the SQL if it is admin-generated, or not admin-generated but has a default value
|
|
45
|
-
*/
|
|
46
|
-
return this.adminGenerated === true || this._defaultValue !== undefined;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Prepare the field for submission
|
|
50
|
-
*/
|
|
51
|
-
async prepareForSubmission() {
|
|
52
|
-
/**
|
|
53
|
-
* Check if the value represents a color
|
|
54
|
-
*/
|
|
55
|
-
if (this.value && !/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(this.value)) {
|
|
56
|
-
throw new Error('Invalid color, please provide a valid hex color');
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
const optionsSchema = z.strictObject({
|
|
61
|
-
...baseFieldConfigSchema.shape,
|
|
62
|
-
...configSchema.shape,
|
|
63
|
-
});
|
|
64
|
-
const colorFieldConfigSchema = z.strictObject({
|
|
65
|
-
...optionsSchema.shape,
|
|
66
|
-
type: z.literal('color').describe('The type of the field'),
|
|
67
|
-
build: z.function().output(z.instanceof(ColorField)).describe('Build a ColorField instance from this config'),
|
|
68
|
-
});
|
|
69
|
-
/**
|
|
70
|
-
* Helper function to create a color field configuration
|
|
71
|
-
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
72
|
-
* @param field
|
|
73
|
-
*/
|
|
74
|
-
export function colorField(field) {
|
|
75
|
-
/**
|
|
76
|
-
* Validate the field config
|
|
77
|
-
*/
|
|
78
|
-
const result = optionsSchema.safeParse(field);
|
|
79
|
-
if (!result.success) {
|
|
80
|
-
throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
|
|
81
|
-
}
|
|
82
|
-
const config = {
|
|
83
|
-
...field,
|
|
84
|
-
type: 'color',
|
|
85
|
-
build() {
|
|
86
|
-
// Use the original field config directly (it doesn't have build() method)
|
|
87
|
-
return new ColorField(field);
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
return config;
|
|
91
|
-
}
|
|
1
|
+
import { Field, baseFieldConfigSchema } from './field.js';
|
|
2
|
+
import { entityKind } from '../helpers/index.js';
|
|
3
|
+
import * as z from 'zod';
|
|
4
|
+
const configSchema = z.strictObject({
|
|
5
|
+
/**
|
|
6
|
+
* The default value of the field.
|
|
7
|
+
* If set, the field will be pre-populated with this value when the form is loaded.
|
|
8
|
+
* If `adminGenerated` is not true, the field will be included when submitting the form with this value.
|
|
9
|
+
*/
|
|
10
|
+
defaultValue: z.string().optional().describe('The default value of the field'),
|
|
11
|
+
});
|
|
12
|
+
export class ColorField extends Field {
|
|
13
|
+
static [entityKind] = 'ColorField';
|
|
14
|
+
_defaultValue;
|
|
15
|
+
value;
|
|
16
|
+
constructor(config) {
|
|
17
|
+
super(config, 'color');
|
|
18
|
+
this.value = config.defaultValue;
|
|
19
|
+
this._defaultValue = config.defaultValue;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get the value of the field
|
|
23
|
+
*/
|
|
24
|
+
getValue() {
|
|
25
|
+
return this.value;
|
|
26
|
+
}
|
|
27
|
+
exportForClient() {
|
|
28
|
+
return {
|
|
29
|
+
...super.exportForClient(),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
checkRequired() {
|
|
33
|
+
/**
|
|
34
|
+
* Check if the field is required
|
|
35
|
+
*/
|
|
36
|
+
if (this.required) {
|
|
37
|
+
if (!this.value || this.value.trim().length === 0) {
|
|
38
|
+
throw new Error(`Field ${this.label} is required`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
hasSqlNameAndValue() {
|
|
43
|
+
/**
|
|
44
|
+
* Include the field in the SQL if it is admin-generated, or not admin-generated but has a default value
|
|
45
|
+
*/
|
|
46
|
+
return this.adminGenerated === true || this._defaultValue !== undefined;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Prepare the field for submission
|
|
50
|
+
*/
|
|
51
|
+
async prepareForSubmission() {
|
|
52
|
+
/**
|
|
53
|
+
* Check if the value represents a color
|
|
54
|
+
*/
|
|
55
|
+
if (this.value && !/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(this.value)) {
|
|
56
|
+
throw new Error('Invalid color, please provide a valid hex color');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
const optionsSchema = z.strictObject({
|
|
61
|
+
...baseFieldConfigSchema.shape,
|
|
62
|
+
...configSchema.shape,
|
|
63
|
+
});
|
|
64
|
+
const colorFieldConfigSchema = z.strictObject({
|
|
65
|
+
...optionsSchema.shape,
|
|
66
|
+
type: z.literal('color').describe('The type of the field'),
|
|
67
|
+
build: z.function().output(z.instanceof(ColorField)).describe('Build a ColorField instance from this config'),
|
|
68
|
+
});
|
|
69
|
+
/**
|
|
70
|
+
* Helper function to create a color field configuration
|
|
71
|
+
* Returns a config object with a build() method that can be serialized and used anywhere
|
|
72
|
+
* @param field
|
|
73
|
+
*/
|
|
74
|
+
export function colorField(field) {
|
|
75
|
+
/**
|
|
76
|
+
* Validate the field config
|
|
77
|
+
*/
|
|
78
|
+
const result = optionsSchema.safeParse(field);
|
|
79
|
+
if (!result.success) {
|
|
80
|
+
throw new Error(`[Field: ${field.name}]: ${z.prettifyError(result.error)}`);
|
|
81
|
+
}
|
|
82
|
+
const config = {
|
|
83
|
+
...field,
|
|
84
|
+
type: 'color',
|
|
85
|
+
build() {
|
|
86
|
+
// Use the original field config directly (it doesn't have build() method)
|
|
87
|
+
return new ColorField(field);
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
return config;
|
|
91
|
+
}
|