shapedef 1.0.19 → 1.0.21

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 (56) hide show
  1. package/dist/cjs/index.d.ts +1 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +1 -0
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/shape.d.ts +8 -0
  6. package/dist/cjs/shape.d.ts.map +1 -1
  7. package/dist/cjs/shape.js +8 -0
  8. package/dist/cjs/shape.js.map +1 -1
  9. package/dist/cjs/turing/evaluate.d.ts +23 -0
  10. package/dist/cjs/turing/evaluate.d.ts.map +1 -0
  11. package/dist/cjs/turing/evaluate.js +195 -0
  12. package/dist/cjs/turing/evaluate.js.map +1 -0
  13. package/dist/cjs/turing/index.d.ts +4 -0
  14. package/dist/cjs/turing/index.d.ts.map +1 -0
  15. package/dist/cjs/turing/index.js +20 -0
  16. package/dist/cjs/turing/index.js.map +1 -0
  17. package/dist/cjs/turing/op.d.ts +5 -0
  18. package/dist/cjs/turing/op.d.ts.map +1 -0
  19. package/dist/cjs/turing/op.js +3 -0
  20. package/dist/cjs/turing/op.js.map +1 -0
  21. package/dist/cjs/turing/turing.d.ts +59 -0
  22. package/dist/cjs/turing/turing.d.ts.map +1 -0
  23. package/dist/cjs/turing/turing.js +75 -0
  24. package/dist/cjs/turing/turing.js.map +1 -0
  25. package/dist/esm/index.d.ts +1 -0
  26. package/dist/esm/index.d.ts.map +1 -1
  27. package/dist/esm/index.js +1 -0
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/shape.d.ts +8 -0
  30. package/dist/esm/shape.d.ts.map +1 -1
  31. package/dist/esm/shape.js +8 -0
  32. package/dist/esm/shape.js.map +1 -1
  33. package/dist/esm/turing/evaluate.d.ts +23 -0
  34. package/dist/esm/turing/evaluate.d.ts.map +1 -0
  35. package/dist/esm/turing/evaluate.js +195 -0
  36. package/dist/esm/turing/evaluate.js.map +1 -0
  37. package/dist/esm/turing/index.d.ts +4 -0
  38. package/dist/esm/turing/index.d.ts.map +1 -0
  39. package/dist/esm/turing/index.js +20 -0
  40. package/dist/esm/turing/index.js.map +1 -0
  41. package/dist/esm/turing/op.d.ts +5 -0
  42. package/dist/esm/turing/op.d.ts.map +1 -0
  43. package/dist/esm/turing/op.js +3 -0
  44. package/dist/esm/turing/op.js.map +1 -0
  45. package/dist/esm/turing/turing.d.ts +59 -0
  46. package/dist/esm/turing/turing.d.ts.map +1 -0
  47. package/dist/esm/turing/turing.js +75 -0
  48. package/dist/esm/turing/turing.js.map +1 -0
  49. package/package.json +1 -1
  50. package/src/index.ts +1 -0
  51. package/src/shape.ts +16 -0
  52. package/src/turing/evaluate.test.ts +407 -0
  53. package/src/turing/evaluate.ts +245 -0
  54. package/src/turing/index.ts +3 -0
  55. package/src/turing/op.ts +14 -0
  56. package/src/turing/turing.ts +160 -0
@@ -4,4 +4,5 @@ export * from "./shape-utils";
4
4
  export * from "./inputs";
5
5
  export * from "./translations";
6
6
  export * from "./validation";
7
+ export * from "./turing";
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -20,4 +20,5 @@ __exportStar(require("./shape-utils"), exports);
20
20
  __exportStar(require("./inputs"), exports);
21
21
  __exportStar(require("./translations"), exports);
22
22
  __exportStar(require("./validation"), exports);
23
+ __exportStar(require("./turing"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,qDAAmC;AACnC,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,qDAAmC;AACnC,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,+CAA6B;AAC7B,2CAAyB"}
@@ -5,6 +5,7 @@ export type ShapeAnnotation = {
5
5
  name?: string;
6
6
  title?: string;
7
7
  description?: string;
8
+ label?: string;
8
9
  optional?: boolean;
9
10
  primary?: boolean;
10
11
  unique?: boolean;
@@ -14,6 +15,7 @@ export type ShapeAnnotation = {
14
15
  pattern?: string;
15
16
  uniqueWithin?: boolean;
16
17
  defaultValue?: any;
18
+ meta?: Record<string, any>;
17
19
  foreign?: {
18
20
  shapeName: string;
19
21
  fieldName: string;
@@ -168,6 +170,12 @@ export declare namespace annotate {
168
170
  function named<S extends Shape, Name extends string>(shape: S, name: Name): AnnotateShape<S, {
169
171
  name: Name;
170
172
  }>;
173
+ function labeled<S extends Shape, Label extends string>(shape: S, label: Label): AnnotateShape<S, {
174
+ label: Label;
175
+ }>;
176
+ function meta<S extends Shape, Meta extends Record<string, any>>(shape: S, meta: Meta): AnnotateShape<S, {
177
+ meta: Meta;
178
+ }>;
171
179
  function foreign<S extends Shape, ShapeName extends string, FieldName extends string>(shape: S, shapeName: ShapeName, fieldName: FieldName): AnnotateShape<S, {
172
180
  foreign: {
173
181
  shapeName: ShapeName;
@@ -1 +1 @@
1
- {"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../src/shape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../src/shape.ts"],"names":[],"mappings":"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"}
package/dist/cjs/shape.js CHANGED
@@ -219,6 +219,14 @@ var annotate;
219
219
  return by(shape, { name: name });
220
220
  }
221
221
  annotate.named = named;
222
+ function labeled(shape, label) {
223
+ return by(shape, { label: label });
224
+ }
225
+ annotate.labeled = labeled;
226
+ function meta(shape, meta) {
227
+ return by(shape, { meta: meta });
228
+ }
229
+ annotate.meta = meta;
222
230
  function foreign(shape, shapeName, fieldName) {
223
231
  return by(shape, { foreign: { shapeName, fieldName } });
224
232
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/shape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/shape.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { TuringNode } from "./turing";
2
+ export declare class EvalFrame {
3
+ symbols: Map<string, TuringNode>;
4
+ constructor(symbols?: Record<string, TuringNode> | Map<string, TuringNode>);
5
+ extend(symbols: Record<string, TuringNode> | Map<string, TuringNode>): void;
6
+ }
7
+ export declare class EvalContext {
8
+ frames: EvalFrame[];
9
+ get frame(): EvalFrame;
10
+ beginFrame(): EvalFrame;
11
+ endFrame(): EvalFrame;
12
+ with<T>(fn: (frame: EvalFrame) => T): T;
13
+ }
14
+ export declare const createEvalContext: (vars: Record<string, unknown>) => EvalContext;
15
+ export type EvalResult = {
16
+ ok: true;
17
+ node: TuringNode;
18
+ } | {
19
+ ok: false;
20
+ error: string;
21
+ };
22
+ export declare const turingEvaluate: (ctx: EvalContext, node: TuringNode) => EvalResult;
23
+ //# sourceMappingURL=evaluate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../../src/turing/evaluate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,qBAAa,SAAS;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;gBAEjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;IAM1E,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;CAWrE;AAED,qBAAa,WAAW;IACtB,MAAM,EAAE,SAAS,EAAE,CAAqB;IAExC,IAAI,KAAK,IAAI,SAAS,CAIrB;IAED,UAAU,IAAI,SAAS;IAMvB,QAAQ,IAAI,SAAS;IAMrB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,CAAC,GAAG,CAAC;CAMxC;AAED,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,WAWF,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB;IACE,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAYN,eAAO,MAAM,cAAc,GACzB,KAAK,WAAW,EAChB,MAAM,UAAU,KACf,UAyJF,CAAC"}
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.turingEvaluate = exports.createEvalContext = exports.EvalContext = exports.EvalFrame = void 0;
4
+ const turing_1 = require("./turing");
5
+ class EvalFrame {
6
+ symbols = new Map();
7
+ constructor(symbols) {
8
+ if (symbols) {
9
+ this.extend(symbols);
10
+ }
11
+ }
12
+ extend(symbols) {
13
+ if (symbols instanceof Map) {
14
+ for (const [k, v] of Array.from(symbols.entries())) {
15
+ this.symbols.set(k, v);
16
+ }
17
+ }
18
+ else {
19
+ for (const [k, v] of Object.entries(symbols)) {
20
+ this.symbols.set(k, v);
21
+ }
22
+ }
23
+ }
24
+ }
25
+ exports.EvalFrame = EvalFrame;
26
+ class EvalContext {
27
+ frames = [new EvalFrame()];
28
+ get frame() {
29
+ if (this.frames.length <= 0)
30
+ throw new Error("Out of frames");
31
+ const frame = this.frames[this.frames.length - 1];
32
+ return frame;
33
+ }
34
+ beginFrame() {
35
+ const frame = new EvalFrame();
36
+ this.frames.push(frame);
37
+ return frame;
38
+ }
39
+ endFrame() {
40
+ const frame = this.frames.pop() || null;
41
+ if (!frame)
42
+ throw new Error("endFrame(): Out of frames");
43
+ return frame;
44
+ }
45
+ with(fn) {
46
+ const frame = this.beginFrame();
47
+ const r = fn(frame);
48
+ this.endFrame();
49
+ return r;
50
+ }
51
+ }
52
+ exports.EvalContext = EvalContext;
53
+ const createEvalContext = (vars) => {
54
+ const ctx = new EvalContext();
55
+ ctx.frame.extend(Object.assign({}, ...Object.entries(vars).map(([k, v]) => {
56
+ return { [k]: turing_1.turing.auto(v) };
57
+ })));
58
+ return ctx;
59
+ };
60
+ exports.createEvalContext = createEvalContext;
61
+ const ok = (node) => ({
62
+ ok: true,
63
+ node,
64
+ });
65
+ const err = (error) => ({
66
+ ok: false,
67
+ error,
68
+ });
69
+ const turingEvaluate = (ctx, node) => {
70
+ switch (node.type) {
71
+ case "number":
72
+ case "date":
73
+ case "bool":
74
+ case "nil":
75
+ case "str":
76
+ return ok(node);
77
+ case "ref": {
78
+ const value = ctx.frame.symbols.get(node.name);
79
+ if (!value)
80
+ return err(`Undefined variable: ${node.name}`);
81
+ return (0, exports.turingEvaluate)(ctx, value);
82
+ }
83
+ case "binop": {
84
+ const leftR = (0, exports.turingEvaluate)(ctx, node.left);
85
+ if (!leftR.ok)
86
+ return leftR;
87
+ const rightR = (0, exports.turingEvaluate)(ctx, node.right);
88
+ if (!rightR.ok)
89
+ return rightR;
90
+ const left = leftR.node;
91
+ const right = rightR.node;
92
+ const op = node.op;
93
+ switch (op) {
94
+ case "add": {
95
+ if (left.type === "number" && right.type === "number")
96
+ return ok(turing_1.turing.number(left.value + right.value));
97
+ if (left.type === "str" && right.type === "str")
98
+ return ok(turing_1.turing.str(left.value + right.value));
99
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
100
+ }
101
+ case "sub": {
102
+ if (left.type === "number" && right.type === "number")
103
+ return ok(turing_1.turing.number(left.value - right.value));
104
+ if (left.type === "str" && right.type === "str")
105
+ return ok(turing_1.turing.str(left.value.replace(right.value, "")));
106
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
107
+ }
108
+ case "mul": {
109
+ if (left.type === "number" && right.type === "number")
110
+ return ok(turing_1.turing.number(left.value * right.value));
111
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
112
+ }
113
+ case "div": {
114
+ if (left.type === "number" && right.type === "number")
115
+ return ok(turing_1.turing.number(left.value / right.value));
116
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
117
+ }
118
+ case "mod": {
119
+ if (left.type === "number" && right.type === "number")
120
+ return ok(turing_1.turing.number(left.value % right.value));
121
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
122
+ }
123
+ case "and": {
124
+ if (left.type === "bool" && right.type === "bool")
125
+ return ok(turing_1.turing.bool(left.value && right.value));
126
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
127
+ }
128
+ case "or": {
129
+ if (left.type === "bool" && right.type === "bool")
130
+ return ok(turing_1.turing.bool(left.value || right.value));
131
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
132
+ }
133
+ case "eq": {
134
+ if (left.type !== right.type)
135
+ return ok(turing_1.turing.bool(false));
136
+ if (left.type === "bool" && right.type === "bool")
137
+ return ok(turing_1.turing.bool(left.value === right.value));
138
+ if (left.type === "number" && right.type === "number")
139
+ return ok(turing_1.turing.bool(left.value === right.value));
140
+ if (left.type === "str" && right.type === "str")
141
+ return ok(turing_1.turing.bool(left.value === right.value));
142
+ if (left.type === "date" && right.type === "date")
143
+ return ok(turing_1.turing.bool(left.value.getTime() === right.value.getTime()));
144
+ if (left.type === "nil" && right.type === "nil")
145
+ return ok(turing_1.turing.bool(left.value === right.value));
146
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
147
+ }
148
+ case "neq": {
149
+ if (left.type !== right.type)
150
+ return ok(turing_1.turing.bool(true));
151
+ if (left.type === "bool" && right.type === "bool")
152
+ return ok(turing_1.turing.bool(left.value !== right.value));
153
+ if (left.type === "number" && right.type === "number")
154
+ return ok(turing_1.turing.bool(left.value !== right.value));
155
+ if (left.type === "str" && right.type === "str")
156
+ return ok(turing_1.turing.bool(left.value !== right.value));
157
+ if (left.type === "date" && right.type === "date")
158
+ return ok(turing_1.turing.bool(left.value.getTime() !== right.value.getTime()));
159
+ if (left.type === "nil" && right.type === "nil")
160
+ return ok(turing_1.turing.bool(left.value !== right.value));
161
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
162
+ }
163
+ case "gt": {
164
+ if (left.type === "number" && right.type === "number")
165
+ return ok(turing_1.turing.bool(left.value > right.value));
166
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
167
+ }
168
+ case "gte": {
169
+ if (left.type === "number" && right.type === "number")
170
+ return ok(turing_1.turing.bool(left.value >= right.value));
171
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
172
+ }
173
+ case "lt": {
174
+ if (left.type === "number" && right.type === "number")
175
+ return ok(turing_1.turing.bool(left.value < right.value));
176
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
177
+ }
178
+ case "lte": {
179
+ if (left.type === "number" && right.type === "number")
180
+ return ok(turing_1.turing.bool(left.value <= right.value));
181
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
182
+ }
183
+ case "regex-match": {
184
+ if (left.type === "str" && right.type === "str") {
185
+ const reg = new RegExp(right.value);
186
+ return ok(turing_1.turing.bool(reg.test(left.value)));
187
+ }
188
+ return err(`Invalid operation '${op}' for (${left.type}, ${right.type})`);
189
+ }
190
+ }
191
+ }
192
+ }
193
+ };
194
+ exports.turingEvaluate = turingEvaluate;
195
+ //# sourceMappingURL=evaluate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/turing/evaluate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from "./op";
2
+ export * from "./turing";
3
+ export * from "./evaluate";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/turing/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./op"), exports);
18
+ __exportStar(require("./turing"), exports);
19
+ __exportStar(require("./evaluate"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/turing/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB;AACrB,2CAAyB;AACzB,6CAA2B"}
@@ -0,0 +1,5 @@
1
+ export type TuringOpCompare = "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "regex-match";
2
+ export type TuringOpBool = "or" | "and";
3
+ export type TuringOpArith = "add" | "sub" | "mul" | "div" | "mod";
4
+ export type TuringOp = TuringOpCompare | TuringOpBool | TuringOpArith;
5
+ //# sourceMappingURL=op.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"op.d.ts","sourceRoot":"","sources":["../../../src/turing/op.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,aAAa,CAAC;AAElB,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,KAAK,CAAC;AAExC,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAElE,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,YAAY,GAAG,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=op.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"op.js","sourceRoot":"","sources":["../../../src/turing/op.ts"],"names":[],"mappings":""}
@@ -0,0 +1,59 @@
1
+ import { OutputOfShape, Shape, ShapeBool, ShapeDate, ShapeNil, ShapeNumber, ShapeRef, ShapeStr, ShapeUnknown } from "../shape";
2
+ import { TuringOp } from "./op";
3
+ export type TuringPhantom = {
4
+ out: any;
5
+ };
6
+ export type LooseTuring = {
7
+ type: string;
8
+ __phantom: TuringPhantom;
9
+ };
10
+ export type OutputOfTuring<T> = [
11
+ T
12
+ ] extends [LooseTuring] ? T["__phantom"]["out"] : never;
13
+ export interface TuringBase<Type extends string> {
14
+ type: Type;
15
+ __phantom: TuringPhantom;
16
+ }
17
+ export interface TuringWithOutput<Type extends string, Out> extends TuringBase<Type> {
18
+ __phantom: {
19
+ out: Out;
20
+ };
21
+ }
22
+ export interface TuringWithShape<Type extends string, S extends Shape> extends TuringWithOutput<Type, OutputOfShape<S>> {
23
+ shape: S;
24
+ }
25
+ export interface TuringNumber extends TuringWithShape<"number", ShapeNumber> {
26
+ value: number;
27
+ }
28
+ export interface TuringBool extends TuringWithShape<"bool", ShapeBool> {
29
+ value: boolean;
30
+ }
31
+ export interface TuringStr extends TuringWithShape<"str", ShapeStr> {
32
+ value: string;
33
+ }
34
+ export interface TuringDate extends TuringWithShape<"date", ShapeDate> {
35
+ value: Date;
36
+ }
37
+ export interface TuringNil extends TuringWithShape<"nil", ShapeNil> {
38
+ value: null;
39
+ }
40
+ export interface TuringRef<Name extends string = string> extends TuringWithShape<"ref", ShapeRef<Name>> {
41
+ name: Name;
42
+ }
43
+ export interface TuringBinop<Op extends TuringOp = TuringOp, Left extends TuringNode = TuringNode, Right extends TuringNode = TuringNode> extends TuringWithShape<"binop", ShapeUnknown> {
44
+ op: Op;
45
+ left: Left;
46
+ right: Right;
47
+ }
48
+ export type TuringNode = TuringNumber | TuringBool | TuringStr | TuringDate | TuringNil | TuringRef | TuringBinop;
49
+ export declare namespace turing {
50
+ const number: (x: number) => TuringNumber;
51
+ const bool: (x: boolean) => TuringBool;
52
+ const str: (x: string) => TuringStr;
53
+ const date: (x: Date) => TuringDate;
54
+ const nil: () => TuringNil;
55
+ function ref<Name extends string>(name: Name): TuringRef<Name>;
56
+ function binop<Left extends TuringNode, Op extends TuringOp, Right extends TuringNode>(left: Left, op: Op, right: Right): TuringBinop<Op, Left, Right>;
57
+ function auto(x: unknown): TuringNode;
58
+ }
59
+ //# sourceMappingURL=turing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turing.d.ts","sourceRoot":"","sources":["../../../src/turing/turing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.turing = void 0;
4
+ const shape_1 = require("../shape");
5
+ const makeBase = () => {
6
+ return {};
7
+ };
8
+ var turing;
9
+ (function (turing) {
10
+ turing.number = (x) => ({
11
+ type: "number",
12
+ value: x,
13
+ shape: shape_1.shapes.number(),
14
+ ...makeBase(),
15
+ });
16
+ turing.bool = (x) => ({
17
+ type: "bool",
18
+ value: x,
19
+ shape: shape_1.shapes.bool(),
20
+ ...makeBase(),
21
+ });
22
+ turing.str = (x) => ({
23
+ type: "str",
24
+ value: x,
25
+ shape: shape_1.shapes.str(),
26
+ ...makeBase(),
27
+ });
28
+ turing.date = (x) => ({
29
+ type: "date",
30
+ value: x,
31
+ shape: shape_1.shapes.date(),
32
+ ...makeBase(),
33
+ });
34
+ turing.nil = () => ({
35
+ type: "nil",
36
+ value: null,
37
+ shape: shape_1.shapes.nil(),
38
+ ...makeBase(),
39
+ });
40
+ function ref(name) {
41
+ return {
42
+ type: "ref",
43
+ name: name,
44
+ shape: shape_1.shapes.ref(name),
45
+ ...makeBase(),
46
+ };
47
+ }
48
+ turing.ref = ref;
49
+ function binop(left, op, right) {
50
+ return {
51
+ type: "binop",
52
+ left,
53
+ right,
54
+ op,
55
+ shape: shape_1.shapes.unknown(),
56
+ ...makeBase(),
57
+ };
58
+ }
59
+ turing.binop = binop;
60
+ function auto(x) {
61
+ if (x === null)
62
+ return turing.nil();
63
+ if (typeof x === "undefined")
64
+ return turing.nil();
65
+ if (typeof x === "number")
66
+ return turing.number(x);
67
+ if (typeof x === "string")
68
+ return turing.str(x);
69
+ if (typeof x === "boolean")
70
+ return turing.bool(x);
71
+ return turing.nil();
72
+ }
73
+ turing.auto = auto;
74
+ })(turing || (exports.turing = turing = {}));
75
+ //# sourceMappingURL=turing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turing.js","sourceRoot":"","sources":["../../../src/turing/turing.ts"],"names":[],"mappings":";;;AAAA,oCAWkB;AA4ElB,MAAM,QAAQ,GAAG,GAAgC,EAAE;IACjD,OAAO,EAAoB,CAAC;AAC9B,CAAC,CAAC;AAEF,IAAiB,MAAM,CAoEtB;AApED,WAAiB,MAAM;IACR,aAAM,GAAG,CAAC,CAAS,EAAgB,EAAE,CAAC,CAAC;QAClD,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,cAAM,CAAC,MAAM,EAAE;QACtB,GAAG,QAAQ,EAAE;KACd,CAAC,CAAC;IAEU,WAAI,GAAG,CAAC,CAAU,EAAc,EAAE,CAAC,CAAC;QAC/C,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,cAAM,CAAC,IAAI,EAAE;QACpB,GAAG,QAAQ,EAAE;KACd,CAAC,CAAC;IAEU,UAAG,GAAG,CAAC,CAAS,EAAa,EAAE,CAAC,CAAC;QAC5C,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,cAAM,CAAC,GAAG,EAAE;QACnB,GAAG,QAAQ,EAAE;KACd,CAAC,CAAC;IAEU,WAAI,GAAG,CAAC,CAAO,EAAc,EAAE,CAAC,CAAC;QAC5C,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,cAAM,CAAC,IAAI,EAAE;QACpB,GAAG,QAAQ,EAAE;KACd,CAAC,CAAC;IAEU,UAAG,GAAG,GAAc,EAAE,CAAC,CAAC;QACnC,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,cAAM,CAAC,GAAG,EAAE;QACnB,GAAG,QAAQ,EAAE;KACd,CAAC,CAAC;IAEH,SAAgB,GAAG,CAAsB,IAAU;QACjD,OAAO;YACL,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,cAAM,CAAC,GAAG,CAAC,IAAI,CAAC;YACvB,GAAG,QAAQ,EAAE;SACd,CAAC;IACJ,CAAC;IAPe,UAAG,MAOlB,CAAA;IAED,SAAgB,KAAK,CAInB,IAAU,EAAE,EAAM,EAAE,KAAY;QAChC,OAAO;YACL,IAAI,EAAE,OAAO;YACb,IAAI;YACJ,KAAK;YACL,EAAE;YACF,KAAK,EAAE,cAAM,CAAC,OAAO,EAAE;YACvB,GAAG,QAAQ,EAAE;SACd,CAAC;IACJ,CAAC;IAbe,YAAK,QAapB,CAAA;IAED,SAAgB,IAAI,CAAC,CAAU;QAC7B,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,OAAA,GAAG,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,KAAK,WAAW;YAAE,OAAO,OAAA,GAAG,EAAE,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,OAAA,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,OAAA,GAAG,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,OAAO,CAAC,KAAK,SAAS;YAAE,OAAO,OAAA,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3C,OAAO,OAAA,GAAG,EAAE,CAAC;IACf,CAAC;IAPe,WAAI,OAOnB,CAAA;AACH,CAAC,EApEgB,MAAM,sBAAN,MAAM,QAoEtB"}
@@ -4,4 +4,5 @@ export * from "./shape-utils";
4
4
  export * from "./inputs";
5
5
  export * from "./translations";
6
6
  export * from "./validation";
7
+ export * from "./turing";
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
package/dist/esm/index.js CHANGED
@@ -20,4 +20,5 @@ __exportStar(require("./shape-utils"), exports);
20
20
  __exportStar(require("./inputs"), exports);
21
21
  __exportStar(require("./translations"), exports);
22
22
  __exportStar(require("./validation"), exports);
23
+ __exportStar(require("./turing"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,qDAAmC;AACnC,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,qDAAmC;AACnC,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,+CAA6B;AAC7B,2CAAyB"}