@gettersethya/mira-collection 0.1.0-alpha.3 → 0.1.0-alpha.4

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.
@@ -1,4 +1,4 @@
1
- import type { AnyCollectionDef, EmailConstraintKind, FieldDef, IntegerConstraintKind, NumberConstraintKind, SimpleConstraintKind, TextConstraintKind } from "./types.js";
1
+ import type { AnyCollectionDef, EmailConstraintKind, FieldDef, IntegerConstraintKind, LiteralTextConstraintKind, NumberConstraintKind, SimpleConstraintKind, TextConstraintKind } from "./types.js";
2
2
  /** Common options shared by all field types. */
3
3
  type BaseFieldOptions = {
4
4
  /** Alternative field name in the database (defaults to the key in the fields map). */
@@ -61,6 +61,40 @@ export declare const Field: {
61
61
  viewOnly: true;
62
62
  };
63
63
  };
64
+ /**
65
+ * A text field restricted to a fixed set of literal string values.
66
+ * Stored as `TEXT` in SQLite. The server rejects values not in the
67
+ * `literal` array on create and update operations.
68
+ *
69
+ * The TypeScript type narrows to the literal union for type-safe
70
+ * filter expressions and client SDK usage.
71
+ *
72
+ * @param opts.literal - Required: the allowed string values (automatically narrowed via `const` type parameter)
73
+ * @param opts.error - Callback for custom validation error messages
74
+ *
75
+ * @example
76
+ * Field.literalText({ literal: ["admin", "agent", "readonly"] })
77
+ * Field.literalText({ literal: ["draft", "published"], default: "draft" })
78
+ */
79
+ literalText: <const L extends readonly string[], O extends Omit<BaseFieldOptions, "default"> & {
80
+ default?: L[number];
81
+ }>(opts: {
82
+ literal: L;
83
+ } & O & {
84
+ error?: (kind: LiteralTextConstraintKind) => string | undefined;
85
+ }) => FieldDef & {
86
+ kind: "literalText";
87
+ literal: L;
88
+ _literal: L;
89
+ } & O & {
90
+ view(): FieldDef & {
91
+ kind: "literalText";
92
+ literal: L;
93
+ _literal: L;
94
+ } & O & {
95
+ viewOnly: true;
96
+ };
97
+ };
64
98
  /**
65
99
  * A floating-point number field with optional min/max constraints.
66
100
  * Stored as `REAL` in SQLite.
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/collection/field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/collection/field.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,32 @@ export const Field = {
44
44
  * Field.text({ minLength: 3, maxLength: 100, default: "untitled" })
45
45
  */
46
46
  text: (opts) => makeField("text", opts),
47
+ /**
48
+ * A text field restricted to a fixed set of literal string values.
49
+ * Stored as `TEXT` in SQLite. The server rejects values not in the
50
+ * `literal` array on create and update operations.
51
+ *
52
+ * The TypeScript type narrows to the literal union for type-safe
53
+ * filter expressions and client SDK usage.
54
+ *
55
+ * @param opts.literal - Required: the allowed string values (automatically narrowed via `const` type parameter)
56
+ * @param opts.error - Callback for custom validation error messages
57
+ *
58
+ * @example
59
+ * Field.literalText({ literal: ["admin", "agent", "readonly"] })
60
+ * Field.literalText({ literal: ["draft", "published"], default: "draft" })
61
+ */
62
+ literalText: (opts) => {
63
+ const { literal, ...rest } = opts;
64
+ const def = {
65
+ _tag: "FieldDef",
66
+ kind: "literalText",
67
+ literal,
68
+ _literal: literal,
69
+ ...rest
70
+ };
71
+ return withView(def);
72
+ },
47
73
  /**
48
74
  * A floating-point number field with optional min/max constraints.
49
75
  * Stored as `REAL` in SQLite.
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/collection/field.ts"],"names":[],"mappings":"AAyBA,0GAA0G;AAC1G,gGAAgG;AAChG,SAAS,QAAQ,CAAqB,GAAM;IAC1C,MAAM,aAAa,GAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAC5D,SAAS,IAAI;QACX,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,CAAC,CAAA;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AACzC,CAAC;AAED,2GAA2G;AAC3G,SAAS,SAAS,CAChB,IAAO,EACP,IAAQ;IAER,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,UAAwB,EAAE,IAAI,EAAE,GAAG,IAAI,EAAgC,CAAA;IAC3F,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB;;;;;;;;;;;;;;;;;OAiBG;IACH,IAAI,EAAE,CACJ,IAAuE,EACvE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,MAAM,EAAE,CACN,IAAyE,EACzE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC;IAE9B;;;;;;;;;OASG;IACH,OAAO,EAAE,CACP,IAA0E,EAC1E,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC;IAE/B;;;;;;;;;OASG;IACH,OAAO,EAAE,CACP,IAAyE,EACzE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC;IAE/B;;;;;;;OAOG;IACH,IAAI,EAAE,CACJ,IAAyE,EACzE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAE5B;;;;;;;OAOG;IACH,KAAK,EAAE,CACL,IAAwE,EACxE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC;IAE7B;;;;;;;OAOG;IACH,IAAI,EAAE,CACJ,IAAyE,EACzE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,KAAK,EAAE,CAAC,IAAuB,EAAY,EAAE,CAAC,CAAC;QAC7C,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;QACb,GAAG,IAAI;KACR,CAAC;IAEF;;;;;;;;;;;;;;;;;OAiBG;IACH,IAAI,EAAE,CACJ,IAAyE,EACzE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAE5B;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,EAAE,CACR,UAAa,EACb,IAA8I,EAC9I,EAAE;QACF,MAAM,WAAW,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAA;QACvC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAA2B,CAAA;QAC9E,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,UAAwB;YAC9B,IAAI,EAAE,UAAwB;YAC9B,gBAAgB,EAAE,UAAU,CAAC,IAAI;YACjC,WAAW;YACX,OAAO,EAAE,UAAU;YACnB,GAAG,SAAS;SACsC,CAAA;QACpD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;IACtB,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/collection/field.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,6 @@ export { Bytes } from "./bytes.js";
17
17
  export { ValidationError } from "./errors.js";
18
18
  export { Field } from "./field.js";
19
19
  export { Index } from "./index-builder.js";
20
- export type { AnyCollectionDef, CollectionSchema, FieldDef, FieldsMap } from "./types.js";
20
+ export type { AnyCollectionDef, CollectionSchema, FieldDef, FieldsMap, LiteralTextConstraintKind } from "./types.js";
21
21
  export { ViewCollection } from "./view.js";
22
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/collection/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/collection/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AACpH,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA"}
@@ -80,6 +80,12 @@ function fieldToProperty(field) {
80
80
  ...(field.minLength !== undefined ? { minLength: field.minLength } : {}),
81
81
  ...(field.maxLength !== undefined ? { maxLength: field.maxLength } : {})
82
82
  };
83
+ case "literalText":
84
+ return {
85
+ type: "string",
86
+ "x-kind": "literalText",
87
+ ...(field.literal !== undefined ? { "x-literal": field.literal } : {})
88
+ };
83
89
  case "number":
84
90
  return {
85
91
  type: "number",
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../../src/collection/serialize.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,GAAuB;IACtC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,IAAI;CACjB,CAAA;AAED,MAAM,cAAc,GAAuB;IACzC,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;CACjB,CAAA;AAED,MAAM,gBAAgB,GAAuB;IAC3C,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,IAAI;CACjB,CAAA;AAED,MAAM,gBAAgB,GAAuB;IAC3C,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,IAAI;CACjB,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAO,EACP,KAAa,EACb,MAAiB,EACjB,OAKC;IAED,MAAM,QAAQ,GAAsD,EAAE,CAAA;IACtE,MAAM,QAAQ,GAAkB,EAAE,CAAA;IAClC,MAAM,UAAU,GAAuC,EAAE,CAAA;IAEzD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,GAAG,CAAA;QAE9B,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;QAEnC,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC5D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACjD,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAClD,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IAChE,CAAC;IAED,MAAM,MAAM,GAAkD;QAC5D,mBAAmB,EAAE,IAAI;QACzB,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;YAC/B,GAAG,UAAU;YACb,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrF;QACD,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7C,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,+EAA+E;AAC/E,SAAS,eAAe,CAAC,KAAe;IACtC,MAAM,IAAI,GAAuB,CAAC,GAAG,EAAE;QACrC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzE,CAAA;YACH,KAAK,QAAQ;gBACX,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1D,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC3D,CAAA;YACH,KAAK,SAAS;gBACZ,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1D,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC3D,CAAA;YACH,KAAK,SAAS;gBACZ,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAA;YACH,KAAK,OAAO;gBACV,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;YAC5C,KAAK,MAAM;gBACT,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;YAC7C,KAAK,MAAM;gBACT,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;YAC7B,KAAK,UAAU;gBACb,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,UAAU;oBACpB,cAAc,EAAE,KAAK,CAAC,gBAAiB;oBACvC,SAAS,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;iBACrC,CAAA;YACH,KAAK,OAAO;gBACV,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;YACjE,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,MAAM;oBAChB,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5E,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7D,CAAA;QACL,CAAC;IACD,CAAC,CAAC,EAAE,CAAA;IACJ,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../../src/collection/serialize.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Passed to the `error` callback on `FieldDef` so callers can return
4
4
  * a per-constraint custom message.
5
5
  */
6
- export type ConstraintKind = "type" | "required" | "minLength" | "maxLength" | "email" | "minimum" | "maximum" | "int";
6
+ export type ConstraintKind = "type" | "required" | "minLength" | "maxLength" | "email" | "minimum" | "maximum" | "int" | "literal";
7
7
  /** Constraint kinds that can fire on a `Field.text()` field. */
8
8
  export type TextConstraintKind = "type" | "required" | "minLength" | "maxLength";
9
9
  /** Constraint kinds that can fire on a `Field.email()` field. */
@@ -12,10 +12,12 @@ export type EmailConstraintKind = "type" | "required" | "email";
12
12
  export type NumberConstraintKind = "type" | "required" | "minimum" | "maximum";
13
13
  /** Constraint kinds that can fire on a `Field.integer()` field. */
14
14
  export type IntegerConstraintKind = "type" | "required" | "int" | "minimum" | "maximum";
15
+ /** Constraint kinds that can fire on a `Field.literalText()` field. */
16
+ export type LiteralTextConstraintKind = "type" | "required" | "literal";
15
17
  /** Constraint kinds that can fire on simple fields (boolean, date, json, file, relation). */
16
18
  export type SimpleConstraintKind = "type" | "required";
17
19
  /** Supported field kinds that define the data type of a collection field. */
18
- export type FieldKind = "text" | "number" | "integer" | "boolean" | "email" | "date" | "json" | "relation" | "file" | "seqId";
20
+ export type FieldKind = "text" | "literalText" | "number" | "integer" | "boolean" | "email" | "date" | "json" | "relation" | "file" | "seqId";
19
21
  /**
20
22
  * Describes a single field in a collection definition.
21
23
  * Created via `Field.*()` builders — never constructed directly.
@@ -42,6 +44,8 @@ export type FieldDef = {
42
44
  mimeTypes?: Array<string>;
43
45
  viewOnly?: boolean;
44
46
  protected?: boolean;
47
+ literal?: readonly string[];
48
+ _literal?: readonly string[];
45
49
  _target?: AnyCollectionDef;
46
50
  error?(kind: ConstraintKind): string | undefined;
47
51
  };
@@ -74,7 +78,7 @@ export type JsonSchemaProperty = {
74
78
  maximum?: number;
75
79
  minLength?: number;
76
80
  maxLength?: number;
77
- "x-kind"?: "date" | "json" | "relation" | "file" | "seqId";
81
+ "x-kind"?: "date" | "json" | "relation" | "file" | "seqId" | "literalText";
78
82
  "x-collection"?: string;
79
83
  "x-field"?: string;
80
84
  "x-maxSize"?: number;
@@ -83,6 +87,7 @@ export type JsonSchemaProperty = {
83
87
  "x-system"?: boolean;
84
88
  "x-hidden"?: boolean;
85
89
  "x-view-only"?: boolean;
90
+ "x-literal"?: ReadonlyArray<string>;
86
91
  };
87
92
  /**
88
93
  * A record mapping field names to their `FieldDef` definitions.
@@ -104,6 +109,7 @@ export type AnyCollectionDef = {
104
109
  /** Maps each FieldKind to its corresponding TypeScript scalar type. */
105
110
  export type FieldKindToType = {
106
111
  text: string;
112
+ literalText: string;
107
113
  number: number;
108
114
  integer: number;
109
115
  boolean: boolean;
@@ -115,5 +121,7 @@ export type FieldKindToType = {
115
121
  seqId: number;
116
122
  };
117
123
  /** Infers the TypeScript value type for a given FieldDef. */
118
- export type InferFieldValue<T extends FieldDef> = FieldKindToType[T["kind"]];
124
+ export type InferFieldValue<T extends FieldDef> = T["kind"] extends "literalText" ? T extends {
125
+ _literal: readonly (infer V)[];
126
+ } ? V : string : FieldKindToType[T["kind"]];
119
127
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collection/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collection/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,UAAU,GACV,WAAW,GACX,WAAW,GACX,OAAO,GACP,SAAS,GACT,SAAS,GACT,KAAK,GACL,SAAS,CAAA;AAEb,gEAAgE;AAChE,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,CAAA;AAEhF,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAA;AAE/D,kEAAkE;AAClE,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;AAE9E,mEAAmE;AACnE,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvF,uEAAuE;AACvE,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;AAEvE,6FAA6F;AAC7F,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,UAAU,CAAA;AAEtD,6EAA6E;AAC7E,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,aAAa,GACb,QAAQ,GACR,SAAS,GACT,SAAS,GACT,OAAO,GACP,MAAM,GACN,MAAM,GACN,UAAU,GACV,MAAM,GACN,OAAO,CAAA;AAEX;;;;;;;GAOG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3B,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,KAAK,CAAC,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAAA;CACjD,CAAA;AAED,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACrB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE9C;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mBAAmB,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;IAC7C,WAAW,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,QAAQ,CAAA;IACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IAC9C,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CACzB,CAAA;AAED,oEAAoE;AACpE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;IAClD,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,CAAA;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACpC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AAEhD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAA;IACjB,MAAM,EAAE,gBAAgB,CAAA;CACzB,CAAA;AAED,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAM,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAI,MAAM,CAAA;IAChB,OAAO,EAAG,MAAM,CAAA;IAChB,OAAO,EAAG,OAAO,CAAA;IACjB,KAAK,EAAK,MAAM,CAAA;IAChB,IAAI,EAAM,MAAM,CAAA;IAChB,IAAI,EAAM,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAM,MAAM,CAAA;IAChB,KAAK,EAAK,MAAM,CAAA;CACjB,CAAA;AAED,6DAA6D;AAC7D,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,IAC5C,CAAC,CAAC,MAAM,CAAC,SAAS,aAAa,GAC3B,CAAC,SAAS;IAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;CAAE,GAAG,CAAC,GAAG,MAAM,GACzD,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA"}
@@ -67,6 +67,31 @@ describe("Field.json", () => {
67
67
  expect(f).toMatchObject({ _tag: "FieldDef", kind: "json" });
68
68
  });
69
69
  });
70
+ describe("Field.literalText", () => {
71
+ it("stores literal values and kind", () => {
72
+ const f = Field.literalText({ literal: ["a", "b"] });
73
+ expect(f).toMatchObject({ _tag: "FieldDef", kind: "literalText", literal: ["a", "b"], _literal: ["a", "b"] });
74
+ });
75
+ it("returns ViewableFieldDef (has .view())", () => {
76
+ const f = Field.literalText({ literal: ["x"] });
77
+ expect(typeof f.view).toBe("function");
78
+ const viewed = f.view();
79
+ expect(viewed.viewOnly).toBe(true);
80
+ });
81
+ it("preserves required: false", () => {
82
+ const f = Field.literalText({ literal: ["a", "b"], required: false });
83
+ expect(f.required).toBe(false);
84
+ });
85
+ it("error callback is preserved", () => {
86
+ const f = Field.literalText({
87
+ literal: ["a", "b"],
88
+ error: (k) => k === "literal" ? "invalid role" : undefined
89
+ });
90
+ expect(typeof f.error).toBe("function");
91
+ expect(f.error("literal")).toBe("invalid role");
92
+ expect(f.error("type")).toBeUndefined();
93
+ });
94
+ });
70
95
  describe("Field.file", () => {
71
96
  it("defaults", () => {
72
97
  const f = Field.file();
@@ -1 +1 @@
1
- {"version":3,"file":"field.test.js","sourceRoot":"","sources":["../../../tests/collection/field.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field.test.js","sourceRoot":"","sources":["../../../tests/collection/field.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAG7C,SAAS,cAAc,CAAC,IAAY,EAAE,MAAiB;IACrD,OAAO;QACL,IAAI;QACJ,MAAM;QACN,MAAM,EAAE;YACN,mBAAmB,EAAE,MAAM;YAC3B,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF,CAAA;AACH,CAAC;AAED,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACtB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3D,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;QAClC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAA;IAClC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACtD,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IACzE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAA;QACxB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QAC5C,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;QACzB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;QACzB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC1C,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACtB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACtB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QACpD,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IAC/G,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC/C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;QACvB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;QACrE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC;YAC1B,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YACnB,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;SAC3D,CAAC,CAAA;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACvC,MAAM,CAAC,CAAC,CAAC,KAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAChD,MAAM,CAAC,CAAC,CAAC,KAAM,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACtB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QACjE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACpF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;QAC5D,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAA;QAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QAC/C,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC7B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACpD,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,GAAG,GAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAA;QACpI,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/B,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,CAAE,CAAS,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;QACvC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;QACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAC/D,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAC/D,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -100,6 +100,34 @@ describe("serialize", () => {
100
100
  expect(schema.properties.tags).toEqual({ "x-kind": "json" });
101
101
  expect(schema.properties.tags).not.toHaveProperty("type");
102
102
  });
103
+ it("literalText field serializes x-kind and x-literal", () => {
104
+ const schema = toJSONSchema("base", "users", {
105
+ role: Field.literalText({ literal: ["admin", "agent"] })
106
+ }, {});
107
+ expect(schema.properties.role).toEqual({
108
+ type: "string",
109
+ "x-kind": "literalText",
110
+ "x-literal": ["admin", "agent"]
111
+ });
112
+ });
113
+ it("literalText field with .view() adds x-view-only", () => {
114
+ const schema = toJSONSchema("view", "v", {
115
+ id: Field.text().view(),
116
+ seqId: Field.integer().view(),
117
+ role: Field.literalText({ literal: ["a", "b"] }).view()
118
+ }, { viewQuery: "SELECT id, seqId, role FROM users" });
119
+ expect(schema.properties.role["x-view-only"]).toBe(true);
120
+ expect(schema.properties.role["x-kind"]).toBe("literalText");
121
+ expect(schema.properties.role["x-literal"]).toEqual(["a", "b"]);
122
+ });
123
+ it("round-trip through toJSONSchema preserves x-literal", () => {
124
+ const schema = toJSONSchema("base", "t", {
125
+ status: Field.literalText({ literal: ["draft", "published", "archived"] })
126
+ }, {});
127
+ expect(schema.properties.status["x-literal"]).toEqual(["draft", "published", "archived"]);
128
+ expect(schema.properties.status["x-kind"]).toBe("literalText");
129
+ expect(schema.properties.status.type).toBe("string");
130
+ });
103
131
  it("date field produces x-kind date", () => {
104
132
  const schema = toJSONSchema("base", "posts", {
105
133
  createdAt: Field.date()
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.test.js","sourceRoot":"","sources":["../../../tests/collection/serialize.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serialize.test.js","sourceRoot":"","sources":["../../../tests/collection/serialize.test.ts"],"names":[],"mappings":"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"}