@fncts/schema 0.0.12 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ParseFailure.d.ts +18 -0
- package/ParseResult.d.ts +2 -1
- package/Schema/derivations.d.ts +6 -2
- package/Show.d.ts +8 -0
- package/_cjs/Gen.cjs +1 -2
- package/_cjs/Gen.cjs.map +1 -1
- package/_cjs/ParseFailure.cjs +28 -0
- package/_cjs/ParseFailure.cjs.map +1 -0
- package/_cjs/ParseResult.cjs +4 -3
- package/_cjs/ParseResult.cjs.map +1 -1
- package/_cjs/Parser/api.cjs +2 -2
- package/_cjs/Parser/api.cjs.map +1 -1
- package/_cjs/Parser/interpreter.cjs +8 -8
- package/_cjs/Parser/interpreter.cjs.map +1 -1
- package/_cjs/Schema/api/conc.cjs +1 -1
- package/_cjs/Schema/api/conc.cjs.map +1 -1
- package/_cjs/Schema/api/hashMap.cjs +1 -1
- package/_cjs/Schema/api/hashMap.cjs.map +1 -1
- package/_cjs/Schema/api/immutableArray.cjs +1 -1
- package/_cjs/Schema/api/immutableArray.cjs.map +1 -1
- package/_cjs/Schema/api/list.cjs +1 -1
- package/_cjs/Schema/api/list.cjs.map +1 -1
- package/_cjs/Schema/derivations.cjs +9 -3
- package/_cjs/Schema/derivations.cjs.map +1 -1
- package/_cjs/Show.cjs +146 -0
- package/_cjs/Show.cjs.map +1 -0
- package/_mjs/Gen.mjs +1 -2
- package/_mjs/Gen.mjs.map +1 -1
- package/_mjs/ParseFailure.mjs +20 -0
- package/_mjs/ParseFailure.mjs.map +1 -0
- package/_mjs/ParseResult.mjs +4 -3
- package/_mjs/ParseResult.mjs.map +1 -1
- package/_mjs/Parser/api.mjs +2 -2
- package/_mjs/Parser/api.mjs.map +1 -1
- package/_mjs/Parser/interpreter.mjs +8 -8
- package/_mjs/Parser/interpreter.mjs.map +1 -1
- package/_mjs/Schema/api/conc.mjs +1 -1
- package/_mjs/Schema/api/conc.mjs.map +1 -1
- package/_mjs/Schema/api/hashMap.mjs +1 -1
- package/_mjs/Schema/api/hashMap.mjs.map +1 -1
- package/_mjs/Schema/api/immutableArray.mjs +1 -1
- package/_mjs/Schema/api/immutableArray.mjs.map +1 -1
- package/_mjs/Schema/api/list.mjs +1 -1
- package/_mjs/Schema/api/list.mjs.map +1 -1
- package/_mjs/Schema/derivations.mjs +8 -3
- package/_mjs/Schema/derivations.mjs.map +1 -1
- package/_mjs/Show.mjs +138 -0
- package/_mjs/Show.mjs.map +1 -0
- package/_src/Gen.ts +0 -1
- package/_src/ParseFailure.ts +18 -0
- package/_src/ParseResult.ts +3 -3
- package/_src/Parser/api.ts +2 -2
- package/_src/Parser/interpreter.ts +8 -8
- package/_src/Schema/api/conc.ts +1 -1
- package/_src/Schema/api/hashMap.ts +1 -1
- package/_src/Schema/api/immutableArray.ts +1 -1
- package/_src/Schema/api/list.ts +1 -1
- package/_src/Schema/derivations.ts +15 -3
- package/_src/Show.ts +169 -0
- package/_src/global.ts +8 -0
- package/global.d.ts +8 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashMap.mjs","names":["hashMap","hashMap_1","hashMapFromRecord","hashMapFromRecord_1","HashMapTypeId","HashMapVariance","key","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","hashMapParser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","out","tsplus_module_5","beginMutation","k","v","Object","entries","set","endMutation","forEachWithIndex","record","deriveHashMap","schema","tsplus_module_13","make","u","options","tsplus_module_7","isHashMap","tsplus_module_9","fail","tsplus_module_8","typeError","ast","allErrors","errors","emptyPushable","tk","tsplus_module_10","decode","tsplus_module_11","isLeft","tsplus_module_12","push","keyError","left","failures","tv","right","isNonEmpty","succeed","emptyNodeSchema","_key","_value","struct","_tag","literal","modify","any","leafNodeSchema","edit","number","hash","tsplus_module_14","maybe","collisionNodeSchema","lazy","children","mutableArray","nodeSchema","indexedNodeSchema","mask","arrayNodeSchema","size","union","uniqueSymbol","editable","boolean","config","root","Symbol","iterator","tsplus_module_15","hashSymbol","tsplus_module_16","equalsSymbol","tsplus_module_17","map","pairs","from","array","tuple"],"sources":["../../../_src/Schema/api/hashMap.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;aAkBgBA,OAAO,GAAAC,SAAA;aAYPC,iBAAiB,GAAAC,mBAAA;AAlBjC,SAASC,aAAa,EAAEC,eAAe,QAAQ,0CAA0C;AAGzF;;;AAGA,SAAAJ,UAA8BK,GAAc,EAAEC,KAAgB;EAC5D,OAAOC,eAAA,CAAAC,WAAA,CACLC,eAAA,CAAAC,MAAA,CAAOL,GAAG,EAAEC,KAAK,CAAC,EAClBK,MAAM,CAACN,GAAG,EAAEC,KAAK,CAAC,EAClBM,aAAa,EACbC,eAAA,CAAAC,gBAAgB,CAACC,KAAK,CAACC,QAAQ,CAAAC,eAAA,CAAAC,UAAA,EAA2B,SAAS,CAAC,CAACF,QAAQ,CAAAC,eAAA,CAAAE,OAAA,EAAwBC,GAAG,CAAC,CAC1G;AACH;AAEA;;;AAGA,SAAAlB,oBACEG,GAAc,EACdC,KAAgB;EAEhB,OAAOC,eAAA,CAAAc,SAAA,CACLrB,SAAA,CAAQK,GAAG,EAAEC,KAAK,CAAC,EAClBgB,KAAK,IAAI;IACR,MAAMC,GAAG,GAAAC,eAAA,CAAAC,aAAA,CAAGD,eAAA,CAAAT,KAAA,EAAqB,CAAc;IAC/C,KAAK,MAAM,CAACW,CAAC,EAAEC,CAAC,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACP,KAAK,CAAC,EAAE;MAC1CE,eAAA,CAAAM,GAAA,CAAQJ,CAAM,EAAEC,CAAM,EAAtBJ,GAAG,CAAoB;IACzB;IACA,OAAAC,eAAA,CAAAO,WAAA,CAAOR,GAAG;EACZ,CAAC,EACAD,KAAK,IAAI;IACR,MAAMC,GAAG,GAAG,EAAkB;IAC9BC,eAAA,CAAAQ,gBAAA,CAAuB,CAACN,CAAC,EAAEC,CAAC,KAAI;MAC9BJ,GAAG,CAACG,CAAC,CAAC,GAAGC,CAAC;IACZ,CAAC,EAFDL,KAAK,CAEH;IACF,OAAOC,GAAG;EACZ,CAAC,EAfIhB,eAAA,CAAA0B,MAAA,CAAc5B,GAAG,EAAEC,KAAK,CAAC,CAgB/B;AACH;AAEA;;;AAGA,OAAM,SAAU4B,aAAaA;AAC3B;AACA,GAAG,CAAC7B,GAAG,EAAEC,KAAK,CAIL;EAET,OAAoBJ,mBAAA,CAAkBG,GAA8B,EAAEC,KAAK,CAAC;AAC9E;AAEA,SAASM,aAAaA,CAAOP,GAAc,EAAEC,KAAgB;EAC3D,MAAM6B,MAAM,GAAGnC,SAAA,CAAQK,GAAG,EAAEC,KAAK,CAAC;EAClC,OAAO8B,gBAAA,CAAAC,IAAA,CAAY,CAACC,CAAC,EAAEC,OAAO,KAAI;IAChC,IAAI,CAACC,eAAA,CAAAC,SAAA,CAAWH,CAAC,CAAC,EAAE;MAClB,OAAOI,eAAA,CAAAC,IAAA,CAAiBC,eAAA,CAAAC,SAAA,CAAqBV,MAAM,CAACW,GAAG,EAAER,CAAC,CAAC,CAAC;IAC9D;IACA,MAAMS,SAAS,GAAGR,OAAO,EAAEQ,SAAS;IACpC,MAAMC,MAAM,GAAMvC,eAAA,CAAAwC,aAAA,EAAkC;IACpD,MAAM1B,GAAG,GAAAC,eAAA,CAAAC,aAAA,CAASD,eAAA,CAAAT,KAAA,EAAqB,CAAc;IACrD,KAAK,MAAM,CAACW,CAAC,EAAEC,CAAC,CAAC,IAAIW,CAAC,EAAE;MACtB,MAAMY,EAAE,GAAGC,gBAAA,CAAAC,MAAA,CAAA/C,GAAG,EAAQqB,CAAC,EAAEa,OAAO,CAAC;MACjC;MACA,IAAIc,gBAAA,CAAAC,MAAA,CAAAJ,EAAE,CAAS,EAAE;QACfK,gBAAA,CAAAC,IAAA,CAAYZ,eAAA,CAAAa,QAAA,CAAoBpD,GAAG,CAACyC,GAAG,EAAEpB,CAAC,EAAEwB,EAAE,CAACQ,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"hashMap.mjs","names":["hashMap","hashMap_1","hashMapFromRecord","hashMapFromRecord_1","HashMapTypeId","HashMapVariance","key","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","hashMapParser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","out","tsplus_module_5","beginMutation","k","v","Object","entries","set","endMutation","forEachWithIndex","record","deriveHashMap","schema","tsplus_module_13","make","u","options","tsplus_module_7","isHashMap","tsplus_module_9","fail","tsplus_module_8","typeError","ast","allErrors","errors","emptyPushable","tk","tsplus_module_10","decode","tsplus_module_11","isLeft","tsplus_module_12","push","keyError","left","failures","tv","right","isNonEmpty","succeed","emptyNodeSchema","_key","_value","struct","_tag","literal","modify","any","leafNodeSchema","edit","number","hash","tsplus_module_14","maybe","collisionNodeSchema","lazy","children","mutableArray","nodeSchema","indexedNodeSchema","mask","arrayNodeSchema","size","union","uniqueSymbol","editable","boolean","config","root","Symbol","iterator","tsplus_module_15","hashSymbol","tsplus_module_16","equalsSymbol","tsplus_module_17","map","pairs","from","array","tuple"],"sources":["../../../_src/Schema/api/hashMap.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ function parser(value) {
|
|
|
51
51
|
const t = tsplus_module_9.decode(value)(v, options);
|
|
52
52
|
void 0;
|
|
53
53
|
if (tsplus_module_10.isLeft(t)) {
|
|
54
|
-
tsplus_module_11.push(tsplus_module_7.indexError(index, t.left))(errors);
|
|
54
|
+
tsplus_module_11.push(tsplus_module_7.indexError(index, t.left.errors))(errors);
|
|
55
55
|
if (allErrors) {
|
|
56
56
|
continue;
|
|
57
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"immutableArray.mjs","names":["immutableArray","immutableArray_1","immutableArrayFromArray","immutableArrayFromArray_1","ImmutableArray","ImmutableArrayTypeId","ImmutableArrayVariance","Vector","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","parser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","_array","array","deriveImmutableArray","schema","tsplus_module_12","make","u","options","tsplus_module_6","isImmutableArray","tsplus_module_8","fail","tsplus_module_7","typeError","ast","out","errors","emptyPushable","allErrors","index","v","t","tsplus_module_9","decode","tsplus_module_10","isLeft","tsplus_module_11","push","indexError","left","failures","right","isNonEmpty","succeed","struct","uniqueSymbol","any","tsplus_module_13","equalsSymbol","tsplus_module_14","hashSymbol","Symbol","iterator","tsplus_module_15","map"],"sources":["../../../_src/Schema/api/immutableArray.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;aAagBA,cAAc,GAAAC,gBAAA;aAadC,uBAAuB,GAAAC,yBAAA;AAxBvC,SACEC,cAAc,EACdC,oBAAoB,EACpBC,sBAAsB,QACjB,iDAAiD;AACxD,SAASC,MAAM,QAAQ,yCAAyC;AAEhE;;;;AAIA,SAAAN,iBAAkCO,KAAgB;EAChD,OAAOC,eAAA,CAAAC,WAAA,CACLC,eAAA,CAAAC,MAAA,CAAOJ,KAAK,CAAC,EACbK,MAAM,CAACL,KAAK,CAAC,EACbM,MAAM,EACNC,eAAA,CAAAC,gBAAgB,CAACC,KAAK,CAACC,QAAQ,CAAAC,eAAA,CAAAC,UAAA,EAA2B,gBAAgB,CAAC,CAACF,QAAQ,CAAAC,eAAA,CAAAE,OAAA,EAAwBC,GAAG,CAAC,CACjH;AACH;AAEA;;;;AAIA,SAAAnB,0BAA2CK,KAAgB;EACzD,OAAOC,eAAA,CAAAc,SAAA,CACLtB,gBAAA,CAAeO,KAAK,CAAC,EACpBgB,KAAK,IAAK,IAAIpB,cAAc,CAACoB,KAAK,CAAC,EACnCA,KAAK,IAAKA,KAAK,CAACC,MAAM,EAHlBhB,eAAA,CAAAiB,KAAA,CAAalB,KAAK,CAAC,CAIzB;AACH;AAEA;;;AAGA,OAAM,SAAUmB,oBAAoBA,CAClC,GAAG,CAACnB,KAAK,CAIA;EAET,OAAoBL,yBAAA,CAAwBK,KAAK,CAAC;AACpD;AAEA,SAASM,MAAMA,CAAIN,KAAgB;EACjC,MAAMoB,MAAM,GAAG3B,gBAAA,CAAeO,KAAK,CAAC;EACpC,OAAOqB,gBAAA,CAAAC,IAAA,CAAY,CAACC,CAAC,EAAEC,OAAO,KAAI;IAChC,IAAI,CAACC,eAAA,CAAAC,gBAAA,CAAkBH,CAAC,CAAC,EAAE;MACzB,OAAOI,eAAA,CAAAC,IAAA,CAAiBC,eAAA,CAAAC,SAAA,CAAqBV,MAAM,CAACW,GAAG,EAAER,CAAC,CAAC,CAAC;IAC9D;IACA,MAAMS,GAAG,GAAa,EAAE;IACxB,MAAMC,MAAM,GAAU9B,eAAA,CAAA+B,aAAA,EAAkC;IACxD,MAAMC,SAAS,GAAOX,OAAO,EAAEW,SAAS;IACxC,MAAMC,KAAK,GAAW,CAAC;IACvB,KAAK,MAAMC,CAAC,IAAId,CAAC,EAAE;MACjB,MAAMe,CAAC,GAAGC,eAAA,CAAAC,MAAA,CAAAxC,KAAK,EAAQqC,CAAC,EAAEb,OAAO,CAAC;MAClC;MACA,IAAIiB,gBAAA,CAAAC,MAAA,CAAAJ,CAAC,CAAS,EAAE;QACdK,gBAAA,CAAAC,IAAA,CAAYf,eAAA,CAAAgB,UAAA,CAAsBT,KAAK,EAAEE,CAAC,CAACQ,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"immutableArray.mjs","names":["immutableArray","immutableArray_1","immutableArrayFromArray","immutableArrayFromArray_1","ImmutableArray","ImmutableArrayTypeId","ImmutableArrayVariance","Vector","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","parser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","_array","array","deriveImmutableArray","schema","tsplus_module_12","make","u","options","tsplus_module_6","isImmutableArray","tsplus_module_8","fail","tsplus_module_7","typeError","ast","out","errors","emptyPushable","allErrors","index","v","t","tsplus_module_9","decode","tsplus_module_10","isLeft","tsplus_module_11","push","indexError","left","failures","right","isNonEmpty","succeed","struct","uniqueSymbol","any","tsplus_module_13","equalsSymbol","tsplus_module_14","hashSymbol","Symbol","iterator","tsplus_module_15","map"],"sources":["../../../_src/Schema/api/immutableArray.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/_mjs/Schema/api/list.mjs
CHANGED
|
@@ -50,7 +50,7 @@ function parser(value) {
|
|
|
50
50
|
const t = tsplus_module_11.decode(value)(v, options);
|
|
51
51
|
void 0;
|
|
52
52
|
if (tsplus_module_12.isLeft(t)) {
|
|
53
|
-
tsplus_module_13.push(tsplus_module_8.indexError(index, t.left))(errors);
|
|
53
|
+
tsplus_module_13.push(tsplus_module_8.indexError(index, t.left.errors))(errors);
|
|
54
54
|
if (allErrors) {
|
|
55
55
|
continue;
|
|
56
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.mjs","names":["list","list_1","listFromArray","listFromArray_1","ListTypeId","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","parser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","tsplus_module_5","from","Array","array","deriveList","schema","tsplus_module_14","make","u","options","tsplus_module_7","isList","tsplus_module_9","fail","tsplus_module_8","typeError","ast","out","tsplus_module_10","ListBuffer","errors","emptyPushable","allErrors","index","v","t","tsplus_module_11","decode","tsplus_module_12","isLeft","tsplus_module_13","push","indexError","left","failures","append","right","isNonEmpty","succeed","toList","nil","_value","struct","_tag","literal","uniqueSymbol","Symbol","iterator","any","cons","lazy","head","tail","union","tsplus_module_15","map"],"sources":["../../../_src/Schema/api/list.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;aAQgBA,IAAI,GAAAC,MAAA;aAaJC,aAAa,GAAAC,eAAA;AAnB7B,SAASC,UAAU,QAAQ,uCAAuC;AAElE;;;;AAIA,SAAAH,OAAwBI,KAAgB;EACtC,OAAOC,eAAA,CAAAC,WAAA,CACLC,eAAA,CAAAC,MAAA,CAAOJ,KAAK,CAAC,EACbK,MAAM,CAACL,KAAK,CAAC,EACbM,MAAM,EACNC,eAAA,CAAAC,gBAAgB,CAACC,KAAK,CAACC,QAAQ,CAAAC,eAAA,CAAAC,UAAA,EAA2B,MAAM,CAAC,CAACF,QAAQ,CAAAC,eAAA,CAAAE,OAAA,EAAwBC,GAAG,CAAC,CACvG;AACH;AAEA;;;;AAIA,SAAAhB,gBAAiCE,KAAgB;EAC/C,OAAOC,eAAA,CAAAc,SAAA,CACLnB,MAAA,CAAKI,KAAK,CAAC,EACVgB,KAAK,IAAKC,eAAA,CAAAC,IAAA,CAAUF,KAAK,CAAC,EAC1BA,KAAK,IAAKG,KAAK,CAACD,IAAI,CAACF,KAAK,CAAC,EAHvBf,eAAA,CAAAmB,KAAA,CAAapB,KAAK,CAAC,CAIzB;AACH;AAEA;;;AAGA,OAAM,SAAUqB,UAAUA,CACxB,GAAG,CAACrB,KAAK,CAIA;EAET,OAAoBF,eAAA,CAAcE,KAAK,CAAC;AAC1C;AAEA,SAASM,MAAMA,CAAIN,KAAgB;EACjC,MAAMsB,MAAM,GAAG1B,MAAA,CAAKI,KAAK,CAAC;EAC1B,OAAOuB,gBAAA,CAAAC,IAAA,CAAY,CAACC,CAAC,EAAEC,OAAO,KAAI;IAChC,IAAI,CAACC,eAAA,CAAAC,MAAA,CAAQH,CAAC,CAAC,EAAE;MACf,OAAOI,eAAA,CAAAC,IAAA,CAAiBC,eAAA,CAAAC,SAAA,CAAqBV,MAAM,CAACW,GAAG,EAAER,CAAC,CAAC,CAAC;IAC9D;IACA,MAAMS,GAAG,GAAS,IAAAC,gBAAA,CAAIC,UAAU,EAAK;IACrC,MAAMC,MAAM,GAAMlC,eAAA,CAAAmC,aAAA,EAAkC;IACpD,MAAMC,SAAS,GAAGb,OAAO,EAAEa,SAAS;IACpC,MAAMC,KAAK,GAAO,CAAC;IACnB,KAAK,MAAMC,CAAC,IAAIhB,CAAC,EAAE;MACjB,MAAMiB,CAAC,GAAGC,gBAAA,CAAAC,MAAA,CAAA5C,KAAK,EAAQyC,CAAC,EAAEf,OAAO,CAAC;MAClC;MACA,IAAImB,gBAAA,CAAAC,MAAA,CAAAJ,CAAC,CAAS,EAAE;QACdK,gBAAA,CAAAC,IAAA,CAAYjB,eAAA,CAAAkB,UAAA,CAAsBT,KAAK,EAAEE,CAAC,CAACQ,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"list.mjs","names":["list","list_1","listFromArray","listFromArray_1","ListTypeId","value","tsplus_module_4","declaration","tsplus_module_1","vector","inline","parser","tsplus_module_3","ASTAnnotationMap","empty","annotate","tsplus_module_2","Identifier","GenHook","gen","transform","input","tsplus_module_5","from","Array","array","deriveList","schema","tsplus_module_14","make","u","options","tsplus_module_7","isList","tsplus_module_9","fail","tsplus_module_8","typeError","ast","out","tsplus_module_10","ListBuffer","errors","emptyPushable","allErrors","index","v","t","tsplus_module_11","decode","tsplus_module_12","isLeft","tsplus_module_13","push","indexError","left","failures","append","right","isNonEmpty","succeed","toList","nil","_value","struct","_tag","literal","uniqueSymbol","Symbol","iterator","any","cons","lazy","head","tail","union","tsplus_module_15","map"],"sources":["../../../_src/Schema/api/list.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ export function deriveStruct(...[requiredFields, optionalFields, maybeFields]) {
|
|
|
43
43
|
tsplus_module_3.createUnion(tsplus_module_1.vector(tsplus_module_3.undefinedKeyword, tsplus_module_3.createLiteral(null), maybeFields[key].ast)), true, true))(maybeFieldsKeys))(propertySignatures), tsplus_module_1.empty()));
|
|
44
44
|
const to = tsplus_module_4.make(tsplus_module_3.createTypeLiteral(tsplus_module_1.concat(tsplus_module_1.map(key =>
|
|
45
45
|
// @ts-expect-error
|
|
46
|
-
tsplus_module_3.createPropertySignature(key, tsplus_module_5.maybe(maybeFields[key]).ast,
|
|
46
|
+
tsplus_module_3.createPropertySignature(key, tsplus_module_5.maybe(maybeFields[key]).ast, false, true))(maybeFieldsKeys))(propertySignatures), tsplus_module_1.empty()));
|
|
47
47
|
return tsplus_module_4.transform(to, input => {
|
|
48
48
|
const output = {
|
|
49
49
|
...input
|
|
@@ -87,12 +87,17 @@ export function deriveLazy(f) {
|
|
|
87
87
|
return tsplus_module_4.make(ast);
|
|
88
88
|
}
|
|
89
89
|
/**
|
|
90
|
-
* @tsplus derive fncts.schema.Schema[fncts.Array]<_> 10
|
|
91
90
|
* @tsplus derive fncts.schema.Schema[fncts.ReadonlyArray]<_> 10
|
|
92
91
|
*/
|
|
93
|
-
export function
|
|
92
|
+
export function deriveReadonlyArray(...[element]) {
|
|
94
93
|
return tsplus_module_4.array(element);
|
|
95
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* @tsplus derive fncts.schema.Schema[fncts.Array]<_> 10
|
|
97
|
+
*/
|
|
98
|
+
export function deriveArray(...[element]) {
|
|
99
|
+
return tsplus_module_4.mutableArray(element);
|
|
100
|
+
}
|
|
96
101
|
/**
|
|
97
102
|
* @tsplus derive fncts.schema.Schema<_> 15
|
|
98
103
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derivations.mjs","names":["ownKeys","deriveValidation","base","brands","tsplus_module_4","make","tsplus_module_3","createValidation","ast","tsplus_module_1","from","Object","values","annotations","annotate","tsplus_module_2","Brand","deriveLiteral","value","literal","deriveStruct","requiredFields","optionalFields","maybeFields","maybeFieldsKeys","propertySignatures","map","key","createPropertySignature","concat","struct","createTypeLiteral","empty","isEmpty","createUnion","vector","undefinedKeyword","createLiteral","to","tsplus_module_5","maybe","transform","input","output","tsplus_module_6","fromNullable","tsplus_module_7","isNothing","tsplus_module_8","toUndefined","deriveTuple","components","tuple","deriveLazy","f","cached","createLazy","
|
|
1
|
+
{"version":3,"file":"derivations.mjs","names":["ownKeys","deriveValidation","base","brands","tsplus_module_4","make","tsplus_module_3","createValidation","ast","tsplus_module_1","from","Object","values","annotations","annotate","tsplus_module_2","Brand","deriveLiteral","value","literal","deriveStruct","requiredFields","optionalFields","maybeFields","maybeFieldsKeys","propertySignatures","map","key","createPropertySignature","concat","struct","createTypeLiteral","empty","isEmpty","createUnion","vector","undefinedKeyword","createLiteral","to","tsplus_module_5","maybe","transform","input","output","tsplus_module_6","fromNullable","tsplus_module_7","isNothing","tsplus_module_8","toUndefined","deriveTuple","components","tuple","deriveLazy","f","cached","createLazy","deriveReadonlyArray","element","array","deriveArray","mutableArray","deriveRecord","keySchema","valueSchema","record"],"sources":["../../_src/Schema/derivations.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/_mjs/Show.mjs
ADDED
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import * as tsplus_module_1 from "@fncts/base/control/Eval/run";
|
|
2
|
+
import * as tsplus_module_2 from "@fncts/base/control/Eval/constructors";
|
|
3
|
+
import * as tsplus_module_3 from "@fncts/base/collection/immutable/Vector/api";
|
|
4
|
+
import * as tsplus_module_4 from "@fncts/base/control/Eval/instance";
|
|
5
|
+
import * as tsplus_module_5 from "@fncts/base/control/Eval/api";
|
|
6
|
+
import * as tsplus_module_6 from "@fncts/schema/ASTAnnotation";
|
|
7
|
+
import * as tsplus_module_7 from "@fncts/base/data/Maybe/destructors";
|
|
8
|
+
import { memoize } from "@fncts/schema/utils";
|
|
9
|
+
/**
|
|
10
|
+
* @tsplus getter fncts.schema.Schema show
|
|
11
|
+
*/
|
|
12
|
+
export function show(self) {
|
|
13
|
+
const ev = go(self.ast);
|
|
14
|
+
return tsplus_module_1.run(ev);
|
|
15
|
+
}
|
|
16
|
+
const go = /*#__PURE__*/memoize(function go(ast) {
|
|
17
|
+
void 0;
|
|
18
|
+
switch (ast._tag) {
|
|
19
|
+
case 0 /* ASTTag.Declaration */:
|
|
20
|
+
{
|
|
21
|
+
return tsplus_module_7.match(() => tsplus_module_2.now("Unknown Type"), id => {
|
|
22
|
+
return tsplus_module_5.map(ts => {
|
|
23
|
+
if (ts.length <= 0) {
|
|
24
|
+
return id;
|
|
25
|
+
} else {
|
|
26
|
+
return `${id}<${tsplus_module_3.join(", ")(ts)}>`;
|
|
27
|
+
}
|
|
28
|
+
})(tsplus_module_3._traverse(ast.typeParameters)(tsplus_module_4.Applicative)(go));
|
|
29
|
+
})(ast.annotations.get(tsplus_module_6.Identifier));
|
|
30
|
+
}
|
|
31
|
+
case 1 /* ASTTag.Literal */:
|
|
32
|
+
{
|
|
33
|
+
if (ast.literal === null) {
|
|
34
|
+
return tsplus_module_2.now("null");
|
|
35
|
+
} else {
|
|
36
|
+
return tsplus_module_2.now(ast.literal.toString());
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
case 2 /* ASTTag.UniqueSymbol */:
|
|
40
|
+
return tsplus_module_2.now(ast.symbol.toString());
|
|
41
|
+
case 3 /* ASTTag.UndefinedKeyword */:
|
|
42
|
+
return tsplus_module_2.now("undefined");
|
|
43
|
+
case 4 /* ASTTag.VoidKeyword */:
|
|
44
|
+
return tsplus_module_2.now("void");
|
|
45
|
+
case 5 /* ASTTag.NeverKeyword */:
|
|
46
|
+
return tsplus_module_2.now("never");
|
|
47
|
+
case 6 /* ASTTag.UnknownKeyword */:
|
|
48
|
+
return tsplus_module_2.now("unknown");
|
|
49
|
+
case 7 /* ASTTag.AnyKeyword */:
|
|
50
|
+
return tsplus_module_2.now("any");
|
|
51
|
+
case 8 /* ASTTag.StringKeyword */:
|
|
52
|
+
return tsplus_module_2.now("string");
|
|
53
|
+
case 9 /* ASTTag.NumberKeyword */:
|
|
54
|
+
return tsplus_module_2.now("number");
|
|
55
|
+
case 10 /* ASTTag.BooleanKeyword */:
|
|
56
|
+
return tsplus_module_2.now("boolean");
|
|
57
|
+
case 11 /* ASTTag.BigIntKeyword */:
|
|
58
|
+
return tsplus_module_2.now("bigint");
|
|
59
|
+
case 12 /* ASTTag.SymbolKeyword */:
|
|
60
|
+
return tsplus_module_2.now("symbol");
|
|
61
|
+
case 13 /* ASTTag.ObjectKeyword */:
|
|
62
|
+
return tsplus_module_2.now("object");
|
|
63
|
+
case 15 /* ASTTag.TemplateLiteral */:
|
|
64
|
+
return tsplus_module_2.now("`" + formatTemplateLiteral(ast) + "`");
|
|
65
|
+
case 16 /* ASTTag.Tuple */:
|
|
66
|
+
return tsplus_module_5.flatMap(elements => tsplus_module_5.flatMap(restElements => tsplus_module_2.always(() => {
|
|
67
|
+
if (elements.length === 0 && restElements.length === 1) {
|
|
68
|
+
if (ast.isReadonly) {
|
|
69
|
+
return `ReadonlyArray<${tsplus_module_3.unsafeGet(0)(restElements)}>`;
|
|
70
|
+
} else {
|
|
71
|
+
return `Array<${tsplus_module_3.unsafeGet(0)(restElements)}>`;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
const prefix = (ast.isReadonly ? "readonly " : "") + "[" + tsplus_module_3.join(", ")(elements);
|
|
75
|
+
const middle = restElements.length > 0 ? ", " : "";
|
|
76
|
+
const suffix = tsplus_module_3.join(", ")(tsplus_module_3.map(s => `...${s}`)(restElements)) + "]";
|
|
77
|
+
return prefix + middle + suffix;
|
|
78
|
+
}))(tsplus_module_7.match(() => tsplus_module_2.now(tsplus_module_3.empty()), rest => tsplus_module_3._traverse(rest)(tsplus_module_4.Applicative)(go))(ast.rest)))(tsplus_module_3._traverse(tsplus_module_3.map(element => element.type)(ast.elements))(tsplus_module_4.Applicative)(go));
|
|
79
|
+
case 17 /* ASTTag.TypeLiteral */:
|
|
80
|
+
return tsplus_module_5.flatMap(propertySignatures => tsplus_module_5.map(indexSignatures => {
|
|
81
|
+
const required = [];
|
|
82
|
+
const optional = [];
|
|
83
|
+
tsplus_module_3.forEachWithIndex((i, ps) => {
|
|
84
|
+
const name = ps.name;
|
|
85
|
+
if (!ps.isOptional) {
|
|
86
|
+
required.push([name, tsplus_module_3.unsafeGet(i)(propertySignatures)]);
|
|
87
|
+
} else {
|
|
88
|
+
optional.push([name, tsplus_module_3.unsafeGet(i)(propertySignatures)]);
|
|
89
|
+
}
|
|
90
|
+
})(ast.propertySignatures);
|
|
91
|
+
const prefix = "{";
|
|
92
|
+
const properties = required.concat(optional).sort(([k1], [k2]) => k1.toLocaleString().localeCompare(k2.toLocaleString())).map(([propertyKey, type]) => `${String(propertyKey)}: ${type}`).join(", ");
|
|
93
|
+
const index = tsplus_module_3.join(", ")(tsplus_module_3.map(([param, type]) => `[x: ${param}]: ${type}`)(indexSignatures));
|
|
94
|
+
const suffix = "}";
|
|
95
|
+
return prefix + " " + properties + (index.length === 0 ? "" : ", ") + index + " " + suffix;
|
|
96
|
+
})(tsplus_module_3._traverse(ast.indexSignatures)(tsplus_module_4.Applicative)(is => tsplus_module_5.zip(go(is.type))(go(is.parameter)))))(tsplus_module_3._traverse(ast.propertySignatures)(tsplus_module_4.Applicative)(ps => go(ps.type)));
|
|
97
|
+
case 18 /* ASTTag.Union */:
|
|
98
|
+
return tsplus_module_5.map(ts => tsplus_module_3.join(" | ")(ts))(tsplus_module_3._traverse(ast.types)(tsplus_module_4.Applicative)(go));
|
|
99
|
+
case 19 /* ASTTag.Lazy */:
|
|
100
|
+
{
|
|
101
|
+
const f = () => go(ast.getAST());
|
|
102
|
+
const get = memoize(f);
|
|
103
|
+
return tsplus_module_2.defer(() => get(f));
|
|
104
|
+
}
|
|
105
|
+
case 14 /* ASTTag.Enum */:
|
|
106
|
+
{
|
|
107
|
+
return tsplus_module_2.now(tsplus_module_3.join(" | ")(tsplus_module_3.map(([name]) => name)(ast.enums)));
|
|
108
|
+
}
|
|
109
|
+
case 20 /* ASTTag.Refinement */:
|
|
110
|
+
{
|
|
111
|
+
return tsplus_module_7.match(() => tsplus_module_5.map(from => `Refined<${from}>`)(go(ast.from)), id => tsplus_module_2.now(id))(ast.annotations.get(tsplus_module_6.Identifier));
|
|
112
|
+
}
|
|
113
|
+
case 21 /* ASTTag.Transform */:
|
|
114
|
+
return go(ast.to);
|
|
115
|
+
case 22 /* ASTTag.Validation */:
|
|
116
|
+
{
|
|
117
|
+
return tsplus_module_5.map(from => {
|
|
118
|
+
const validationNames = tsplus_module_3.join(" & ")(tsplus_module_3.map(v => v.name)(ast.validation));
|
|
119
|
+
if (validationNames.length <= 0) {
|
|
120
|
+
return from;
|
|
121
|
+
}
|
|
122
|
+
return `${from} & ${validationNames}`;
|
|
123
|
+
})(go(ast.from));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
function formatTemplateLiteralSpan(span) {
|
|
128
|
+
switch (span.type._tag) {
|
|
129
|
+
case 8 /* ASTTag.StringKeyword */:
|
|
130
|
+
return "${string}";
|
|
131
|
+
case 9 /* ASTTag.NumberKeyword */:
|
|
132
|
+
return "${number}";
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
function formatTemplateLiteral(ast) {
|
|
136
|
+
return ast.head + tsplus_module_3.join("")(tsplus_module_3.map(span => formatTemplateLiteralSpan(span) + span.literal)(ast.spans));
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=Show.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Show.mjs","names":["memoize","show","self","ev","go","ast","tsplus_module_1","run","_tag","tsplus_module_7","match","tsplus_module_2","now","id","tsplus_module_5","map","ts","length","tsplus_module_3","join","_traverse","typeParameters","tsplus_module_4","Applicative","annotations","get","tsplus_module_6","Identifier","literal","toString","symbol","formatTemplateLiteral","flatMap","elements","restElements","always","isReadonly","unsafeGet","prefix","middle","suffix","s","empty","rest","element","type","propertySignatures","indexSignatures","required","optional","forEachWithIndex","i","ps","name","isOptional","push","properties","concat","sort","k1","k2","toLocaleString","localeCompare","propertyKey","String","index","param","is","zip","parameter","types","f","getAST","defer","enums","from","to","validationNames","v","validation","formatTemplateLiteralSpan","span","head","spans"],"sources":["../_src/Show.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/_src/Gen.ts
CHANGED
|
@@ -106,7 +106,6 @@ const go = memoize(function go(ast: AST): Gen<Sized, any> {
|
|
|
106
106
|
case ASTTag.TypeLiteral: {
|
|
107
107
|
const propertySignatureTypes = ast.propertySignatures.map((ps) => go(ps.type));
|
|
108
108
|
const indexSignatures = ast.indexSignatures.map((is) => [go(is.parameter), go(is.type)] as const);
|
|
109
|
-
const gens: any = {};
|
|
110
109
|
const requiredGens: Record<PropertyKey, Gen<any, any>> = {};
|
|
111
110
|
const optionalGens: Record<PropertyKey, Gen<any, any>> = {};
|
|
112
111
|
for (let i = 0; i < propertySignatureTypes.length; i++) {
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const ParseFailureTypeId = Symbol.for("fncts.schema.ParseFailure");
|
|
2
|
+
export type ParseFailureTypeId = typeof ParseFailureTypeId;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @tsplus type fncts.schema.ParseFailure
|
|
6
|
+
* @tsplus companion fncts.schema.ParseFailureOps
|
|
7
|
+
*/
|
|
8
|
+
export class ParseFailure {
|
|
9
|
+
readonly [ParseFailureTypeId]: ParseFailureTypeId = ParseFailureTypeId;
|
|
10
|
+
constructor(readonly errors: Vector<ParseError>) {}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @tsplus static fncts.schema.ParseFailureOps __call
|
|
15
|
+
*/
|
|
16
|
+
export function make(errors: Vector<ParseError>): ParseFailure {
|
|
17
|
+
return new ParseFailure(errors);
|
|
18
|
+
}
|
package/_src/ParseResult.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @tsplus type fncts.schema.ParseResult
|
|
3
3
|
* @tsplus companion fncts.schema.ParseResultOps
|
|
4
4
|
*/
|
|
5
|
-
export interface ParseResult<A> extends Either<
|
|
5
|
+
export interface ParseResult<A> extends Either<ParseFailure, A> {}
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @tsplus static fncts.schema.ParseResultOps succeed
|
|
@@ -15,12 +15,12 @@ export function succeed<A>(value: A): ParseResult<A> {
|
|
|
15
15
|
* @tsplus static fncts.schema.ParseResultOps failures
|
|
16
16
|
*/
|
|
17
17
|
export function failures<A = never>(value: Vector<ParseError>): ParseResult<A> {
|
|
18
|
-
return Either.left(value);
|
|
18
|
+
return Either.left(ParseFailure(value));
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* @tsplus static fncts.schema.ParseResultOps fail
|
|
23
23
|
*/
|
|
24
24
|
export function fail<A = never>(value: ParseError): ParseResult<A> {
|
|
25
|
-
return Either.left(Vector(value));
|
|
25
|
+
return Either.left(ParseFailure(Vector(value)));
|
|
26
26
|
}
|
package/_src/Parser/api.ts
CHANGED
|
@@ -55,8 +55,8 @@ function parseOrThrow(ast: AST) {
|
|
|
55
55
|
const parser = parserFor(ast);
|
|
56
56
|
return (input: unknown, options?: ParseOptions) => {
|
|
57
57
|
return parser(input, options).match({
|
|
58
|
-
Left: (
|
|
59
|
-
throw new Error(ParseError.format(errors));
|
|
58
|
+
Left: (failure) => {
|
|
59
|
+
throw new Error(ParseError.format(failure.errors));
|
|
60
60
|
},
|
|
61
61
|
Right: Function.identity,
|
|
62
62
|
});
|
|
@@ -78,7 +78,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
78
78
|
const t = parser(input[i], options);
|
|
79
79
|
Either.concrete(t);
|
|
80
80
|
if (t.isLeft()) {
|
|
81
|
-
const e = ParseError.IndexError(i, t.left);
|
|
81
|
+
const e = ParseError.IndexError(i, t.left.errors);
|
|
82
82
|
errors.push(e);
|
|
83
83
|
if (allErrors) {
|
|
84
84
|
continue;
|
|
@@ -97,7 +97,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
97
97
|
const t = head(input[i], options);
|
|
98
98
|
Either.concrete(t);
|
|
99
99
|
if (t.isLeft()) {
|
|
100
|
-
const e = ParseError.IndexError(i, t.left);
|
|
100
|
+
const e = ParseError.IndexError(i, t.left.errors);
|
|
101
101
|
errors.push(e);
|
|
102
102
|
if (allErrors) {
|
|
103
103
|
continue;
|
|
@@ -116,7 +116,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
116
116
|
const t = tail[j]!(input[i], options);
|
|
117
117
|
Either.concrete(t);
|
|
118
118
|
if (t.isLeft()) {
|
|
119
|
-
const e = ParseError.IndexError(i, t.left);
|
|
119
|
+
const e = ParseError.IndexError(i, t.left.errors);
|
|
120
120
|
errors.push(e);
|
|
121
121
|
if (allErrors) {
|
|
122
122
|
continue;
|
|
@@ -178,7 +178,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
178
178
|
const t: ParseResult<unknown> = parser(input[name], options);
|
|
179
179
|
Either.concrete(t);
|
|
180
180
|
if (t.isLeft()) {
|
|
181
|
-
const e = ParseError.KeyError(AST.createKey(name), name, t.left);
|
|
181
|
+
const e = ParseError.KeyError(AST.createKey(name), name, t.left.errors);
|
|
182
182
|
errors.push(e);
|
|
183
183
|
if (allErrors) {
|
|
184
184
|
continue;
|
|
@@ -202,7 +202,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
202
202
|
let t = parameter(key, options);
|
|
203
203
|
Either.concrete(t);
|
|
204
204
|
if (t.isLeft()) {
|
|
205
|
-
const e = ParseError.KeyError(AST.createKey(key), key, t.left);
|
|
205
|
+
const e = ParseError.KeyError(AST.createKey(key), key, t.left.errors);
|
|
206
206
|
errors.push(e);
|
|
207
207
|
if (allErrors) {
|
|
208
208
|
continue;
|
|
@@ -214,7 +214,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
214
214
|
t = type(input[key], options);
|
|
215
215
|
Either.concrete(t);
|
|
216
216
|
if (t.isLeft()) {
|
|
217
|
-
const e = ParseError.KeyError(AST.createKey(key), key, t.left);
|
|
217
|
+
const e = ParseError.KeyError(AST.createKey(key), key, t.left.errors);
|
|
218
218
|
errors.push(e);
|
|
219
219
|
if (allErrors) {
|
|
220
220
|
continue;
|
|
@@ -272,7 +272,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
272
272
|
if (t.isRight()) {
|
|
273
273
|
return t;
|
|
274
274
|
} else {
|
|
275
|
-
errors.push(ParseError.UnionMemberError(t.left));
|
|
275
|
+
errors.push(ParseError.UnionMemberError(t.left.errors));
|
|
276
276
|
}
|
|
277
277
|
}
|
|
278
278
|
} else {
|
|
@@ -298,7 +298,7 @@ const go = memoize(function go(ast: AST): Parser<any> {
|
|
|
298
298
|
if (t.isRight()) {
|
|
299
299
|
return t;
|
|
300
300
|
} else {
|
|
301
|
-
errors.push(ParseError.UnionMemberError(t.left));
|
|
301
|
+
errors.push(ParseError.UnionMemberError(t.left.errors));
|
|
302
302
|
}
|
|
303
303
|
}
|
|
304
304
|
|
package/_src/Schema/api/conc.ts
CHANGED
|
@@ -49,7 +49,7 @@ export function concParser<A>(value: Schema<A>): Parser<Conc<A>> {
|
|
|
49
49
|
const t = value.decode(v);
|
|
50
50
|
Either.concrete(t);
|
|
51
51
|
if (t.isLeft()) {
|
|
52
|
-
errors.push(ParseError.IndexError(i, t.left));
|
|
52
|
+
errors.push(ParseError.IndexError(i, t.left.errors));
|
|
53
53
|
if (!allErrors) {
|
|
54
54
|
return ParseResult.failures(errors);
|
|
55
55
|
}
|
|
@@ -78,7 +78,7 @@ function hashMapParser<K, V>(key: Schema<K>, value: Schema<V>): Parser<HashMap<K
|
|
|
78
78
|
const tk = key.decode(k, options);
|
|
79
79
|
Either.concrete(tk);
|
|
80
80
|
if (tk.isLeft()) {
|
|
81
|
-
errors.push(ParseError.KeyError(key.ast, k, tk.left));
|
|
81
|
+
errors.push(ParseError.KeyError(key.ast, k, tk.left.errors));
|
|
82
82
|
if (!allErrors) {
|
|
83
83
|
return ParseResult.failures(errors);
|
|
84
84
|
}
|
|
@@ -59,7 +59,7 @@ function parser<A>(value: Schema<A>): Parser<ImmutableArray<A>> {
|
|
|
59
59
|
const t = value.decode(v, options);
|
|
60
60
|
Either.concrete(t);
|
|
61
61
|
if (t.isLeft()) {
|
|
62
|
-
errors.push(ParseError.IndexError(index, t.left));
|
|
62
|
+
errors.push(ParseError.IndexError(index, t.left.errors));
|
|
63
63
|
if (allErrors) {
|
|
64
64
|
continue;
|
|
65
65
|
}
|
package/_src/Schema/api/list.ts
CHANGED
|
@@ -54,7 +54,7 @@ function parser<A>(value: Schema<A>): Parser<List<A>> {
|
|
|
54
54
|
const t = value.decode(v, options);
|
|
55
55
|
Either.concrete(t);
|
|
56
56
|
if (t.isLeft()) {
|
|
57
|
-
errors.push(ParseError.IndexError(index, t.left));
|
|
57
|
+
errors.push(ParseError.IndexError(index, t.left.errors));
|
|
58
58
|
if (allErrors) {
|
|
59
59
|
continue;
|
|
60
60
|
}
|
|
@@ -107,7 +107,7 @@ export function deriveStruct<A extends Record<string, any>>(
|
|
|
107
107
|
propertySignatures.concat(
|
|
108
108
|
maybeFieldsKeys.map((key) =>
|
|
109
109
|
// @ts-expect-error
|
|
110
|
-
AST.createPropertySignature(key, Schema.maybe(maybeFields![key]!).ast,
|
|
110
|
+
AST.createPropertySignature(key, Schema.maybe(maybeFields![key]!).ast, false, true),
|
|
111
111
|
),
|
|
112
112
|
),
|
|
113
113
|
Vector.empty(),
|
|
@@ -162,10 +162,9 @@ export function deriveLazy<A>(f: (_: Schema<A>) => Schema<A>): Schema<A> {
|
|
|
162
162
|
}
|
|
163
163
|
|
|
164
164
|
/**
|
|
165
|
-
* @tsplus derive fncts.schema.Schema[fncts.Array]<_> 10
|
|
166
165
|
* @tsplus derive fncts.schema.Schema[fncts.ReadonlyArray]<_> 10
|
|
167
166
|
*/
|
|
168
|
-
export function
|
|
167
|
+
export function deriveReadonlyArray<A extends ReadonlyArray<any>>(
|
|
169
168
|
...[element]: [A] extends [ReadonlyArray<infer _A>]
|
|
170
169
|
? Check<Check.IsEqual<A, ReadonlyArray<_A>>> extends Check.True
|
|
171
170
|
? [element: Schema<_A>]
|
|
@@ -175,6 +174,19 @@ export function deriveArray<A extends ReadonlyArray<any>>(
|
|
|
175
174
|
return Schema.array(element) as unknown as Schema<A>;
|
|
176
175
|
}
|
|
177
176
|
|
|
177
|
+
/**
|
|
178
|
+
* @tsplus derive fncts.schema.Schema[fncts.Array]<_> 10
|
|
179
|
+
*/
|
|
180
|
+
export function deriveArray<A extends Array<any>>(
|
|
181
|
+
...[element]: [A] extends [Array<infer _A>]
|
|
182
|
+
? Check<Check.IsEqual<A, Array<_A>>> extends Check.True
|
|
183
|
+
? [element: Schema<_A>]
|
|
184
|
+
: never
|
|
185
|
+
: never
|
|
186
|
+
): Schema<A> {
|
|
187
|
+
return Schema.mutableArray(element) as unknown as Schema<A>;
|
|
188
|
+
}
|
|
189
|
+
|
|
178
190
|
/**
|
|
179
191
|
* @tsplus derive fncts.schema.Schema<_> 15
|
|
180
192
|
*/
|