@rakun-kit/core 1.4.8 → 1.4.9
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/README.md +729 -711
- package/dist/cjs/api/routes/web/page.js +4 -1
- package/dist/cjs/api/routes/web/page.js.map +1 -1
- package/dist/cjs/api/utils/iteratorVisibility.js +68 -0
- package/dist/cjs/api/utils/iteratorVisibility.js.map +1 -0
- package/dist/cjs/client.js +4 -1
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/lib/fields/List.js +17 -2
- package/dist/cjs/lib/fields/List.js.map +1 -1
- package/dist/esm/api/routes/web/page.d.ts.map +1 -1
- package/dist/esm/api/routes/web/page.js +4 -1
- package/dist/esm/api/routes/web/page.js.map +1 -1
- package/dist/esm/api/utils/iteratorVisibility.d.ts +8 -0
- package/dist/esm/api/utils/iteratorVisibility.d.ts.map +1 -0
- package/dist/esm/api/utils/iteratorVisibility.js +63 -0
- package/dist/esm/api/utils/iteratorVisibility.js.map +1 -0
- package/dist/esm/client.d.ts +1 -0
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +1 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/internal-content-types/Backup.d.ts.map +1 -1
- package/dist/esm/internal-content-types/ContentVersion.d.ts.map +1 -1
- package/dist/esm/internal-content-types/LinkedIteratorTemplate.d.ts.map +1 -1
- package/dist/esm/internal-content-types/MfaChallenge.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Migration.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RobotsRule.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Route.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RouteLayoutModule.d.ts.map +1 -1
- package/dist/esm/internal-content-types/SchemaState.d.ts.map +1 -1
- package/dist/esm/internal-content-types/WebAuthnCredential.d.ts.map +1 -1
- package/dist/esm/lib/fields/List.d.ts +12 -0
- package/dist/esm/lib/fields/List.d.ts.map +1 -1
- package/dist/esm/lib/fields/List.js +16 -2
- package/dist/esm/lib/fields/List.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +131 -131
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import z from "zod";
|
|
1
2
|
import { type AnyFieldLike, type DefaultFieldState, type EncodedField, type EncodedFieldUnknown, type FieldLike, type FieldState, type FieldWithModifiers, type InferDb, type InferOutput } from "./Field.js";
|
|
2
3
|
export type Entry<Name extends string = string, F extends AnyFieldLike = AnyFieldLike> = {
|
|
3
4
|
name: Name;
|
|
@@ -10,17 +11,28 @@ export type EncodedListFieldItem = {
|
|
|
10
11
|
export type EncodedListField = EncodedField & {
|
|
11
12
|
fields: EncodedListFieldItem[];
|
|
12
13
|
};
|
|
14
|
+
export declare const IteratorItemVisibilityConditionSchema: z.ZodObject<{
|
|
15
|
+
field: z.ZodString;
|
|
16
|
+
operator: z.ZodEnum<{
|
|
17
|
+
notEmpty: "notEmpty";
|
|
18
|
+
empty: "empty";
|
|
19
|
+
}>;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export type IteratorItemVisibilityCondition = z.infer<typeof IteratorItemVisibilityConditionSchema>;
|
|
13
22
|
export type ListFieldValueItem<S> = {
|
|
14
23
|
name: string;
|
|
15
24
|
value: S;
|
|
25
|
+
visibleWhen?: IteratorItemVisibilityCondition;
|
|
16
26
|
};
|
|
17
27
|
type ListInputValue<Entries extends readonly Entry[]> = Array<{
|
|
18
28
|
name: Entries[number]["name"];
|
|
19
29
|
value: InferDb<Entries[number]["field"]>;
|
|
30
|
+
visibleWhen?: IteratorItemVisibilityCondition;
|
|
20
31
|
}>;
|
|
21
32
|
type ListOutputValue<Entries extends readonly Entry[]> = Array<{
|
|
22
33
|
name: Entries[number]["name"];
|
|
23
34
|
value: InferOutput<Entries[number]["field"]>;
|
|
35
|
+
visibleWhen?: IteratorItemVisibilityCondition;
|
|
24
36
|
}>;
|
|
25
37
|
export type ListMeta<Entries extends readonly Entry[] = readonly Entry[]> = {
|
|
26
38
|
type: "List";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/lib/fields/List.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/lib/fields/List.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import z from "zod";
|
|
2
2
|
import { createField, defaultFieldState, withFieldModifiers, } from "./Field.js";
|
|
3
3
|
import { Id } from "../utils/id.js";
|
|
4
|
+
export const IteratorItemVisibilityConditionSchema = z.object({
|
|
5
|
+
field: z.string().trim().min(1),
|
|
6
|
+
operator: z.enum(["notEmpty", "empty"]),
|
|
7
|
+
});
|
|
4
8
|
export function listField(fields) {
|
|
5
9
|
return makeListField({ fields, ui: "List" }, defaultFieldState);
|
|
6
10
|
}
|
|
@@ -18,7 +22,7 @@ export function makeListField(options, state) {
|
|
|
18
22
|
schemas: {
|
|
19
23
|
input: () => buildListDbSchema(options.fields, options.ui),
|
|
20
24
|
db: () => buildListDbSchema(options.fields, options.ui),
|
|
21
|
-
output: () => buildListOutputSchema(options.fields),
|
|
25
|
+
output: () => buildListOutputSchema(options.fields, options.ui),
|
|
22
26
|
},
|
|
23
27
|
});
|
|
24
28
|
field.fields = options.fields;
|
|
@@ -32,6 +36,11 @@ function buildListDbSchema(fields, ui) {
|
|
|
32
36
|
return z.array(z.object({
|
|
33
37
|
name: z.string(),
|
|
34
38
|
value: unionSchemas(valueSchemas),
|
|
39
|
+
...(ui === "Iterator"
|
|
40
|
+
? {
|
|
41
|
+
visibleWhen: IteratorItemVisibilityConditionSchema.optional(),
|
|
42
|
+
}
|
|
43
|
+
: {}),
|
|
35
44
|
}));
|
|
36
45
|
}
|
|
37
46
|
function getListDbValueSchema(entry, ui) {
|
|
@@ -54,11 +63,16 @@ function getListDbValueSchema(entry, ui) {
|
|
|
54
63
|
}
|
|
55
64
|
return schema;
|
|
56
65
|
}
|
|
57
|
-
function buildListOutputSchema(fields) {
|
|
66
|
+
function buildListOutputSchema(fields, ui) {
|
|
58
67
|
const valueSchemas = fields.map((entry) => entry.field.getOutputSchema());
|
|
59
68
|
return z.array(z.object({
|
|
60
69
|
name: z.string(),
|
|
61
70
|
value: unionSchemas(valueSchemas),
|
|
71
|
+
...(ui === "Iterator"
|
|
72
|
+
? {
|
|
73
|
+
visibleWhen: IteratorItemVisibilityConditionSchema.optional(),
|
|
74
|
+
}
|
|
75
|
+
: {}),
|
|
62
76
|
}));
|
|
63
77
|
}
|
|
64
78
|
function unionSchemas(schemas) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"List.js","sourceRoot":"","sources":["../../../../src/lib/fields/List.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EACL,WAAW,EACX,iBAAiB,EAWjB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"List.js","sourceRoot":"","sources":["../../../../src/lib/fields/List.ts"],"names":[],"mappings":"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"}
|