@fncts/schema 0.0.24 → 0.0.25

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 (135) hide show
  1. package/LICENSE +26 -0
  2. package/_cjs/AST.cjs +1093 -1226
  3. package/_cjs/AST.cjs.map +1 -1
  4. package/_cjs/ASTAnnotation.cjs +114 -85
  5. package/_cjs/ASTAnnotation.cjs.map +1 -1
  6. package/_cjs/ASTAnnotationMap.cjs +43 -41
  7. package/_cjs/ASTAnnotationMap.cjs.map +1 -1
  8. package/_cjs/Eq.cjs +113 -145
  9. package/_cjs/Eq.cjs.map +1 -1
  10. package/_cjs/Gen.cjs +131 -167
  11. package/_cjs/Gen.cjs.map +1 -1
  12. package/_cjs/Guard.cjs +167 -267
  13. package/_cjs/Guard.cjs.map +1 -1
  14. package/_cjs/InvalidInterpretationError.cjs +9 -10
  15. package/_cjs/InvalidInterpretationError.cjs.map +1 -1
  16. package/_cjs/ParseError/ParseError.cjs +283 -284
  17. package/_cjs/ParseError/ParseError.cjs.map +1 -1
  18. package/_cjs/ParseError/ParseErrorFormatter.cjs +0 -2
  19. package/_cjs/ParseError/PathFormatter.cjs +55 -87
  20. package/_cjs/ParseError/PathFormatter.cjs.map +1 -1
  21. package/_cjs/ParseError/TreeFormatter.cjs +70 -102
  22. package/_cjs/ParseError/TreeFormatter.cjs.map +1 -1
  23. package/_cjs/ParseError.cjs +35 -50
  24. package/_cjs/ParseResult.cjs +15 -15
  25. package/_cjs/ParseResult.cjs.map +1 -1
  26. package/_cjs/Parser/api.cjs +54 -50
  27. package/_cjs/Parser/api.cjs.map +1 -1
  28. package/_cjs/Parser/definition.cjs +17 -16
  29. package/_cjs/Parser/definition.cjs.map +1 -1
  30. package/_cjs/Parser/interpreter.cjs +276 -358
  31. package/_cjs/Parser/interpreter.cjs.map +1 -1
  32. package/_cjs/Parser.cjs +12 -39
  33. package/_cjs/Schema/api/conc.cjs +64 -59
  34. package/_cjs/Schema/api/conc.cjs.map +1 -1
  35. package/_cjs/Schema/api/either.cjs +73 -72
  36. package/_cjs/Schema/api/either.cjs.map +1 -1
  37. package/_cjs/Schema/api/hashMap.cjs +85 -85
  38. package/_cjs/Schema/api/hashMap.cjs.map +1 -1
  39. package/_cjs/Schema/api/hashSet.cjs +75 -69
  40. package/_cjs/Schema/api/hashSet.cjs.map +1 -1
  41. package/_cjs/Schema/api/list.cjs +74 -66
  42. package/_cjs/Schema/api/list.cjs.map +1 -1
  43. package/_cjs/Schema/api/map.cjs +81 -83
  44. package/_cjs/Schema/api/map.cjs.map +1 -1
  45. package/_cjs/Schema/api/maybe.cjs +56 -49
  46. package/_cjs/Schema/api/maybe.cjs.map +1 -1
  47. package/_cjs/Schema/api/set.cjs +68 -61
  48. package/_cjs/Schema/api/set.cjs.map +1 -1
  49. package/_cjs/Schema/api.cjs +332 -350
  50. package/_cjs/Schema/api.cjs.map +1 -1
  51. package/_cjs/Schema/definition.cjs +28 -26
  52. package/_cjs/Schema/definition.cjs.map +1 -1
  53. package/_cjs/Schema/derivations.cjs +85 -100
  54. package/_cjs/Schema/derivations.cjs.map +1 -1
  55. package/_cjs/Schema.cjs +95 -127
  56. package/_cjs/Show.cjs +91 -151
  57. package/_cjs/Show.cjs.map +1 -1
  58. package/_cjs/chunk.cjs +28 -0
  59. package/_cjs/global.cjs +0 -2
  60. package/_cjs/index.cjs +0 -2
  61. package/_cjs/utils.cjs +41 -46
  62. package/_cjs/utils.cjs.map +1 -1
  63. package/_mjs/AST.mjs +996 -1161
  64. package/_mjs/AST.mjs.map +1 -1
  65. package/_mjs/ASTAnnotation.mjs +77 -73
  66. package/_mjs/ASTAnnotation.mjs.map +1 -1
  67. package/_mjs/ASTAnnotationMap.mjs +31 -29
  68. package/_mjs/ASTAnnotationMap.mjs.map +1 -1
  69. package/_mjs/Eq.mjs +101 -134
  70. package/_mjs/Eq.mjs.map +1 -1
  71. package/_mjs/Gen.mjs +117 -157
  72. package/_mjs/Gen.mjs.map +1 -1
  73. package/_mjs/Guard.mjs +154 -257
  74. package/_mjs/Guard.mjs.map +1 -1
  75. package/_mjs/InvalidInterpretationError.mjs +8 -4
  76. package/_mjs/InvalidInterpretationError.mjs.map +1 -1
  77. package/_mjs/ParseError/ParseError.mjs +266 -262
  78. package/_mjs/ParseError/ParseError.mjs.map +1 -1
  79. package/_mjs/ParseError/ParseErrorFormatter.mjs +0 -2
  80. package/_mjs/ParseError/PathFormatter.mjs +51 -80
  81. package/_mjs/ParseError/PathFormatter.mjs.map +1 -1
  82. package/_mjs/ParseError/TreeFormatter.mjs +62 -94
  83. package/_mjs/ParseError/TreeFormatter.mjs.map +1 -1
  84. package/_mjs/ParseError.mjs +5 -6
  85. package/_mjs/ParseResult.mjs +13 -9
  86. package/_mjs/ParseResult.mjs.map +1 -1
  87. package/_mjs/Parser/api.mjs +43 -39
  88. package/_mjs/Parser/api.mjs.map +1 -1
  89. package/_mjs/Parser/definition.mjs +12 -8
  90. package/_mjs/Parser/definition.mjs.map +1 -1
  91. package/_mjs/Parser/interpreter.mjs +262 -348
  92. package/_mjs/Parser/interpreter.mjs.map +1 -1
  93. package/_mjs/Parser.mjs +4 -5
  94. package/_mjs/Schema/api/conc.mjs +41 -45
  95. package/_mjs/Schema/api/conc.mjs.map +1 -1
  96. package/_mjs/Schema/api/either.mjs +55 -61
  97. package/_mjs/Schema/api/either.mjs.map +1 -1
  98. package/_mjs/Schema/api/hashMap.mjs +61 -71
  99. package/_mjs/Schema/api/hashMap.mjs.map +1 -1
  100. package/_mjs/Schema/api/hashSet.mjs +53 -56
  101. package/_mjs/Schema/api/hashSet.mjs.map +1 -1
  102. package/_mjs/Schema/api/list.mjs +50 -53
  103. package/_mjs/Schema/api/list.mjs.map +1 -1
  104. package/_mjs/Schema/api/map.mjs +59 -69
  105. package/_mjs/Schema/api/map.mjs.map +1 -1
  106. package/_mjs/Schema/api/maybe.mjs +34 -36
  107. package/_mjs/Schema/api/maybe.mjs.map +1 -1
  108. package/_mjs/Schema/api/set.mjs +47 -48
  109. package/_mjs/Schema/api/set.mjs.map +1 -1
  110. package/_mjs/Schema/api.mjs +304 -346
  111. package/_mjs/Schema/api.mjs.map +1 -1
  112. package/_mjs/Schema/definition.mjs +21 -17
  113. package/_mjs/Schema/definition.mjs.map +1 -1
  114. package/_mjs/Schema/derivations.mjs +71 -90
  115. package/_mjs/Schema/derivations.mjs.map +1 -1
  116. package/_mjs/Schema.mjs +12 -15
  117. package/_mjs/Show.mjs +79 -139
  118. package/_mjs/Show.mjs.map +1 -1
  119. package/_mjs/global.mjs +0 -2
  120. package/_mjs/index.mjs +0 -2
  121. package/_mjs/utils.mjs +35 -37
  122. package/_mjs/utils.mjs.map +1 -1
  123. package/package.json +7 -3
  124. package/_cjs/ParseError/ParseErrorFormatter.cjs.map +0 -1
  125. package/_cjs/ParseError.cjs.map +0 -1
  126. package/_cjs/Parser.cjs.map +0 -1
  127. package/_cjs/Schema.cjs.map +0 -1
  128. package/_cjs/global.cjs.map +0 -1
  129. package/_cjs/index.cjs.map +0 -1
  130. package/_mjs/ParseError/ParseErrorFormatter.mjs.map +0 -1
  131. package/_mjs/ParseError.mjs.map +0 -1
  132. package/_mjs/Parser.mjs.map +0 -1
  133. package/_mjs/Schema.mjs.map +0 -1
  134. package/_mjs/global.mjs.map +0 -1
  135. package/_mjs/index.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"interpreter.mjs","names":["globalValue","isBigInt","isBoolean","isNumber","isObject","isRecord","isString","isSymbol","isUndefined","concrete","getSearchTree","DeclarationError","RefinementError","TransformationError","getKeysForIndexSignature","getTemplateLiteralRegex","memoize","ownKeys","decodeMemoMap","Symbol","for","WeakMap","encodeMemoMap","goMemo","ast","isDecoding","memoMap","memo","get","parser","go","set","_tag","parse","decode","typeParameters","encode","tsplus_module_2","make","input","options","tsplus_module_1","mapLeft","error","fromRefinement","u","literal","symbol","_","tsplus_module_3","succeed","tsplus_module_4","some","value","enums","regex","test","elements","map","e","type","rest","tsplus_module_5","Array","isArray","fail","tsplus_module_7","typeError","tsplus_module_6","unknownArray","output","errors","emptyPushable","allErrors","i","length","unsafeGet","isOptional","indexError","missingError","tsplus_module_8","push","tupleError","vector","t","isLeft","left","right","tsplus_module_9","isJust","head","unsafeHead","tail","j","isUnexpectedAllowed","unexpectedError","isNonEmpty","propertySignatures","indexSignatures","propertySignatureTypes","f","is","parameter","unknownRecord","expectedKeys","ps","name","Object","prototype","hasOwnProperty","call","keyError","createKey","typeLiteralError","keys","key","searchTree","types","Reflect","len","Map","forEach","candidates","buckets","String","concat","literals","createUnion","from","createTypeLiteral","createPropertySignature","otherwise","candidate","pr","isRight","unionMemberError","unionError","neverKeyword","getAST","a","flatMap","failure","refinementError","to","getTo","transformation","transformationError","missedBrands","validation","validate","createValidation","annotations","parserFor"],"sources":["../../_src/Parser/interpreter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"interpreter.mjs","names":[],"sources":["../../esm/Parser/interpreter.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_2 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_3 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_4 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_5 from \"@fncts/base/data/Maybe/api\";\nimport * as tsplus_module_6 from \"@fncts/schema/AST\";\nimport * as tsplus_module_7 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_8 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_9 from \"@fncts/base/data/Maybe/definition\";\nimport { globalValue } from \"@fncts/base/data/Global\";\nimport { isBigInt, isBoolean, isNumber, isObject, isRecord, isString, isSymbol, isUndefined, } from \"@fncts/base/util/predicates\";\nimport { concrete, getSearchTree } from \"../AST.js\";\nimport { DeclarationError, RefinementError, TransformationError } from \"../ParseError/ParseError.js\";\nimport { getKeysForIndexSignature, getTemplateLiteralRegex, memoize, ownKeys } from \"../utils.js\";\nconst decodeMemoMap = globalValue(Symbol.for(\"fncts.schema.Parser.decodeMemoMap\"), () => new WeakMap());\nconst encodeMemoMap = globalValue(Symbol.for(\"fncts.schema.Parser.encodeMemoMap\"), () => new WeakMap());\nfunction goMemo(ast, isDecoding) {\n const memoMap = isDecoding ? decodeMemoMap : encodeMemoMap;\n const memo = memoMap.get(ast);\n if (memo) {\n return memo;\n }\n const parser = go(ast, isDecoding);\n memoMap.set(ast, parser);\n return parser;\n}\nfunction go(ast, isDecoding) {\n void 0;\n switch (ast._tag) {\n case 0 /* ASTTag.Declaration */: {\n const parse = isDecoding ? ast.decode(...ast.typeParameters) : ast.encode(...ast.typeParameters);\n return tsplus_module_2.make((input, options) => tsplus_module_1.mapLeft((error) => new DeclarationError(ast, input, error))(parse(input, options)));\n }\n case 1 /* ASTTag.Literal */:\n return tsplus_module_2.fromRefinement(ast, (u) => u === ast.literal);\n case 2 /* ASTTag.UniqueSymbol */:\n return tsplus_module_2.fromRefinement(ast, (u) => u === ast.symbol);\n case 3 /* ASTTag.UndefinedKeyword */:\n case 4 /* ASTTag.VoidKeyword */:\n return tsplus_module_2.fromRefinement(ast, isUndefined);\n case 5 /* ASTTag.NeverKeyword */:\n return tsplus_module_2.fromRefinement(ast, (_) => false);\n case 6 /* ASTTag.UnknownKeyword */:\n case 7 /* ASTTag.AnyKeyword */:\n return tsplus_module_2.make(tsplus_module_3.succeed);\n case 8 /* ASTTag.StringKeyword */:\n return tsplus_module_2.fromRefinement(ast, isString);\n case 9 /* ASTTag.NumberKeyword */:\n return tsplus_module_2.fromRefinement(ast, isNumber);\n case 10 /* ASTTag.BooleanKeyword */:\n return tsplus_module_2.fromRefinement(ast, isBoolean);\n case 11 /* ASTTag.BigIntKeyword */:\n return tsplus_module_2.fromRefinement(ast, isBigInt);\n case 12 /* ASTTag.SymbolKeyword */:\n return tsplus_module_2.fromRefinement(ast, isSymbol);\n case 13 /* ASTTag.ObjectKeyword */:\n return tsplus_module_2.fromRefinement(ast, isObject);\n case 14 /* ASTTag.Enum */:\n return tsplus_module_2.fromRefinement(ast, (u) => tsplus_module_4.some(([_, value]) => value === u)(ast.enums));\n case 15 /* ASTTag.TemplateLiteral */: {\n const regex = getTemplateLiteralRegex(ast);\n return tsplus_module_2.fromRefinement(ast, (u) => isString(u) && regex.test(u));\n }\n case 16 /* ASTTag.Tuple */: {\n const elements = tsplus_module_4.map((e) => goMemo(e.type, isDecoding))(ast.elements);\n const rest = tsplus_module_5.map((rest) => tsplus_module_4.map((ast) => goMemo(ast, isDecoding))(rest))(ast.rest);\n return tsplus_module_2.make((input, options) => {\n if (!Array.isArray(input)) {\n return tsplus_module_3.fail(tsplus_module_7.typeError(tsplus_module_6.unknownArray, input));\n }\n const output = [];\n const errors = tsplus_module_4.emptyPushable();\n const allErrors = options?.allErrors;\n let i = 0;\n for (; i < elements.length; i++) {\n if (input.length < i + 1) {\n if (!tsplus_module_4.unsafeGet(i)(ast.elements).isOptional) {\n const e = tsplus_module_7.indexError(i, tsplus_module_7.missingError);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n }\n else {\n const parser = tsplus_module_4.unsafeGet(i)(elements);\n const t = parser(input[i], options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.indexError(i, t.left);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n output.push(t.right);\n }\n }\n if (tsplus_module_9.isJust(rest)) {\n const head = tsplus_module_4.unsafeHead(rest.value);\n const tail = tsplus_module_4.tail(rest.value);\n for (; i < input.length - tail.length; i++) {\n const t = head(input[i], options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.indexError(i, t.left);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n output.push(t.right);\n }\n for (let j = 0; j < tail.length; j++) {\n i += j;\n if (input.length < i + 1) {\n const e = tsplus_module_7.indexError(i, tsplus_module_7.missingError);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n else {\n const t = tsplus_module_4.unsafeGet(j)(tail)(input[i], options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.indexError(i, t.left);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n output.push(t.right);\n }\n }\n }\n else {\n const isUnexpectedAllowed = options?.isUnexpectedAllowed;\n for (; i < input.length; i++) {\n const e = tsplus_module_7.indexError(i, tsplus_module_7.unexpectedError(input[i]));\n if (!isUnexpectedAllowed) {\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n }\n }\n return tsplus_module_4.isNonEmpty(errors)\n ? tsplus_module_3.fail(tsplus_module_7.tupleError(ast, input, errors, output))\n : tsplus_module_3.succeed(output);\n });\n }\n case 17 /* ASTTag.TypeLiteral */: {\n if (ast.propertySignatures.length === 0 && ast.indexSignatures.length === 0) {\n return tsplus_module_2.fromRefinement(ast, (u) => u !== null);\n }\n const propertySignatureTypes = tsplus_module_4.map((f) => goMemo(f.type, isDecoding))(ast.propertySignatures);\n const indexSignatures = tsplus_module_4.map((is) => [goMemo(is.parameter, isDecoding), goMemo(is.type, isDecoding)])(ast.indexSignatures);\n return tsplus_module_2.make((input, options) => {\n if (!isRecord(input)) {\n return tsplus_module_3.fail(tsplus_module_7.typeError(tsplus_module_6.unknownRecord, input));\n }\n const output = {};\n const expectedKeys = {};\n const errors = tsplus_module_4.emptyPushable();\n const allErrors = options?.allErrors;\n for (let i = 0; i < propertySignatureTypes.length; i++) {\n const ps = tsplus_module_4.unsafeGet(i)(ast.propertySignatures);\n const parser = tsplus_module_4.unsafeGet(i)(propertySignatureTypes);\n const name = ps.name;\n expectedKeys[name] = null;\n if (!Object.prototype.hasOwnProperty.call(input, name)) {\n if (!ps.isOptional) {\n const e = tsplus_module_7.keyError(tsplus_module_6.createKey(name), name, tsplus_module_7.missingError);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n }\n else {\n const t = parser(input[name], options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.keyError(tsplus_module_6.createKey(name), name, t.left);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n output[name] = t.right;\n }\n }\n if (indexSignatures.length > 0) {\n for (let i = 0; i < indexSignatures.length; i++) {\n const [parameter, type] = tsplus_module_4.unsafeGet(i)(indexSignatures);\n const keys = getKeysForIndexSignature(input, tsplus_module_4.unsafeGet(i)(ast.indexSignatures).parameter);\n for (const key of keys) {\n if (Object.prototype.hasOwnProperty.call(expectedKeys, key)) {\n continue;\n }\n let t = parameter(key, options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.keyError(tsplus_module_6.createKey(key), key, t.left);\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n t = type(input[key], options);\n void 0;\n if (tsplus_module_1.isLeft(t)) {\n const e = tsplus_module_7.keyError(tsplus_module_6.createKey(key), key, t.left);\n tsplus_module_8.push(e)(errors);\n if (allErrors) {\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n output[key] = t.right;\n }\n }\n }\n else {\n const isUnexpectedAllowed = options?.isUnexpectedAllowed;\n for (const key of ownKeys(input)) {\n if (!Object.prototype.hasOwnProperty.call(expectedKeys, key)) {\n if (!isUnexpectedAllowed) {\n const e = tsplus_module_7.keyError(tsplus_module_6.createKey(key), key, tsplus_module_7.unexpectedError(input[key]));\n if (allErrors) {\n tsplus_module_8.push(e)(errors);\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, tsplus_module_4.vector(e), output));\n }\n }\n }\n }\n }\n return tsplus_module_4.isNonEmpty(errors)\n ? tsplus_module_3.fail(tsplus_module_7.typeLiteralError(ast, input, errors, output))\n : tsplus_module_3.succeed(output);\n });\n }\n case 18 /* ASTTag.Union */: {\n const searchTree = getSearchTree(ast.types, isDecoding);\n const ownKeys = Reflect.ownKeys(searchTree.keys);\n const len = ownKeys.length;\n const map = new Map();\n tsplus_module_4.forEach((ast) => {\n map.set(ast, goMemo(ast, isDecoding));\n })(ast.types);\n return tsplus_module_2.make((input, options) => {\n const errors = tsplus_module_4.emptyPushable();\n let candidates = [];\n if (len > 0) {\n if (isRecord(input)) {\n for (let i = 0; i < len; i++) {\n const name = ownKeys[i];\n const buckets = searchTree.keys[name].buckets;\n if (Object.prototype.hasOwnProperty.call(input, name)) {\n const literal = String(input[name]);\n if (Object.prototype.hasOwnProperty.call(buckets, literal)) {\n candidates = candidates.concat(buckets[literal]);\n }\n else {\n const literals = tsplus_module_6.createUnion(tsplus_module_4.from(searchTree.keys[name].literals));\n tsplus_module_8.push(tsplus_module_7.typeLiteralError(tsplus_module_6.createTypeLiteral(tsplus_module_4.vector(tsplus_module_6.createPropertySignature(name, literals, false, true)), tsplus_module_4.vector()), input, tsplus_module_4.vector(tsplus_module_7.keyError(tsplus_module_6.createKey(name), name, tsplus_module_7.typeError(searchTree.keys[name].ast, input[name])))))(errors);\n }\n }\n else {\n const literals = tsplus_module_6.createUnion(tsplus_module_4.from(searchTree.keys[name].literals));\n tsplus_module_8.push(tsplus_module_7.typeLiteralError(tsplus_module_6.createTypeLiteral(tsplus_module_4.vector(tsplus_module_6.createPropertySignature(name, literals, false, true)), tsplus_module_4.vector()), input, tsplus_module_4.vector(tsplus_module_7.keyError(tsplus_module_6.createKey(name), name, tsplus_module_7.missingError))))(errors);\n }\n }\n }\n else {\n tsplus_module_8.push(tsplus_module_7.typeError(tsplus_module_6.unknownRecord, input))(errors);\n }\n }\n if (searchTree.otherwise.length > 0) {\n candidates = candidates.concat(searchTree.otherwise);\n }\n for (let i = 0; i < candidates.length; i++) {\n const candidate = candidates[i];\n const pr = map.get(candidate)(input, options);\n void 0;\n if (tsplus_module_1.isRight(pr)) {\n return pr;\n }\n else {\n tsplus_module_8.push(tsplus_module_7.unionMemberError(candidate, pr.left))(errors);\n }\n }\n return tsplus_module_4.isNonEmpty(errors)\n ? errors.length === 1 && tsplus_module_4.unsafeGet(0)(errors)._tag === 1 /* ParseErrorTag.Type */\n ? tsplus_module_3.fail(tsplus_module_4.unsafeGet(0)(errors))\n : tsplus_module_3.fail(tsplus_module_7.unionError(ast, input, tsplus_module_4.from(errors)))\n : tsplus_module_3.fail(tsplus_module_7.typeError(tsplus_module_6.neverKeyword, input));\n });\n }\n case 19 /* ASTTag.Lazy */: {\n const f = () => goMemo(ast.getAST(), isDecoding);\n const get = memoize(f);\n return tsplus_module_2.make((a, options) => get()(a, options));\n }\n case 20 /* ASTTag.Refinement */: {\n if (isDecoding) {\n const from = goMemo(ast.from, isDecoding);\n return tsplus_module_2.make((input, options) => tsplus_module_1.flatMap((a) => tsplus_module_1.mapLeft((failure) => tsplus_module_7.refinementError(ast, input, \"Predicate\", failure))(ast.decode(a, options)))(tsplus_module_1.mapLeft((failure) => tsplus_module_7.refinementError(ast, input, \"From\", failure))(from(input, options))));\n }\n else {\n const from = goMemo(ast.from, true);\n const to = goMemo(tsplus_module_6.getTo(ast.from), false);\n return tsplus_module_2.make((input, options) => tsplus_module_1.flatMap((a) => from(a, options))(tsplus_module_1.flatMap((a) => ast.decode(a, options))(to(input, options))));\n }\n }\n case 21 /* ASTTag.Transform */: {\n const transformation = isDecoding ? ast.decode : ast.encode;\n const from = isDecoding ? goMemo(ast.from, true) : goMemo(ast.to, false);\n const to = isDecoding ? goMemo(ast.to, true) : goMemo(ast.from, false);\n return tsplus_module_2.make((input, options) => tsplus_module_1.flatMap((a) => tsplus_module_1.mapLeft((failure) => tsplus_module_7.transformationError(ast, input, isDecoding ? \"Type\" : \"Encoded\", failure))(to(a, options)))(tsplus_module_1.flatMap((a) => tsplus_module_1.mapLeft((failure) => tsplus_module_7.transformationError(ast, input, \"Transformation\", failure))(transformation(a, options)))(tsplus_module_1.mapLeft((failure) => tsplus_module_7.transformationError(ast, input, isDecoding ? \"Encoded\" : \"Type\", failure))(from(input, options)))));\n }\n case 22 /* ASTTag.Validation */: {\n return tsplus_module_2.make((u, options) => {\n const missedBrands = tsplus_module_4.emptyPushable();\n const allErrors = options?.allErrors;\n for (const validation of ast.validation) {\n if (!validation.validate(u)) {\n tsplus_module_8.push(validation)(missedBrands);\n if (allErrors) {\n continue;\n }\n else {\n return tsplus_module_3.fail(tsplus_module_7.typeError(tsplus_module_6.createValidation(ast.from, missedBrands, ast.annotations), u));\n }\n }\n }\n return missedBrands.length > 0\n ? tsplus_module_3.fail(tsplus_module_7.typeError(tsplus_module_6.createValidation(ast.from, missedBrands, ast.annotations), u))\n : tsplus_module_3.succeed(u);\n });\n }\n }\n}\nexport function parserFor(ast, isDecoding) {\n return goMemo(ast, isDecoding);\n}\n//# sourceMappingURL=interpreter.js.map"],"mappings":"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"}
package/_mjs/Parser.mjs CHANGED
@@ -1,5 +1,4 @@
1
- // codegen:start { preset: barrel, include: ./Parser/*.ts }
2
- export * from "./Parser/api.mjs";
3
- export * from "./Parser/definition.mjs";
4
- export * from "./Parser/interpreter.mjs";
5
- //# sourceMappingURL=Parser.mjs.map
1
+ import { parserFor } from "./Parser/interpreter.mjs";
2
+ import { asserts, decode, decodeMaybe, encode, encodeMaybe } from "./Parser/api.mjs";
3
+ import { fromRefinement, make } from "./Parser/definition.mjs";
4
+ export { asserts, decode, decodeMaybe, encode, encodeMaybe, fromRefinement, make, parserFor };
@@ -1,63 +1,59 @@
1
- import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
2
- import * as tsplus_module_2 from "@fncts/schema/Show";
3
1
  import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
4
- import * as tsplus_module_4 from "@fncts/schema/Schema/api";
5
- import * as tsplus_module_5 from "@fncts/base/collection/immutable/Conc/definition";
6
- import * as tsplus_module_6 from "@fncts/base/data/function/api";
7
- import * as tsplus_module_7 from "@fncts/schema/ParseError/ParseError";
2
+ import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
8
3
  import * as tsplus_module_8 from "@fncts/schema/ParseResult";
9
4
  import * as tsplus_module_9 from "@fncts/schema/Parser/api";
10
- import * as tsplus_module_10 from "@fncts/base/data/Either/api";
5
+ import * as tsplus_module_2 from "@fncts/schema/Show";
6
+ import * as tsplus_module_7 from "@fncts/schema/ParseError/ParseError";
11
7
  import * as tsplus_module_11 from "@fncts/base/collection/immutable/Vector/internal";
12
8
  import * as tsplus_module_12 from "@fncts/base/collection/immutable/Conc/constructors";
9
+ import * as tsplus_module_4 from "@fncts/schema/Schema/api";
10
+ import "@fncts/base/data/function/api";
11
+ import * as tsplus_module_5 from "@fncts/base/collection/immutable/Conc/definition";
12
+ import * as tsplus_module_10 from "@fncts/base/data/Either/api";
13
13
  import * as tsplus_module_13 from "@fncts/schema/Parser/definition";
14
14
  import * as tsplus_module_14 from "@fncts/test/control/Gen/api";
15
- export const concFromArray = concFromArray_1;
16
- export function conc(value) {
17
- return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Conc<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), concParser(true), concParser(false))));
15
+ //#region build/esm/Schema/api/conc.js
16
+ const concFromArray = concFromArray_1;
17
+ function conc(value) {
18
+ return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Conc<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), concParser(true), concParser(false))));
18
19
  }
19
20
  /**
20
- * @tsplus static fncts.schema.SchemaOps concFromArray
21
- */
21
+ * @tsplus static fncts.schema.SchemaOps concFromArray
22
+ */
22
23
  function concFromArray_1(value) {
23
- return tsplus_module_4.transform(conc(value), input => tsplus_module_5.fromArray(input), input => tsplus_module_5.toArray(input))(tsplus_module_4.array(value));
24
+ return tsplus_module_4.transform(conc(value), (input) => tsplus_module_5.fromArray(input), (input) => tsplus_module_5.toArray(input))(tsplus_module_4.array(value));
24
25
  }
25
26
  /**
26
- * @tsplus derive fncts.schema.Schema[fncts.Conc]<_> 10
27
- */
28
- export function deriveConc(...[value]) {
29
- return concFromArray_1(value);
27
+ * @tsplus derive fncts.schema.Schema[fncts.Conc]<_> 10
28
+ */
29
+ function deriveConc(...[value]) {
30
+ return concFromArray_1(value);
30
31
  }
31
32
  function concParser(isDecoding) {
32
- return value => {
33
- const schema = conc(value);
34
- return tsplus_module_13.make((u, options) => {
35
- if (!tsplus_module_5.isConc(u)) {
36
- return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));
37
- }
38
- const allErrors = options?.allErrors;
39
- const errors = tsplus_module_3.emptyPushable();
40
- const out = [];
41
- let i = 0;
42
- for (const v of u) {
43
- const parser = isDecoding ? tsplus_module_9.decode(value) : tsplus_module_9.encode(value);
44
- const t = parser(v, options);
45
- void 0;
46
- if (tsplus_module_10.isLeft(t)) {
47
- tsplus_module_11.push(tsplus_module_7.indexError(i, t.left))(errors);
48
- if (!allErrors) {
49
- return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));
50
- }
51
- } else {
52
- out.push(t.right);
53
- }
54
- i++;
55
- }
56
- return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors)) : tsplus_module_8.succeed(tsplus_module_12.from(out));
57
- });
58
- };
33
+ return (value) => {
34
+ const schema = conc(value);
35
+ return tsplus_module_13.make((u, options) => {
36
+ if (!tsplus_module_5.isConc(u)) return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));
37
+ const allErrors = options?.allErrors;
38
+ const errors = tsplus_module_3.emptyPushable();
39
+ const out = [];
40
+ let i = 0;
41
+ for (const v of u) {
42
+ const t = (isDecoding ? tsplus_module_9.decode(value) : tsplus_module_9.encode(value))(v, options);
43
+ if (tsplus_module_10.isLeft(t)) {
44
+ tsplus_module_11.push(tsplus_module_7.indexError(i, t.left))(errors);
45
+ if (!allErrors) return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));
46
+ } else out.push(t.right);
47
+ i++;
48
+ }
49
+ return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors)) : tsplus_module_8.succeed(tsplus_module_12.from(out));
50
+ });
51
+ };
59
52
  }
60
53
  function gen(value) {
61
- return tsplus_module_14.conc(value);
54
+ return tsplus_module_14.conc(value);
62
55
  }
56
+ //#endregion
57
+ export { conc, concFromArray, deriveConc };
58
+
63
59
  //# sourceMappingURL=conc.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"conc.mjs","names":["concFromArray","concFromArray_1","conc","value","tsplus_module_4","annotate","tsplus_module_1","GenHook","gen","Identifier","tsplus_module_2","show","declaration","tsplus_module_3","vector","concParser","transform","input","tsplus_module_5","fromArray","toArray","array","deriveConc","isDecoding","schema","tsplus_module_13","make","u","options","isConc","tsplus_module_8","fail","tsplus_module_7","typeError","ast","allErrors","errors","emptyPushable","out","i","v","parser","tsplus_module_9","decode","encode","t","tsplus_module_10","isLeft","tsplus_module_11","push","indexError","left","iterableError","right","isNonEmpty","succeed","tsplus_module_12","from","tsplus_module_14"],"sources":["../../../_src/Schema/api/conc.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"conc.mjs","names":[],"sources":["../../../esm/Schema/api/conc.js"],"sourcesContent":["import * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/collection/immutable/Conc/definition\";\nimport * as tsplus_module_6 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_7 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_8 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_9 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_10 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_11 from \"@fncts/base/collection/immutable/Vector/internal\";\nimport * as tsplus_module_12 from \"@fncts/base/collection/immutable/Conc/constructors\";\nimport * as tsplus_module_13 from \"@fncts/schema/Parser/definition\";\nimport * as tsplus_module_14 from \"@fncts/test/control/Gen/api\";\nexport const concFromArray = concFromArray_1;\nexport function conc(value) {\n return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `Conc<${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(value), concParser(true), concParser(false))));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps concFromArray\n */\nfunction concFromArray_1(value) {\n return tsplus_module_4.transform(conc(value), (input) => tsplus_module_5.fromArray(input), (input) => tsplus_module_5.toArray(input))(tsplus_module_4.array(value));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.Conc]<_> 10\n */\nexport function deriveConc(...[value]) {\n return concFromArray_1(value);\n}\nfunction concParser(isDecoding) {\n return (value) => {\n const schema = conc(value);\n return tsplus_module_13.make((u, options) => {\n if (!tsplus_module_5.isConc(u)) {\n return tsplus_module_8.fail(tsplus_module_7.typeError(schema.ast, u));\n }\n const allErrors = options?.allErrors;\n const errors = tsplus_module_3.emptyPushable();\n const out = [];\n let i = 0;\n for (const v of u) {\n const parser = isDecoding ? tsplus_module_9.decode(value) : tsplus_module_9.encode(value);\n const t = parser(v, options);\n void 0;\n if (tsplus_module_10.isLeft(t)) {\n tsplus_module_11.push(tsplus_module_7.indexError(i, t.left))(errors);\n if (!allErrors) {\n return tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors));\n }\n }\n else {\n out.push(t.right);\n }\n i++;\n }\n return tsplus_module_3.isNonEmpty(errors)\n ? tsplus_module_8.fail(tsplus_module_7.iterableError(schema.ast, u, errors))\n : tsplus_module_8.succeed(tsplus_module_12.from(out));\n });\n };\n}\nfunction gen(value) {\n return tsplus_module_14.conc(value);\n}\n//# sourceMappingURL=conc.js.map"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAa,gBAAgB;AAC7B,SAAgB,KAAK,OAAO;AACxB,QAAO,gBAAgB,SAAS,gBAAgB,SAAS,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,YAAY,QAAQ,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,EAAE,WAAW,KAAK,EAAE,WAAW,MAAM,CAAC,CAAC,CAAC;;;;;AAKlQ,SAAS,gBAAgB,OAAO;AAC5B,QAAO,gBAAgB,UAAU,KAAK,MAAM,GAAG,UAAU,gBAAgB,UAAU,MAAM,GAAG,UAAU,gBAAgB,QAAQ,MAAM,CAAC,CAAC,gBAAgB,MAAM,MAAM,CAAC;;;;;AAKvK,SAAgB,WAAW,GAAG,CAAC,QAAQ;AACnC,QAAO,gBAAgB,MAAM;;AAEjC,SAAS,WAAW,YAAY;AAC5B,SAAQ,UAAU;EACd,MAAM,SAAS,KAAK,MAAM;AAC1B,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,CAAC,gBAAgB,OAAO,EAAE,CAC1B,QAAO,gBAAgB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;GAEzE,MAAM,YAAY,SAAS;GAC3B,MAAM,SAAS,gBAAgB,eAAe;GAC9C,MAAM,MAAM,EAAE;GACd,IAAI,IAAI;AACR,QAAK,MAAM,KAAK,GAAG;IAEf,MAAM,KADS,aAAa,gBAAgB,OAAO,MAAM,GAAG,gBAAgB,OAAO,MAAM,EACxE,GAAG,QAAQ;AAE5B,QAAI,iBAAiB,OAAO,EAAE,EAAE;AAC5B,sBAAiB,KAAK,gBAAgB,WAAW,GAAG,EAAE,KAAK,CAAC,CAAC,OAAO;AACpE,SAAI,CAAC,UACD,QAAO,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC;UAIrF,KAAI,KAAK,EAAE,MAAM;AAErB;;AAEJ,UAAO,gBAAgB,WAAW,OAAO,GACnC,gBAAgB,KAAK,gBAAgB,cAAc,OAAO,KAAK,GAAG,OAAO,CAAC,GAC1E,gBAAgB,QAAQ,iBAAiB,KAAK,IAAI,CAAC;IAC3D;;;AAGV,SAAS,IAAI,OAAO;AAChB,QAAO,iBAAiB,KAAK,MAAM"}
@@ -1,79 +1,73 @@
1
- const fileName_1 = "(@fncts/schema) src/Schema/api/either.ts";
1
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
2
2
  import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
3
+ import * as tsplus_module_9 from "@fncts/schema/ParseResult";
4
+ import * as tsplus_module_10 from "@fncts/schema/Parser/api";
3
5
  import * as tsplus_module_2 from "@fncts/schema/Show";
4
- import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
6
+ import * as tsplus_module_8 from "@fncts/schema/ParseError/ParseError";
5
7
  import * as tsplus_module_4 from "@fncts/schema/Schema/api";
6
- import * as tsplus_module_5 from "@fncts/base/data/Either/constructors";
8
+ import "@fncts/base/data/function/api";
7
9
  import * as tsplus_module_6 from "@fncts/base/data/Either/api";
8
- import * as tsplus_module_7 from "@fncts/base/data/function/api";
9
- import * as tsplus_module_8 from "@fncts/schema/ParseError/ParseError";
10
- import * as tsplus_module_9 from "@fncts/schema/ParseResult";
11
- import * as tsplus_module_10 from "@fncts/schema/Parser/api";
12
10
  import * as tsplus_module_11 from "@fncts/schema/Parser/definition";
13
- export const either = either_1;
14
- export const eitherFromJson = eitherFromJson_1;
11
+ import * as tsplus_module_5 from "@fncts/base/data/Either/constructors";
12
+ //#region build/esm/Schema/api/either.js
13
+ const fileName_1 = "(@fncts/schema) src/Schema/api/either.ts";
14
+ const either = either_1;
15
+ const eitherFromJson = eitherFromJson_1;
15
16
  /**
16
- * @tsplus static fncts.schema.SchemaOps either
17
- */
17
+ * @tsplus static fncts.schema.SchemaOps either
18
+ */
18
19
  function either_1(left, right) {
19
- return tsplus_module_4.annotate(tsplus_module_1.Identifier, `Either<${tsplus_module_2.show()(left)}, ${tsplus_module_2.show()(right)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(left, right), eitherParser(true), eitherParser(false)));
20
+ return tsplus_module_4.annotate(tsplus_module_1.Identifier, `Either<${tsplus_module_2.show()(left)}, ${tsplus_module_2.show()(right)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(left, right), eitherParser(true), eitherParser(false)));
20
21
  }
21
22
  function eitherJson(left, right) {
22
- return tsplus_module_4.union(tsplus_module_4.struct({
23
- _tag: tsplus_module_4.literal("Left"),
24
- left
25
- }), tsplus_module_4.struct({
26
- _tag: tsplus_module_4.literal("Right"),
27
- right
28
- }));
23
+ return tsplus_module_4.union(tsplus_module_4.struct({
24
+ _tag: tsplus_module_4.literal("Left"),
25
+ left
26
+ }), tsplus_module_4.struct({
27
+ _tag: tsplus_module_4.literal("Right"),
28
+ right
29
+ }));
29
30
  }
30
31
  /**
31
- * @tsplus static fncts.schema.SchemaOps eitherFromJson
32
- */
32
+ * @tsplus static fncts.schema.SchemaOps eitherFromJson
33
+ */
33
34
  function eitherFromJson_1(left, right) {
34
- return tsplus_module_4.transform(either_1(left, right), input => {
35
- if (input._tag === "Left") {
36
- return tsplus_module_5.left(input.left, fileName_1 + ":34:27");
37
- } else {
38
- return tsplus_module_5.right(input.right, fileName_1 + ":36:28");
39
- }
40
- }, input => {
41
- void 0;
42
- if (tsplus_module_6.isLeft(input)) {
43
- return {
44
- _tag: "Left",
45
- left: input.left
46
- };
47
- } else {
48
- return {
49
- _tag: "Right",
50
- right: input.right
51
- };
52
- }
53
- })(eitherJson(left, right));
35
+ return tsplus_module_4.transform(either_1(left, right), (input) => {
36
+ if (input._tag === "Left") return tsplus_module_5.left(input.left, fileName_1 + ":34:27");
37
+ else return tsplus_module_5.right(input.right, fileName_1 + ":36:28");
38
+ }, (input) => {
39
+ if (tsplus_module_6.isLeft(input)) return {
40
+ _tag: "Left",
41
+ left: input.left
42
+ };
43
+ else return {
44
+ _tag: "Right",
45
+ right: input.right
46
+ };
47
+ })(eitherJson(left, right));
54
48
  }
55
49
  /**
56
- * @tsplus derive fncts.schema.Schema[fncts.Either]<_> 10
57
- */
58
- export function deriveEither(...[left, right]) {
59
- return eitherFromJson_1(left, right);
50
+ * @tsplus derive fncts.schema.Schema[fncts.Either]<_> 10
51
+ */
52
+ function deriveEither(...[left, right]) {
53
+ return eitherFromJson_1(left, right);
60
54
  }
61
55
  function eitherParser(isDecoding) {
62
- return (left, right) => {
63
- const schema = either_1(left, right);
64
- return tsplus_module_11.make((u, options) => {
65
- if (!tsplus_module_6.isEither(u)) {
66
- return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));
67
- }
68
- void 0;
69
- if (tsplus_module_6.isLeft(u)) {
70
- const parse = isDecoding ? tsplus_module_10.decode(left) : tsplus_module_10.encode(left);
71
- return tsplus_module_6.map(tsplus_module_5.left)(parse(u.left, options));
72
- } else {
73
- const parse = isDecoding ? tsplus_module_10.decode(right) : tsplus_module_10.encode(right);
74
- return tsplus_module_6.map(tsplus_module_5.right)(parse(u.right, options));
75
- }
76
- });
77
- };
56
+ return (left, right) => {
57
+ const schema = either_1(left, right);
58
+ return tsplus_module_11.make((u, options) => {
59
+ if (!tsplus_module_6.isEither(u)) return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));
60
+ if (tsplus_module_6.isLeft(u)) {
61
+ const parse = isDecoding ? tsplus_module_10.decode(left) : tsplus_module_10.encode(left);
62
+ return tsplus_module_6.map(tsplus_module_5.left)(parse(u.left, options));
63
+ } else {
64
+ const parse = isDecoding ? tsplus_module_10.decode(right) : tsplus_module_10.encode(right);
65
+ return tsplus_module_6.map(tsplus_module_5.right)(parse(u.right, options));
66
+ }
67
+ });
68
+ };
78
69
  }
70
+ //#endregion
71
+ export { deriveEither, either, eitherFromJson };
72
+
79
73
  //# sourceMappingURL=either.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"either.mjs","names":["either","either_1","eitherFromJson","eitherFromJson_1","left","right","tsplus_module_4","annotate","tsplus_module_1","Identifier","tsplus_module_2","show","declaration","tsplus_module_3","vector","eitherParser","eitherJson","union","struct","_tag","literal","transform","input","tsplus_module_5","fileName_1","tsplus_module_6","isLeft","deriveEither","isDecoding","schema","tsplus_module_11","make","u","options","isEither","tsplus_module_9","fail","tsplus_module_8","typeError","ast","parse","tsplus_module_10","decode","encode","map"],"sources":["../../../_src/Schema/api/either.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"either.mjs","names":[],"sources":["../../../esm/Schema/api/either.js"],"sourcesContent":["const fileName_1 = \"(@fncts/schema) src/Schema/api/either.ts\";\nimport * as tsplus_module_1 from \"@fncts/schema/ASTAnnotation\";\nimport * as tsplus_module_2 from \"@fncts/schema/Show\";\nimport * as tsplus_module_3 from \"@fncts/base/collection/immutable/Vector/api\";\nimport * as tsplus_module_4 from \"@fncts/schema/Schema/api\";\nimport * as tsplus_module_5 from \"@fncts/base/data/Either/constructors\";\nimport * as tsplus_module_6 from \"@fncts/base/data/Either/api\";\nimport * as tsplus_module_7 from \"@fncts/base/data/function/api\";\nimport * as tsplus_module_8 from \"@fncts/schema/ParseError/ParseError\";\nimport * as tsplus_module_9 from \"@fncts/schema/ParseResult\";\nimport * as tsplus_module_10 from \"@fncts/schema/Parser/api\";\nimport * as tsplus_module_11 from \"@fncts/schema/Parser/definition\";\nexport const either = either_1;\nexport const eitherFromJson = eitherFromJson_1;\n/**\n * @tsplus static fncts.schema.SchemaOps either\n */\nfunction either_1(left, right) {\n return tsplus_module_4.annotate(tsplus_module_1.Identifier, `Either<${tsplus_module_2.show()(left)}, ${tsplus_module_2.show()(right)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(left, right), eitherParser(true), eitherParser(false)));\n}\nfunction eitherJson(left, right) {\n return tsplus_module_4.union(tsplus_module_4.struct({\n _tag: tsplus_module_4.literal(\"Left\"),\n left,\n }), tsplus_module_4.struct({\n _tag: tsplus_module_4.literal(\"Right\"),\n right,\n }));\n}\n/**\n * @tsplus static fncts.schema.SchemaOps eitherFromJson\n */\nfunction eitherFromJson_1(left, right) {\n return tsplus_module_4.transform(either_1(left, right), (input) => {\n if (input._tag === \"Left\") {\n return tsplus_module_5.left(input.left, fileName_1 + \":34:27\");\n }\n else {\n return tsplus_module_5.right(input.right, fileName_1 + \":36:28\");\n }\n }, (input) => {\n void 0;\n if (tsplus_module_6.isLeft(input)) {\n return {\n _tag: \"Left\",\n left: input.left,\n };\n }\n else {\n return {\n _tag: \"Right\",\n right: input.right,\n };\n }\n })(eitherJson(left, right));\n}\n/**\n * @tsplus derive fncts.schema.Schema[fncts.Either]<_> 10\n */\nexport function deriveEither(...[left, right]) {\n return eitherFromJson_1(left, right);\n}\nfunction eitherParser(isDecoding) {\n return (left, right) => {\n const schema = either_1(left, right);\n return tsplus_module_11.make((u, options) => {\n if (!tsplus_module_6.isEither(u)) {\n return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));\n }\n void 0;\n if (tsplus_module_6.isLeft(u)) {\n const parse = isDecoding ? tsplus_module_10.decode(left) : tsplus_module_10.encode(left);\n return tsplus_module_6.map(tsplus_module_5.left)(parse(u.left, options));\n }\n else {\n const parse = isDecoding ? tsplus_module_10.decode(right) : tsplus_module_10.encode(right);\n return tsplus_module_6.map(tsplus_module_5.right)(parse(u.right, options));\n }\n });\n };\n}\n//# sourceMappingURL=either.js.map"],"mappings":";;;;;;;;;;;;AAAA,MAAM,aAAa;AAYnB,MAAa,SAAS;AACtB,MAAa,iBAAiB;;;;AAI9B,SAAS,SAAS,MAAM,OAAO;AAC3B,QAAO,gBAAgB,SAAS,gBAAgB,YAAY,UAAU,gBAAgB,MAAM,CAAC,KAAK,CAAC,IAAI,gBAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,YAAY,gBAAgB,OAAO,MAAM,MAAM,EAAE,aAAa,KAAK,EAAE,aAAa,MAAM,CAAC,CAAC;;AAEvP,SAAS,WAAW,MAAM,OAAO;AAC7B,QAAO,gBAAgB,MAAM,gBAAgB,OAAO;EAChD,MAAM,gBAAgB,QAAQ,OAAO;EACrC;EACH,CAAC,EAAE,gBAAgB,OAAO;EACvB,MAAM,gBAAgB,QAAQ,QAAQ;EACtC;EACH,CAAC,CAAC;;;;;AAKP,SAAS,iBAAiB,MAAM,OAAO;AACnC,QAAO,gBAAgB,UAAU,SAAS,MAAM,MAAM,GAAG,UAAU;AAC/D,MAAI,MAAM,SAAS,OACf,QAAO,gBAAgB,KAAK,MAAM,MAAM,aAAa,SAAS;MAG9D,QAAO,gBAAgB,MAAM,MAAM,OAAO,aAAa,SAAS;KAEpE,UAAU;AAEV,MAAI,gBAAgB,OAAO,MAAM,CAC7B,QAAO;GACH,MAAM;GACN,MAAM,MAAM;GACf;MAGD,QAAO;GACH,MAAM;GACN,OAAO,MAAM;GAChB;GAEP,CAAC,WAAW,MAAM,MAAM,CAAC;;;;;AAK/B,SAAgB,aAAa,GAAG,CAAC,MAAM,QAAQ;AAC3C,QAAO,iBAAiB,MAAM,MAAM;;AAExC,SAAS,aAAa,YAAY;AAC9B,SAAQ,MAAM,UAAU;EACpB,MAAM,SAAS,SAAS,MAAM,MAAM;AACpC,SAAO,iBAAiB,MAAM,GAAG,YAAY;AACzC,OAAI,CAAC,gBAAgB,SAAS,EAAE,CAC5B,QAAO,gBAAgB,KAAK,gBAAgB,UAAU,OAAO,KAAK,EAAE,CAAC;AAGzE,OAAI,gBAAgB,OAAO,EAAE,EAAE;IAC3B,MAAM,QAAQ,aAAa,iBAAiB,OAAO,KAAK,GAAG,iBAAiB,OAAO,KAAK;AACxF,WAAO,gBAAgB,IAAI,gBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,QAAQ,CAAC;UAEvE;IACD,MAAM,QAAQ,aAAa,iBAAiB,OAAO,MAAM,GAAG,iBAAiB,OAAO,MAAM;AAC1F,WAAO,gBAAgB,IAAI,gBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,QAAQ,CAAC;;IAEhF"}
@@ -1,90 +1,80 @@
1
- import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
2
- import * as tsplus_module_2 from "@fncts/schema/Show";
3
1
  import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
4
- import * as tsplus_module_4 from "@fncts/schema/Schema/api";
5
- import * as tsplus_module_5 from "@fncts/base/collection/immutable/HashMap/api";
6
- import * as tsplus_module_6 from "@fncts/base/data/function/api";
7
- import * as tsplus_module_7 from "@fncts/base/collection/immutable/HashMap/definition";
8
- import * as tsplus_module_8 from "@fncts/schema/ParseError/ParseError";
2
+ import * as tsplus_module_1 from "@fncts/schema/ASTAnnotation";
9
3
  import * as tsplus_module_9 from "@fncts/schema/ParseResult";
10
4
  import * as tsplus_module_10 from "@fncts/schema/Parser/api";
11
- import * as tsplus_module_11 from "@fncts/base/data/Either/api";
5
+ import * as tsplus_module_2 from "@fncts/schema/Show";
6
+ import * as tsplus_module_8 from "@fncts/schema/ParseError/ParseError";
12
7
  import * as tsplus_module_12 from "@fncts/base/collection/immutable/Vector/internal";
8
+ import * as tsplus_module_5 from "@fncts/base/collection/immutable/HashMap/api";
9
+ import * as tsplus_module_4 from "@fncts/schema/Schema/api";
10
+ import "@fncts/base/data/function/api";
11
+ import * as tsplus_module_11 from "@fncts/base/data/Either/api";
13
12
  import * as tsplus_module_13 from "@fncts/schema/Parser/definition";
14
13
  import * as tsplus_module_14 from "@fncts/test/control/Gen/api";
15
- export const hashMap = hashMap_1;
16
- export const hashMapFromRecord = hashMapFromRecord_1;
14
+ import * as tsplus_module_7 from "@fncts/base/collection/immutable/HashMap/definition";
15
+ //#region build/esm/Schema/api/hashMap.js
16
+ const hashMap = hashMap_1;
17
+ const hashMapFromRecord = hashMapFromRecord_1;
17
18
  /**
18
- * @tsplus static fncts.schema.SchemaOps hashMap
19
- */
19
+ * @tsplus static fncts.schema.SchemaOps hashMap
20
+ */
20
21
  function hashMap_1(key, value) {
21
- return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `HashMap<${tsplus_module_2.show()(key)}, ${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(key, value), hashMapParser(true), hashMapParser(false))));
22
+ return tsplus_module_4.annotate(tsplus_module_1.GenHook, gen)(tsplus_module_4.annotate(tsplus_module_1.Identifier, `HashMap<${tsplus_module_2.show()(key)}, ${tsplus_module_2.show()(value)}>`)(tsplus_module_4.declaration(tsplus_module_3.vector(key, value), hashMapParser(true), hashMapParser(false))));
22
23
  }
23
24
  /**
24
- * @tsplus static fncts.schema.SchemaOps hashMapFromRecord
25
- */
25
+ * @tsplus static fncts.schema.SchemaOps hashMapFromRecord
26
+ */
26
27
  function hashMapFromRecord_1(key, value) {
27
- return tsplus_module_4.transform(hashMap_1(key, value), input => {
28
- const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
29
- for (const [k, v] of Object.entries(input)) {
30
- tsplus_module_5.set(k, v)(out);
31
- }
32
- return tsplus_module_5.endMutation(out);
33
- }, input => {
34
- const out = {};
35
- tsplus_module_5.forEachWithIndex((k, v) => {
36
- out[k] = v;
37
- })(input);
38
- return out;
39
- })(tsplus_module_4.record(key, value));
28
+ return tsplus_module_4.transform(hashMap_1(key, value), (input) => {
29
+ const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
30
+ for (const [k, v] of Object.entries(input)) tsplus_module_5.set(k, v)(out);
31
+ return tsplus_module_5.endMutation(out);
32
+ }, (input) => {
33
+ const out = {};
34
+ tsplus_module_5.forEachWithIndex((k, v) => {
35
+ out[k] = v;
36
+ })(input);
37
+ return out;
38
+ })(tsplus_module_4.record(key, value));
40
39
  }
41
40
  /**
42
- * @tsplus derive fncts.schema.Schema[fncts.HashMap]<_> 10
43
- */
44
- export function deriveHashMap(
45
- // @ts-expect-error
46
- ...[key, value]) {
47
- return hashMapFromRecord_1(key, value);
41
+ * @tsplus derive fncts.schema.Schema[fncts.HashMap]<_> 10
42
+ */
43
+ function deriveHashMap(...[key, value]) {
44
+ return hashMapFromRecord_1(key, value);
48
45
  }
49
46
  function hashMapParser(isDecoding) {
50
- return (key, value) => {
51
- const schema = hashMap_1(key, value);
52
- return tsplus_module_13.make((u, options) => {
53
- if (!tsplus_module_7.isHashMap(u)) {
54
- return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));
55
- }
56
- const allErrors = options?.allErrors;
57
- const errors = tsplus_module_3.emptyPushable();
58
- const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
59
- const keyParser = isDecoding ? tsplus_module_10.decode(key) : tsplus_module_10.encode(key);
60
- const valueParser = isDecoding ? tsplus_module_10.decode(value) : tsplus_module_10.encode(value);
61
- for (const [k, v] of u) {
62
- const tk = keyParser(k, options);
63
- void 0;
64
- if (tsplus_module_11.isLeft(tk)) {
65
- tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tk.left))(errors);
66
- if (!allErrors) {
67
- return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));
68
- }
69
- }
70
- const tv = valueParser(v, options);
71
- void 0;
72
- if (tsplus_module_11.isLeft(tv)) {
73
- tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tv.left))(errors);
74
- if (!allErrors) {
75
- return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));
76
- }
77
- }
78
- if (tsplus_module_11.isLeft(tk) || tsplus_module_11.isLeft(tv)) {
79
- continue;
80
- }
81
- tsplus_module_5.set(tk.right, tv.right)(out);
82
- }
83
- return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors)) : tsplus_module_9.succeed(tsplus_module_5.endMutation(out));
84
- });
85
- };
47
+ return (key, value) => {
48
+ const schema = hashMap_1(key, value);
49
+ return tsplus_module_13.make((u, options) => {
50
+ if (!tsplus_module_7.isHashMap(u)) return tsplus_module_9.fail(tsplus_module_8.typeError(schema.ast, u));
51
+ const allErrors = options?.allErrors;
52
+ const errors = tsplus_module_3.emptyPushable();
53
+ const out = tsplus_module_5.beginMutation(tsplus_module_5.empty());
54
+ const keyParser = isDecoding ? tsplus_module_10.decode(key) : tsplus_module_10.encode(key);
55
+ const valueParser = isDecoding ? tsplus_module_10.decode(value) : tsplus_module_10.encode(value);
56
+ for (const [k, v] of u) {
57
+ const tk = keyParser(k, options);
58
+ if (tsplus_module_11.isLeft(tk)) {
59
+ tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tk.left))(errors);
60
+ if (!allErrors) return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));
61
+ }
62
+ const tv = valueParser(v, options);
63
+ if (tsplus_module_11.isLeft(tv)) {
64
+ tsplus_module_12.push(tsplus_module_8.keyError(key.ast, k, tv.left))(errors);
65
+ if (!allErrors) return tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors));
66
+ }
67
+ if (tsplus_module_11.isLeft(tk) || tsplus_module_11.isLeft(tv)) continue;
68
+ tsplus_module_5.set(tk.right, tv.right)(out);
69
+ }
70
+ return tsplus_module_3.isNonEmpty(errors) ? tsplus_module_9.fail(tsplus_module_8.iterableError(schema.ast, u, errors)) : tsplus_module_9.succeed(tsplus_module_5.endMutation(out));
71
+ });
72
+ };
86
73
  }
87
74
  function gen(key, value) {
88
- return tsplus_module_14.map(pairs => tsplus_module_5.from(pairs))(tsplus_module_14.array(tsplus_module_14.tuple(key, value)));
75
+ return tsplus_module_14.map((pairs) => tsplus_module_5.from(pairs))(tsplus_module_14.array(tsplus_module_14.tuple(key, value)));
89
76
  }
77
+ //#endregion
78
+ export { deriveHashMap, hashMap, hashMapFromRecord };
79
+
90
80
  //# sourceMappingURL=hashMap.mjs.map