@fncts/schema 0.0.14 → 0.0.16

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 (45) hide show
  1. package/AST.d.ts +29 -12
  2. package/Guard.d.ts +9 -0
  3. package/ParseError.d.ts +40 -3
  4. package/Parser/api.d.ts +0 -6
  5. package/Parser/interpreter.d.ts +1 -2
  6. package/Schema/api.d.ts +1 -1
  7. package/Schema/derivations.d.ts +1 -1
  8. package/Show.d.ts +1 -1
  9. package/_cjs/AST.cjs +115 -65
  10. package/_cjs/AST.cjs.map +1 -1
  11. package/_cjs/Guard.cjs +278 -0
  12. package/_cjs/Guard.cjs.map +1 -0
  13. package/_cjs/ParseError.cjs +77 -3
  14. package/_cjs/ParseError.cjs.map +1 -1
  15. package/_cjs/Parser/api.cjs +11 -23
  16. package/_cjs/Parser/api.cjs.map +1 -1
  17. package/_cjs/Parser/interpreter.cjs +93 -141
  18. package/_cjs/Parser/interpreter.cjs.map +1 -1
  19. package/_cjs/Schema/api.cjs +28 -29
  20. package/_cjs/Schema/api.cjs.map +1 -1
  21. package/_cjs/Show.cjs +23 -12
  22. package/_cjs/Show.cjs.map +1 -1
  23. package/_mjs/AST.mjs +107 -61
  24. package/_mjs/AST.mjs.map +1 -1
  25. package/_mjs/Guard.mjs +269 -0
  26. package/_mjs/Guard.mjs.map +1 -0
  27. package/_mjs/ParseError.mjs +72 -2
  28. package/_mjs/ParseError.mjs.map +1 -1
  29. package/_mjs/Parser/api.mjs +10 -21
  30. package/_mjs/Parser/api.mjs.map +1 -1
  31. package/_mjs/Parser/interpreter.mjs +94 -142
  32. package/_mjs/Parser/interpreter.mjs.map +1 -1
  33. package/_mjs/Schema/api.mjs +28 -29
  34. package/_mjs/Schema/api.mjs.map +1 -1
  35. package/_mjs/Show.mjs +23 -12
  36. package/_mjs/Show.mjs.map +1 -1
  37. package/_src/AST.ts +96 -47
  38. package/_src/Guard.ts +268 -0
  39. package/_src/ParseError.ts +88 -4
  40. package/_src/Parser/api.ts +8 -21
  41. package/_src/Parser/interpreter.ts +87 -121
  42. package/_src/Schema/api.ts +4 -11
  43. package/_src/Schema/derivations.ts +1 -1
  44. package/_src/Show.ts +28 -15
  45. package/package.json +3 -3
package/_cjs/AST.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"AST.cjs","names":["_Showable","require","_utils","_ASTAnnotationMap","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","createDeclaration","exports","createDeclaration_1","createLiteral","createLiteral_1","isLiteral","isLiteral_1","createUniqueSymbol","createUniqueSymbol_1","isUniqueSymbol","isUniqueSymbol_1","isStringKeyword","isStringKeyword_1","isNumberKeyword","isNumberKeyword_1","isSymbolKeyword","isSymbolKeyword_1","createTemplateLiteral","createTemplateLiteral_1","createElement","createElement_1","createTuple","createTuple_1","createPropertySignature","createPropertySignature_1","createIndexSignature","createIndexSignature_1","createTypeLiteral","createTypeLiteral_1","createUnion","createUnion_1","createLazy","createLazy_1","createRefinement","createRefinement_1","createTransform","createTransform_1","getPropertySignatures","getPropertySignatures_1","keysOf","keysOf_1","partial","partial_1","getFrom","getFrom_1","getTo","getTo_1","reverse","reverse_1","ASTTypeId","Symbol","for","Annotated","constructor","annotations","ASTAnnotationMap","empty","AST","_a","concrete","_","getAnnotations","key","self","Declaration","typeParameters","type","decode","_tag","clone","newProperties","isDeclaration","Literal","literal","UniqueSymbol","symbol","UndefinedKeyword","undefinedKeyword_1","annotate","tsplus_module_1","Title","undefinedKeyword","VoidKeyword","voidKeyword","NeverKeyword","neverKeyword_1","neverKeyword","UnknownKeyword","unknownKeyword","AnyKeyword","anyKeyword","StringKeyword","stringKeyword_1","stringKeyword","NumberKeyword","numberKeyword_1","numberKeyword","BooleanKeyword","booleanKeyword","isBooleanKeyword","BigIntKeyword","bigIntKeyword","isBigIntKeyword","SymbolKeyword","symbolKeyword_1","symbolKeyword","ObjectKeyword","objectKeyword","Enum","enums","createEnum","TemplateLiteralSpan","TemplateLiteral","head","spans","tsplus_module_2","isNonEmpty","Element","isOptional","Tuple","elements","rest","isReadonly","PropertySignature","name","IndexSignature","parameter","TypeLiteral","propertySignatures","indexSignatures","sortByAscendingCardinality","isTypeLiteral","Union","types","isUnion","candidates","unify","length","unsafeGet","sortByDescendingWeight","Lazy","getAST","isLazy","Refinement","from","isReversed","isRefinement","Transform","to","encode","Validation","validation","createValidation","getCardinality","ast","ast_1","sort","tsplus_module_4","contramap","tsplus_module_3","Ord","getWeight","tsplus_module_5","isJust","value","foldLeft","member","out","flatMap","vector","some","filter","m","combineAnnotations","combine","setAnnotation","annotation","appendRestElement","restElement","Error","tsplus_module_6","just","fileName_1","appendElement","element","tsplus_module_7","match","append","nothing","getParameter","x","mapWithIndex","map","filterMap","every","ps","p","members","concat","is","keyof","createRecord","emptyPushable","go","tsplus_module_8","push","forEach","show","pick","keys","includes","omit","tsplus_module_9","f","createKey","getCompiler","compile","memoize"],"sources":["../_src/AST.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"AST.cjs","names":["_Showable","require","_utils","_ASTAnnotationMap","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","createDeclaration","exports","createDeclaration_1","createLiteral","createLiteral_1","isLiteral","isLiteral_1","createUniqueSymbol","createUniqueSymbol_1","isUniqueSymbol","isUniqueSymbol_1","isStringKeyword","isStringKeyword_1","isNumberKeyword","isNumberKeyword_1","isSymbolKeyword","isSymbolKeyword_1","createTemplateLiteral","createTemplateLiteral_1","createElement","createElement_1","createTuple","createTuple_1","createPropertySignature","createPropertySignature_1","createIndexSignature","createIndexSignature_1","createTypeLiteral","createTypeLiteral_1","createUnion","createUnion_1","createLazy","createLazy_1","createRefinement","createRefinement_1","getPropertySignatures","getPropertySignatures_1","keysOf","keysOf_1","partial","partial_1","getFrom","getFrom_1","getTo","getTo_1","ASTTypeId","Symbol","for","Annotated","constructor","annotations","ASTAnnotationMap","empty","AST","_a","concrete","_","getAnnotations","key","self","Declaration","typeParameters","type","decode","_tag","clone","newProperties","isDeclaration","Literal","literal","UniqueSymbol","symbol","UndefinedKeyword","undefinedKeyword_1","annotate","tsplus_module_1","Title","undefinedKeyword","VoidKeyword","voidKeyword","NeverKeyword","neverKeyword_1","neverKeyword","UnknownKeyword","unknownKeyword_1","unknownKeyword","AnyKeyword","anyKeyword","StringKeyword","stringKeyword_1","stringKeyword","NumberKeyword","numberKeyword_1","numberKeyword","BooleanKeyword","booleanKeyword","isBooleanKeyword","BigIntKeyword","bigIntKeyword","isBigIntKeyword","SymbolKeyword","symbolKeyword_1","symbolKeyword","ObjectKeyword","objectKeyword","Enum","enums","createEnum","TemplateLiteralSpan","TemplateLiteral","head","spans","tsplus_module_2","isNonEmpty","Element","isOptional","Tuple","elements","rest","isReadonly","unknownArray","tsplus_module_3","just","vector","fileName_1","PropertySignature","name","IndexSignature","parameter","TypeLiteral","propertySignatures","indexSignatures","sortByAscendingCardinality","isTypeLiteral","unknownRecord","Union","types","isUnion","candidates","unify","length","unsafeGet","sortByDescendingWeight","Lazy","getAST","isLazy","Refinement","from","predicate","input","options","tsplus_module_4","succeed","fail","tsplus_module_5","typeError","isRefinement","Transform","to","encode","createTransform","Validation","validation","createValidation","getCardinality","ast","ast_1","sort","tsplus_module_7","contramap","tsplus_module_6","Ord","getWeight","tsplus_module_8","isJust","value","foldLeft","member","out","flatMap","some","filter","m","combineAnnotations","combine","setAnnotation","annotation","appendRestElement","restElement","Error","appendElement","element","tsplus_module_9","match","append","nothing","getParameter","x","mapWithIndex","map","filterMap","every","ps","p","members","concat","is","keyof","createRecord","emptyPushable","go","tsplus_module_10","push","forEach","show","pick","keys","includes","omit","tsplus_module_11","f","createKey","getCompiler","compile","memoize","getLiterals","isDecoding","propertySignature","getSearchTree","otherwise","tags","j","hash","String","buckets"],"sources":["../_src/AST.ts"],"sourcesContent":[null],"mappings":"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"}
package/_cjs/Guard.cjs ADDED
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.guardFor = guardFor;
7
+ exports.is = is;
8
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Guard/definition"));
9
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/destructors"));
10
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/number/instances"));
11
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/boolean/instances"));
12
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Guard/api"));
13
+ var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/bigint/instances"));
14
+ var _predicates = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/util/predicates"));
15
+ var tsplus_module_7 = _predicates;
16
+ var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Vector/api"));
17
+ var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
18
+ var _Global = /*#__PURE__*/require("@fncts/base/data/Global");
19
+ var _utils = /*#__PURE__*/require("@fncts/schema/utils");
20
+ var _AST = /*#__PURE__*/require("./AST.cjs");
21
+ var _Parser = /*#__PURE__*/require("./Parser.cjs");
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ /**
25
+ * @tsplus getter fncts.schema.Schema is
26
+ */
27
+ function is(schema) {
28
+ return input => {
29
+ return guardFor(schema).is(input);
30
+ };
31
+ }
32
+ function guardFor(schema) {
33
+ return goMemo(schema.ast);
34
+ }
35
+ const guardStrict = value => tsplus_module_1.makeGuard(inp => inp === value);
36
+ const guardMemoMap = /*#__PURE__*/(0, _Global.globalValue)( /*#__PURE__*/Symbol.for("fncts.schema.Guard.guardMemoMap"), () => new WeakMap());
37
+ function goMemo(ast) {
38
+ const memo = guardMemoMap.get(ast);
39
+ if (memo) {
40
+ return memo;
41
+ }
42
+ const guard = go(ast);
43
+ guardMemoMap.set(ast, guard);
44
+ return guard;
45
+ }
46
+ function go(ast) {
47
+ void 0;
48
+ switch (ast._tag) {
49
+ case 0 /* ASTTag.Declaration */:
50
+ {
51
+ const parser = (0, _Parser.parserFor)(ast, true);
52
+ return tsplus_module_1.makeGuard(inp => tsplus_module_2.match(() => false, () => true)(parser(inp)));
53
+ }
54
+ case 1 /* ASTTag.Literal */:
55
+ {
56
+ return tsplus_module_1.makeGuard(inp => inp === ast.literal);
57
+ }
58
+ case 2 /* ASTTag.UniqueSymbol */:
59
+ {
60
+ return guardStrict(ast.symbol);
61
+ }
62
+ case 4 /* ASTTag.VoidKeyword */:
63
+ case 3 /* ASTTag.UndefinedKeyword */:
64
+ {
65
+ return guardStrict(undefined);
66
+ }
67
+ case 5 /* ASTTag.NeverKeyword */:
68
+ {
69
+ return tsplus_module_1.makeGuard(inp => false);
70
+ }
71
+ case 6 /* ASTTag.UnknownKeyword */:
72
+ case 7 /* ASTTag.AnyKeyword */:
73
+ {
74
+ return tsplus_module_1.makeGuard(inp => true);
75
+ }
76
+ case 9 /* ASTTag.NumberKeyword */:
77
+ {
78
+ return tsplus_module_3.Guard;
79
+ }
80
+ case 10 /* ASTTag.BooleanKeyword */:
81
+ {
82
+ return tsplus_module_4.Guard;
83
+ }
84
+ case 8 /* ASTTag.StringKeyword */:
85
+ {
86
+ return tsplus_module_5.string;
87
+ }
88
+ case 11 /* ASTTag.BigIntKeyword */:
89
+ {
90
+ return tsplus_module_6.Guard;
91
+ }
92
+ case 12 /* ASTTag.SymbolKeyword */:
93
+ {
94
+ return tsplus_module_1.makeGuard(inp => typeof inp === "symbol");
95
+ }
96
+ case 13 /* ASTTag.ObjectKeyword */:
97
+ {
98
+ return tsplus_module_1.makeGuard(tsplus_module_7.isObject);
99
+ }
100
+ case 15 /* ASTTag.TemplateLiteral */:
101
+ {
102
+ const parser = (0, _Parser.parserFor)(ast, true);
103
+ return tsplus_module_1.makeGuard(inp => tsplus_module_2.match(() => false, () => true)(parser(inp)));
104
+ }
105
+ case 16 /* ASTTag.Tuple */:
106
+ {
107
+ const elements = tsplus_module_8.map(element => goMemo(element.type))(ast.elements);
108
+ const restElements = tsplus_module_9.match(() => tsplus_module_8.empty(), rest => tsplus_module_8.map(goMemo)(rest))(ast.rest);
109
+ return tsplus_module_1.makeGuard(input => {
110
+ if (!Array.isArray(input)) {
111
+ return false;
112
+ }
113
+ let i = 0;
114
+ for (; i < elements.length; i++) {
115
+ if (input.length < i + 1) {
116
+ if (!tsplus_module_8.unsafeGet(i)(ast.elements).isOptional) {
117
+ return false;
118
+ }
119
+ } else {
120
+ const guard = tsplus_module_8.unsafeGet(i)(elements);
121
+ if (!guard.is(input[i])) {
122
+ return false;
123
+ }
124
+ }
125
+ }
126
+ if (restElements.length > 0) {
127
+ const head = tsplus_module_8.unsafeHead(restElements);
128
+ const tail = tsplus_module_8.tail(restElements);
129
+ for (; i < input.length - tail.length; i++) {
130
+ if (!head.is(input[i])) {
131
+ return false;
132
+ }
133
+ }
134
+ for (let j = 0; j < tail.length; j++) {
135
+ i += j;
136
+ if (input.length < i + 1) {
137
+ return false;
138
+ }
139
+ const guard = tsplus_module_8.unsafeGet(j)(tail);
140
+ if (!guard.is(input[i])) {
141
+ return false;
142
+ }
143
+ }
144
+ }
145
+ return true;
146
+ });
147
+ }
148
+ case 17 /* ASTTag.TypeLiteral */:
149
+ {
150
+ if (ast.propertySignatures.length === 0 && ast.indexSignatures.length === 0) {
151
+ return tsplus_module_1.makeGuard(input => input !== null);
152
+ }
153
+ const propertySignatureTypes = tsplus_module_8.map(ps => goMemo(ps.type))(ast.propertySignatures);
154
+ const indexSignatures = tsplus_module_8.map(is => [goMemo(is.parameter), goMemo(is.type)])(ast.indexSignatures);
155
+ return tsplus_module_1.makeGuard(input => {
156
+ if (!(0, _predicates.isRecord)(input)) {
157
+ return false;
158
+ }
159
+ const expectedKeys = {};
160
+ console.log(ast.propertySignatures);
161
+ for (let i = 0; i < propertySignatureTypes.length; i++) {
162
+ const ps = tsplus_module_8.unsafeGet(i)(ast.propertySignatures);
163
+ const guard = tsplus_module_8.unsafeGet(i)(propertySignatureTypes);
164
+ const name = ps.name;
165
+ expectedKeys[name] = null;
166
+ if (!Object.prototype.hasOwnProperty.call(input, name)) {
167
+ if (!ps.isOptional) {
168
+ return false;
169
+ }
170
+ } else {
171
+ if (!tsplus_module_5.is(input[name])(guard)) {
172
+ return false;
173
+ }
174
+ }
175
+ }
176
+ if (indexSignatures.length > 0) {
177
+ for (let i = 0; i < indexSignatures.length; i++) {
178
+ const [parameter, type] = tsplus_module_8.unsafeGet(i)(indexSignatures);
179
+ const keys = (0, _utils.getKeysForIndexSignature)(input, tsplus_module_8.unsafeGet(i)(ast.indexSignatures).parameter);
180
+ for (const key of keys) {
181
+ if (Object.prototype.hasOwnProperty.call(expectedKeys, key)) {
182
+ continue;
183
+ }
184
+ if (!tsplus_module_5.is(key)(parameter)) {
185
+ return false;
186
+ }
187
+ if (!tsplus_module_5.is(input[key])(type)) {
188
+ return false;
189
+ }
190
+ }
191
+ }
192
+ }
193
+ return true;
194
+ });
195
+ }
196
+ case 18 /* ASTTag.Union */:
197
+ {
198
+ const searchTree = (0, _AST.getSearchTree)(ast.types, true);
199
+ const ownKeys = Reflect.ownKeys(searchTree.keys);
200
+ const len = ownKeys.length;
201
+ const otherwise = searchTree.otherwise;
202
+ const map = new Map();
203
+ tsplus_module_8.forEach(ast => {
204
+ map.set(ast, goMemo(ast));
205
+ })(ast.types);
206
+ return tsplus_module_1.makeGuard(input => {
207
+ if (len > 0) {
208
+ if ((0, _predicates.isRecord)(input)) {
209
+ for (let i = 0; i < len; i++) {
210
+ const name = ownKeys[i];
211
+ const buckets = searchTree.keys[name].buckets;
212
+ if (Object.prototype.hasOwnProperty.call(input, name)) {
213
+ const literal = String(input[name]);
214
+ if (Object.prototype.hasOwnProperty.call(buckets, literal)) {
215
+ const bucket = buckets[literal];
216
+ for (let i = 0; i < bucket.length; i++) {
217
+ if (tsplus_module_5.is(input)(map.get(bucket[i]))) {
218
+ return true;
219
+ }
220
+ }
221
+ }
222
+ }
223
+ }
224
+ }
225
+ }
226
+ for (let i = 0; i < otherwise.length; i++) {
227
+ if (tsplus_module_5.is(input)(map.get(otherwise[i]))) {
228
+ return true;
229
+ }
230
+ }
231
+ return false;
232
+ });
233
+ }
234
+ case 19 /* ASTTag.Lazy */:
235
+ {
236
+ const f = () => goMemo(ast.getAST());
237
+ const get = (0, _utils.memoize)(f);
238
+ return tsplus_module_1.makeGuard(input => tsplus_module_5.is(input)(get()));
239
+ }
240
+ case 14 /* ASTTag.Enum */:
241
+ {
242
+ return tsplus_module_1.makeGuard(input => tsplus_module_8.some(([_, value]) => value === input)(ast.enums));
243
+ }
244
+ case 20 /* ASTTag.Refinement */:
245
+ {
246
+ const from = goMemo(ast.from);
247
+ return tsplus_module_1.makeGuard(input => {
248
+ if (!tsplus_module_5.is(input)(from)) {
249
+ return false;
250
+ }
251
+ if (!ast.predicate(input)) {
252
+ return false;
253
+ }
254
+ return true;
255
+ });
256
+ }
257
+ case 21 /* ASTTag.Transform */:
258
+ {
259
+ return goMemo(ast.to);
260
+ }
261
+ case 22 /* ASTTag.Validation */:
262
+ {
263
+ const from = goMemo(ast.from);
264
+ return tsplus_module_1.makeGuard(input => {
265
+ if (!tsplus_module_5.is(input)(from)) {
266
+ return false;
267
+ }
268
+ for (const validation of ast.validation) {
269
+ if (!validation.validate(input)) {
270
+ return false;
271
+ }
272
+ }
273
+ return true;
274
+ });
275
+ }
276
+ }
277
+ }
278
+ //# sourceMappingURL=Guard.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Guard.cjs","names":["_Global","require","_utils","_AST","_Parser","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","is","schema","input","guardFor","goMemo","ast","guardStrict","value","tsplus_module_1","makeGuard","inp","guardMemoMap","globalValue","Symbol","for","memo","guard","go","_tag","parser","parserFor","tsplus_module_2","match","literal","symbol","undefined","tsplus_module_3","Guard","tsplus_module_4","tsplus_module_5","string","tsplus_module_6","tsplus_module_7","isObject","elements","tsplus_module_8","map","element","type","restElements","tsplus_module_9","empty","rest","Array","isArray","length","unsafeGet","isOptional","head","unsafeHead","tail","j","propertySignatures","indexSignatures","propertySignatureTypes","ps","parameter","isRecord","expectedKeys","console","log","name","keys","getKeysForIndexSignature","key","searchTree","getSearchTree","types","ownKeys","Reflect","len","otherwise","Map","forEach","buckets","String","bucket","f","getAST","memoize","some","_","enums","from","predicate","to","validation","validate"],"sources":["../_src/Guard.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,gBAAAC,OAAA;AAEA,IAAAC,MAAA,gBAAAD,OAAA;AAEA,IAAAE,IAAA,gBAAAF,OAAA;AACA,IAAAG,OAAA,gBAAAH,OAAA;AAAwC,SAAAI,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAI,wBAAAJ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAe,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAExC;;;AAGM,SAAUY,EAAEA,CAAIC,MAAiB;EACrC,OAAQC,KAAc,IAAgB;IACpC,OAAOC,QAAQ,CAACF,MAAM,CAAC,CAACD,EAAE,CAACE,KAAK,CAAC;EACnC,CAAC;AACH;AAEM,SAAUC,QAAQA,CAAIF,MAAiB;EAC3C,OAAOG,MAAM,CAACH,MAAM,CAACI,GAAG,CAAC;AAC3B;AAEA,MAAMC,WAAW,GAAIC,KAAc,IAAKC,eAAA,CAAAC,SAAA,CAAOC,GAAG,IAAiBA,GAAG,KAAKH,KAAK,CAAC;AAEjF,MAAMI,YAAY,gBAAG,IAAAC,mBAAW,gBAACC,MAAM,CAACC,GAAG,CAAC,iCAAiC,CAAC,EAAE,MAAM,IAAIlC,OAAO,EAAmB,CAAC;AAErH,SAASwB,MAAMA,CAACC,GAAQ;EACtB,MAAMU,IAAI,GAAGJ,YAAY,CAACxB,GAAG,CAACkB,GAAG,CAAC;EAClC,IAAIU,IAAI,EAAE;IACR,OAAOA,IAAI;EACb;EACA,MAAMC,KAAK,GAAGC,EAAE,CAACZ,GAAG,CAAC;EACrBM,YAAY,CAACZ,GAAG,CAACM,GAAG,EAAEW,KAAK,CAAC;EAC5B,OAAOA,KAAK;AACd;AAEA,SAASC,EAAEA,CAACZ,GAAQ;EAClB;EACA,QAAQA,GAAG,CAACa,IAAI;IACd;MAAyB;QACvB,MAAMC,MAAM,GAAG,IAAAC,iBAAS,EAACf,GAAG,EAAE,IAAI,CAAC;QACnC,OAAOG,eAAA,CAAAC,SAAA,CAAOC,GAAG,IACfW,eAAA,CAAAC,KAAA,CACE,MAAM,KAAK,EACX,MAAM,IAAI,EAFZH,MAAM,CAACT,GAAG,CAAC,CAGV,CACF;MACH;IACA;MAAqB;QACnB,OAAOF,eAAA,CAAAC,SAAA,CAAOC,GAAG,IAAiBA,GAAG,KAAKL,GAAG,CAACkB,OAAO,CAAC;MACxD;IACA;MAA0B;QACxB,OAAOjB,WAAW,CAACD,GAAG,CAACmB,MAAM,CAAC;MAChC;IACA;IACA;MAA8B;QAC5B,OAAOlB,WAAW,CAACmB,SAAS,CAAC;MAC/B;IACA;MAA0B;QACxB,OAAOjB,eAAA,CAAAC,SAAA,CAAOC,GAAG,IAAmB,KAAK,CAAC;MAC5C;IACA;IACA;MAAwB;QACtB,OAAOF,eAAA,CAAAC,SAAA,CAAOC,GAAG,IAAiB,IAAI,CAAC;MACzC;IACA;MAA2B;QACzB,OAAAgB,eAAA,CAAAC,KAAA;MACF;IACA;MAA4B;QAC1B,OAAAC,eAAA,CAAAD,KAAA;MACF;IACA;MAA2B;QACzB,OAAAE,eAAA,CAAAC,MAAA;MACF;IACA;MAA2B;QACzB,OAAAC,eAAA,CAAAJ,KAAA;MACF;IACA;MAA2B;QACzB,OAAOnB,eAAA,CAAAC,SAAA,CAAOC,GAAG,IAAoB,OAAOA,GAAG,KAAK,QAAQ,CAAC;MAC/D;IACA;MAA2B;QACzB,OAAOF,eAAA,CAAAC,SAAA,CAAAuB,eAAA,CAAMC,QAAQ,CAAC;MACxB;IACA;MAA6B;QAC3B,MAAMd,MAAM,GAAG,IAAAC,iBAAS,EAACf,GAAG,EAAE,IAAI,CAAC;QACnC,OAAOG,eAAA,CAAAC,SAAA,CAAOC,GAAG,IACfW,eAAA,CAAAC,KAAA,CACE,MAAM,KAAK,EACX,MAAM,IAAI,EAFZH,MAAM,CAACT,GAAG,CAAC,CAGV,CACF;MACH;IACA;MAAmB;QACjB,MAAMwB,QAAQ,GAAOC,eAAA,CAAAC,GAAA,CAAkBC,OAAO,IAAKjC,MAAM,CAACiC,OAAO,CAACC,IAAI,CAAC,EAAlDjC,GAAG,CAAC6B,QAAQ,CAAuC;QACxE,MAAMK,YAAY,GAAGC,eAAA,CAAAlB,KAAA,CACnB,MAAMa,eAAA,CAAAM,KAAA,EAA0B,EAC/BC,IAAI,IAAKP,eAAA,CAAAC,GAAA,CAAShC,MAAM,EAAfsC,IAAI,CAAY,EAFPrC,GAAG,CAACqC,IAAI,CAG5B;QAED,OAAOlC,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAkB;UACnC,IAAI,CAACyC,KAAK,CAACC,OAAO,CAAC1C,KAAK,CAAC,EAAE;YACzB,OAAO,KAAK;UACd;UAEA,IAAIJ,CAAC,GAAG,CAAC;UACT,OAAOA,CAAC,GAAGoC,QAAQ,CAACW,MAAM,EAAE/C,CAAC,EAAE,EAAE;YAC/B,IAAII,KAAK,CAAC2C,MAAM,GAAG/C,CAAC,GAAG,CAAC,EAAE;cACxB,IAAI,CAACqC,eAAA,CAAAW,SAAA,CAAahD,CAAC,EAAdO,GAAG,CAAC6B,QAAQ,CAAI,CAACa,UAAU,EAAE;gBAChC,OAAO,KAAK;cACd;YACF,CAAC,MAAM;cACL,MAAM/B,KAAK,GAAGmB,eAAA,CAAAW,SAAA,CAAShD,CAAC,EAAVoC,QAAQ,CAAI;cAC1B,IAAI,CAAClB,KAAK,CAAChB,EAAE,CAACE,KAAK,CAACJ,CAAC,CAAC,CAAC,EAAE;gBACvB,OAAO,KAAK;cACd;YACF;UACF;UAEA,IAAIyC,YAAY,CAACM,MAAM,GAAG,CAAC,EAAE;YAC3B,MAAMG,IAAI,GAAGb,eAAA,CAAAc,UAAA,CAAAV,YAAY,CAAY;YACrC,MAAMW,IAAI,GAAAf,eAAA,CAAAe,IAAA,CAAGX,YAAY,CAAK;YAC9B,OAAOzC,CAAC,GAAGI,KAAK,CAAC2C,MAAM,GAAGK,IAAI,CAACL,MAAM,EAAE/C,CAAC,EAAE,EAAE;cAC1C,IAAI,CAACkD,IAAI,CAAChD,EAAE,CAACE,KAAK,CAACJ,CAAC,CAAC,CAAC,EAAE;gBACtB,OAAO,KAAK;cACd;YACF;YACA,KAAK,IAAIqD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,IAAI,CAACL,MAAM,EAAEM,CAAC,EAAE,EAAE;cACpCrD,CAAC,IAAIqD,CAAC;cACN,IAAIjD,KAAK,CAAC2C,MAAM,GAAG/C,CAAC,GAAG,CAAC,EAAE;gBACxB,OAAO,KAAK;cACd;cACA,MAAMkB,KAAK,GAAGmB,eAAA,CAAAW,SAAA,CAAKK,CAAC,EAAND,IAAI,CAAI;cACtB,IAAI,CAAClC,KAAK,CAAChB,EAAE,CAACE,KAAK,CAACJ,CAAC,CAAC,CAAC,EAAE;gBACvB,OAAO,KAAK;cACd;YACF;UACF;UAEA,OAAO,IAAI;QACb,CAAC,CAAC;MACJ;IACA;MAAyB;QACvB,IAAIO,GAAG,CAAC+C,kBAAkB,CAACP,MAAM,KAAK,CAAC,IAAIxC,GAAG,CAACgD,eAAe,CAACR,MAAM,KAAK,CAAC,EAAE;UAC3E,OAAOrC,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAA2CA,KAAK,KAAK,IAAI,CAAC;QAC/E;QACA,MAAMoD,sBAAsB,GAAGnB,eAAA,CAAAC,GAAA,CAA4BmB,EAAE,IAAKnD,MAAM,CAACmD,EAAE,CAACjB,IAAI,CAAC,EAAlDjC,GAAG,CAAC+C,kBAAkB,CAA6B;QAClF,MAAMC,eAAe,GAAUlB,eAAA,CAAAC,GAAA,CAAyBpC,EAAE,IAAK,CAACI,MAAM,CAACJ,EAAE,CAACwD,SAAS,CAAC,EAAEpD,MAAM,CAACJ,EAAE,CAACsC,IAAI,CAAC,CAAU,EAAhFjC,GAAG,CAACgD,eAAe,CAA8D;QAChH,OAAO7C,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAkB;UACnC,IAAI,CAAC,IAAAuD,oBAAQ,EAACvD,KAAK,CAAC,EAAE;YACpB,OAAO,KAAK;UACd;UAEA,MAAMwD,YAAY,GAAQ,EAAE;UAE5BC,OAAO,CAACC,GAAG,CAACvD,GAAG,CAAC+C,kBAAkB,CAAC;UACnC,KAAK,IAAItD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGwD,sBAAsB,CAACT,MAAM,EAAE/C,CAAC,EAAE,EAAE;YACtD,MAAMyD,EAAE,GAAapB,eAAA,CAAAW,SAAA,CAAuBhD,CAAC,EAAxBO,GAAG,CAAC+C,kBAAkB,CAAI;YAC/C,MAAMpC,KAAK,GAAUmB,eAAA,CAAAW,SAAA,CAAuBhD,CAAC,EAAxBwD,sBAAsB,CAAI;YAC/C,MAAMO,IAAI,GAAWN,EAAE,CAACM,IAAI;YAC5BH,YAAY,CAACG,IAAI,CAAC,GAAG,IAAI;YACzB,IAAI,CAACtE,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAACK,KAAK,EAAE2D,IAAI,CAAC,EAAE;cACtD,IAAI,CAACN,EAAE,CAACR,UAAU,EAAE;gBAClB,OAAO,KAAK;cACd;YACF,CAAC,MAAM;cACL,IAAI,CAAClB,eAAA,CAAA7B,EAAA,CAAME,KAAK,CAAC2D,IAAI,CAAC,EAAjB7C,KAAK,CAAa,EAAE;gBACvB,OAAO,KAAK;cACd;YACF;UACF;UAEA,IAAIqC,eAAe,CAACR,MAAM,GAAG,CAAC,EAAE;YAC9B,KAAK,IAAI/C,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGuD,eAAe,CAACR,MAAM,EAAE/C,CAAC,EAAE,EAAE;cAC/C,MAAM,CAAC0D,SAAS,EAAElB,IAAI,CAAC,GAAGH,eAAA,CAAAW,SAAA,CAAgBhD,CAAC,EAAjBuD,eAAe,CAAI;cAC7C,MAAMS,IAAI,GAAgB,IAAAC,+BAAwB,EAAC7D,KAAK,EAAEiC,eAAA,CAAAW,SAAA,CAAoBhD,CAAC,EAArBO,GAAG,CAACgD,eAAe,CAAI,CAACG,SAAS,CAAC;cAC5F,KAAK,MAAMQ,GAAG,IAAIF,IAAI,EAAE;gBACtB,IAAIvE,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC6D,YAAY,EAAEM,GAAG,CAAC,EAAE;kBAC3D;gBACF;gBAEA,IAAI,CAACnC,eAAA,CAAA7B,EAAA,CAAUgE,GAAG,EAAbR,SAAS,CAAK,EAAE;kBACnB,OAAO,KAAK;gBACd;gBAEA,IAAI,CAAC3B,eAAA,CAAA7B,EAAA,CAAKE,KAAK,CAAC8D,GAAG,CAAC,EAAf1B,IAAI,CAAY,EAAE;kBACrB,OAAO,KAAK;gBACd;cACF;YACF;UACF;UAEA,OAAO,IAAI;QACb,CAAC,CAAC;MACJ;IACA;MAAmB;QACjB,MAAM2B,UAAU,GAAG,IAAAC,kBAAa,EAAC7D,GAAG,CAAC8D,KAAK,EAAE,IAAI,CAAC;QACjD,MAAMC,OAAO,GAAMC,OAAO,CAACD,OAAO,CAACH,UAAU,CAACH,IAAI,CAAC;QACnD,MAAMQ,GAAG,GAAUF,OAAO,CAACvB,MAAM;QACjC,MAAM0B,SAAS,GAAIN,UAAU,CAACM,SAAS;QACvC,MAAMnC,GAAG,GAAU,IAAIoC,GAAG,EAAmB;QAC7CrC,eAAA,CAAAsC,OAAA,CAAmBpE,GAAG,IAAI;UACxB+B,GAAG,CAACrC,GAAG,CAACM,GAAG,EAAED,MAAM,CAACC,GAAG,CAAC,CAAC;QAC3B,CAAC,EAFDA,GAAG,CAAC8D,KAAK,CAEP;QACF,OAAO3D,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAkB;UACnC,IAAIoE,GAAG,GAAG,CAAC,EAAE;YACX,IAAI,IAAAb,oBAAQ,EAACvD,KAAK,CAAC,EAAE;cACnB,KAAK,IAAIJ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGwE,GAAG,EAAExE,CAAC,EAAE,EAAE;gBAC5B,MAAM+D,IAAI,GAAMO,OAAO,CAACtE,CAAC,CAAE;gBAC3B,MAAM4E,OAAO,GAAGT,UAAU,CAACH,IAAI,CAACD,IAAI,CAAE,CAACa,OAAO;gBAC9C,IAAInF,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAACK,KAAK,EAAE2D,IAAI,CAAC,EAAE;kBACrD,MAAMtC,OAAO,GAAGoD,MAAM,CAACzE,KAAK,CAAC2D,IAAI,CAAC,CAAC;kBACnC,IAAItE,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC6E,OAAO,EAAEnD,OAAO,CAAC,EAAE;oBAC1D,MAAMqD,MAAM,GAAuBF,OAAO,CAACnD,OAAO,CAAE;oBACpD,KAAK,IAAIzB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG8E,MAAM,CAAC/B,MAAM,EAAE/C,CAAC,EAAE,EAAE;sBACtC,IAAI+B,eAAA,CAAA7B,EAAA,CAAoBE,KAAK,EAAzBkC,GAAG,CAACjD,GAAG,CAACyF,MAAM,CAAC9E,CAAC,CAAC,CAAE,CAAO,EAAE;wBAC9B,OAAO,IAAI;sBACb;oBACF;kBACF;gBACF;cACF;YACF;UACF;UACA,KAAK,IAAIA,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGyE,SAAS,CAAC1B,MAAM,EAAE/C,CAAC,EAAE,EAAE;YACzC,IAAI+B,eAAA,CAAA7B,EAAA,CAAuBE,KAAK,EAA5BkC,GAAG,CAACjD,GAAG,CAACoF,SAAS,CAACzE,CAAC,CAAC,CAAE,CAAO,EAAE;cACjC,OAAO,IAAI;YACb;UACF;UACA,OAAO,KAAK;QACd,CAAC,CAAC;MACJ;IACA;MAAkB;QAChB,MAAM+E,CAAC,GAAKA,CAAA,KAAMzE,MAAM,CAACC,GAAG,CAACyE,MAAM,EAAE,CAAC;QACtC,MAAM3F,GAAG,GAAG,IAAA4F,cAAO,EAAmBF,CAAC,CAAC;QACxC,OAAOrE,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAmB2B,eAAA,CAAA7B,EAAA,CAAME,KAAK,EAAXf,GAAG,EAAE,CAAO,CAAC;MACrD;IACA;MAAkB;QAChB,OAAOqB,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAmBiC,eAAA,CAAA6C,IAAA,CAAe,CAAC,CAACC,CAAC,EAAE1E,KAAK,CAAC,KAAKA,KAAK,KAAKL,KAAK,EAA9CG,GAAG,CAAC6E,KAAK,CAAsC,CAAC;MACxF;IACA;MAAwB;QACtB,MAAMC,IAAI,GAAG/E,MAAM,CAACC,GAAG,CAAC8E,IAAI,CAAC;QAC7B,OAAO3E,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAkB;UACnC,IAAI,CAAC2B,eAAA,CAAA7B,EAAA,CAAKE,KAAK,EAAViF,IAAI,CAAO,EAAE;YAChB,OAAO,KAAK;UACd;UACA,IAAI,CAAC9E,GAAG,CAAC+E,SAAS,CAAClF,KAAK,CAAC,EAAE;YACzB,OAAO,KAAK;UACd;UACA,OAAO,IAAI;QACb,CAAC,CAAC;MACJ;IACA;MAAuB;QACrB,OAAOE,MAAM,CAACC,GAAG,CAACgF,EAAE,CAAC;MACvB;IACA;MAAwB;QACtB,MAAMF,IAAI,GAAG/E,MAAM,CAACC,GAAG,CAAC8E,IAAI,CAAC;QAC7B,OAAO3E,eAAA,CAAAC,SAAA,CAAOP,KAAK,IAAkB;UACnC,IAAI,CAAC2B,eAAA,CAAA7B,EAAA,CAAKE,KAAK,EAAViF,IAAI,CAAO,EAAE;YAChB,OAAO,KAAK;UACd;UACA,KAAK,MAAMG,UAAU,IAAIjF,GAAG,CAACiF,UAAU,EAAE;YACvC,IAAI,CAACA,UAAU,CAACC,QAAQ,CAACrF,KAAK,CAAC,EAAE;cAC/B,OAAO,KAAK;YACd;UACF;UACA,OAAO,IAAI;QACb,CAAC,CAAC;MACJ;EACF;AACF"}
@@ -3,11 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.UnionMemberError = exports.UnexpectedError = exports.TypeError = exports.MissingError = exports.KeyError = exports.IndexError = void 0;
6
+ exports.UnionMemberError = exports.UnexpectedError = exports.TypeError = exports.TransformationError = exports.RefinementError = exports.MissingError = exports.KeyError = exports.IndexError = void 0;
7
7
  exports.format = format;
8
8
  exports.indexError = indexError;
9
9
  exports.keyError = keyError;
10
10
  exports.missingError = void 0;
11
+ exports.refinementError = refinementError;
12
+ exports.transformationError = transformationError;
11
13
  exports.typeError = typeError;
12
14
  exports.unexpectedError = unexpectedError;
13
15
  exports.unionMemberError = unionMemberError;
@@ -70,7 +72,7 @@ class KeyError {
70
72
  }
71
73
  }
72
74
  /**
73
- * @tsplus static fncts.schema.ParseError.IndexError __call
75
+ * @tsplus static fncts.schema.ParseError.KeyError __call
74
76
  * @tsplus static fncts.schema.ParseErrorOps KeyError
75
77
  */
76
78
  exports.KeyError = KeyError;
@@ -124,6 +126,46 @@ exports.UnionMemberError = UnionMemberError;
124
126
  function unionMemberError(errors) {
125
127
  return new UnionMemberError(errors);
126
128
  }
129
+ /**
130
+ * @tsplus companion fncts.schema.ParseError.RefinementError
131
+ */
132
+ class RefinementError {
133
+ constructor(ast, actual, kind, errors) {
134
+ this.ast = ast;
135
+ this.actual = actual;
136
+ this.kind = kind;
137
+ this.errors = errors;
138
+ this._tag = 6 /* ParseErrorTag.Refinement */;
139
+ }
140
+ }
141
+ /**
142
+ * @tsplus static fncts.schema.ParseError.RefinementError __call
143
+ * @tsplus static fncts.schema.ParseErrorOps RefinementError
144
+ */
145
+ exports.RefinementError = RefinementError;
146
+ function refinementError(ast, actual, kind, errors) {
147
+ return new RefinementError(ast, actual, kind, errors);
148
+ }
149
+ /**
150
+ * @tsplus companion fncts.schema.ParseError.TransformationError
151
+ */
152
+ class TransformationError {
153
+ constructor(ast, actual, kind, errors) {
154
+ this.ast = ast;
155
+ this.actual = actual;
156
+ this.kind = kind;
157
+ this.errors = errors;
158
+ this._tag = 7 /* ParseErrorTag.Transformation */;
159
+ }
160
+ }
161
+ /**
162
+ * @tsplus static fncts.schema.ParseError.TransformationError __call
163
+ * @tsplus static fncts.schema.ParseErrorOps TransformationError
164
+ */
165
+ exports.TransformationError = TransformationError;
166
+ function transformationError(ast, actual, kind, errors) {
167
+ return new TransformationError(ast, actual, kind, errors);
168
+ }
127
169
  /**
128
170
  * @tsplus static fncts.schema.ParseErrorOps format
129
171
  */
@@ -146,8 +188,36 @@ function formatTemplateLiteralSpan(span) {
146
188
  function formatTemplateLiteral(ast) {
147
189
  return ast.head + tsplus_module_1.join("")(tsplus_module_1.map(span => formatTemplateLiteralSpan(span) + span.literal)(ast.spans));
148
190
  }
191
+ function formatRefinementKind(error) {
192
+ switch (error.kind) {
193
+ case "From":
194
+ {
195
+ return "From side refinement failure";
196
+ }
197
+ case "Predicate":
198
+ {
199
+ return "Predicate refinement failure";
200
+ }
201
+ }
202
+ }
203
+ function formatTransformationKind(error) {
204
+ switch (error.kind) {
205
+ case "Encoded":
206
+ {
207
+ return "Encoded side transformation failure";
208
+ }
209
+ case "Transformation":
210
+ {
211
+ return "Transformation process failure";
212
+ }
213
+ case "Type":
214
+ {
215
+ return "Type side transformation failure";
216
+ }
217
+ }
218
+ }
149
219
  function getExpected(ast) {
150
- return tsplus_module_6.flatMap(title => tsplus_module_5.match(() => tsplus_module_3.just(title, fileName_1 + ":162:19"), description => tsplus_module_3.just(`${title} (${description})`, fileName_1 + ":163:30"))(ast.annotations.get(tsplus_module_4.Description)))(tsplus_module_6.orElse(() => ast.annotations.get(tsplus_module_4.Title))(ast.annotations.get(tsplus_module_4.Identifier)));
220
+ return tsplus_module_6.flatMap(title => tsplus_module_5.match(() => tsplus_module_3.just(title, fileName_1 + ":242:19"), description => tsplus_module_3.just(`${title} (${description})`, fileName_1 + ":243:30"))(ast.annotations.get(tsplus_module_4.Description)))(tsplus_module_6.orElse(() => ast.annotations.get(tsplus_module_4.Title))(ast.annotations.get(tsplus_module_4.Identifier)));
151
221
  }
152
222
  function getMissedBrands(ast) {
153
223
  return tsplus_module_1.join(" & ")(tsplus_module_1.map(validation => validation.name)(ast.validation));
@@ -217,6 +287,10 @@ function go(error) {
217
287
  return tsplus_module_2.make("is missing");
218
288
  case 5 /* ParseErrorTag.UnionMember */:
219
289
  return tsplus_module_2.make("union member", tsplus_module_1.map(go)(error.errors));
290
+ case 6 /* ParseErrorTag.Refinement */:
291
+ return tsplus_module_2.make(formatRefinementKind(error), tsplus_module_1.map(go)(error.errors));
292
+ case 7 /* ParseErrorTag.Transformation */:
293
+ return tsplus_module_2.make(formatTransformationKind(error), tsplus_module_1.map(go)(error.errors));
220
294
  }
221
295
  }
222
296
  //# sourceMappingURL=ParseError.cjs.map