@fncts/schema 0.0.10 → 0.0.12

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 (90) hide show
  1. package/ASTAnnotation.d.ts +9 -9
  2. package/Parser.d.ts +2 -2
  3. package/Schema/api.d.ts +2 -2
  4. package/Schema/definition.d.ts +5 -0
  5. package/Schema.d.ts +9 -8
  6. package/_cjs/AST.cjs +43 -102
  7. package/_cjs/AST.cjs.map +1 -1
  8. package/_cjs/ASTAnnotation.cjs +22 -42
  9. package/_cjs/ASTAnnotation.cjs.map +1 -1
  10. package/_cjs/ASTAnnotationMap.cjs +2 -2
  11. package/_cjs/ASTAnnotationMap.cjs.map +1 -1
  12. package/_cjs/Gen.cjs +2 -2
  13. package/_cjs/Gen.cjs.map +1 -1
  14. package/_cjs/InvalidInterpretationError.cjs +1 -2
  15. package/_cjs/InvalidInterpretationError.cjs.map +1 -1
  16. package/_cjs/ParseError.cjs +4 -5
  17. package/_cjs/ParseError.cjs.map +1 -1
  18. package/_cjs/ParseResult.cjs +2 -2
  19. package/_cjs/Parser/api.cjs +8 -5
  20. package/_cjs/Parser/api.cjs.map +1 -1
  21. package/_cjs/Parser/definition.cjs +2 -2
  22. package/_cjs/Parser/interpreter.cjs +2 -2
  23. package/_cjs/Parser/interpreter.cjs.map +1 -1
  24. package/_cjs/Parser.cjs +8 -8
  25. package/_cjs/Parser.cjs.map +1 -1
  26. package/_cjs/Schema/api/conc.cjs +4 -5
  27. package/_cjs/Schema/api/conc.cjs.map +1 -1
  28. package/_cjs/Schema/api/either.cjs +4 -6
  29. package/_cjs/Schema/api/either.cjs.map +1 -1
  30. package/_cjs/Schema/api/hashMap.cjs +4 -6
  31. package/_cjs/Schema/api/hashMap.cjs.map +1 -1
  32. package/_cjs/Schema/api/hashSet.cjs +7 -7
  33. package/_cjs/Schema/api/hashSet.cjs.map +1 -1
  34. package/_cjs/Schema/api/immutableArray.cjs +4 -6
  35. package/_cjs/Schema/api/immutableArray.cjs.map +1 -1
  36. package/_cjs/Schema/api/list.cjs +4 -6
  37. package/_cjs/Schema/api/list.cjs.map +1 -1
  38. package/_cjs/Schema/api/maybe.cjs +4 -6
  39. package/_cjs/Schema/api/maybe.cjs.map +1 -1
  40. package/_cjs/Schema/api.cjs +29 -56
  41. package/_cjs/Schema/api.cjs.map +1 -1
  42. package/_cjs/Schema/definition.cjs +13 -6
  43. package/_cjs/Schema/definition.cjs.map +1 -1
  44. package/_cjs/Schema/derivations.cjs +14 -6
  45. package/_cjs/Schema/derivations.cjs.map +1 -1
  46. package/_cjs/Schema.cjs +32 -32
  47. package/_cjs/Schema.cjs.map +1 -1
  48. package/_cjs/utils.cjs +2 -2
  49. package/_cjs/utils.cjs.map +1 -1
  50. package/_mjs/AST.mjs +5 -28
  51. package/_mjs/AST.mjs.map +1 -1
  52. package/_mjs/ASTAnnotation.mjs.map +1 -1
  53. package/_mjs/ASTAnnotationMap.mjs +1 -2
  54. package/_mjs/ASTAnnotationMap.mjs.map +1 -1
  55. package/_mjs/Gen.mjs.map +1 -1
  56. package/_mjs/ParseError.mjs +1 -1
  57. package/_mjs/ParseError.mjs.map +1 -1
  58. package/_mjs/Parser/api.mjs +6 -3
  59. package/_mjs/Parser/api.mjs.map +1 -1
  60. package/_mjs/Parser/interpreter.mjs.map +1 -1
  61. package/_mjs/Parser.mjs +3 -2
  62. package/_mjs/Parser.mjs.map +1 -1
  63. package/_mjs/Schema/api/conc.mjs +1 -1
  64. package/_mjs/Schema/api/conc.mjs.map +1 -1
  65. package/_mjs/Schema/api/either.mjs.map +1 -1
  66. package/_mjs/Schema/api/hashMap.mjs.map +1 -1
  67. package/_mjs/Schema/api/hashSet.mjs.map +1 -1
  68. package/_mjs/Schema/api/immutableArray.mjs.map +1 -1
  69. package/_mjs/Schema/api/list.mjs.map +1 -1
  70. package/_mjs/Schema/api/maybe.mjs.map +1 -1
  71. package/_mjs/Schema/api.mjs.map +1 -1
  72. package/_mjs/Schema/definition.mjs +7 -0
  73. package/_mjs/Schema/definition.mjs.map +1 -1
  74. package/_mjs/Schema/derivations.mjs +12 -4
  75. package/_mjs/Schema/derivations.mjs.map +1 -1
  76. package/_mjs/Schema.mjs +10 -8
  77. package/_mjs/Schema.mjs.map +1 -1
  78. package/_mjs/utils.mjs.map +1 -1
  79. package/_src/AST.ts +24 -6
  80. package/_src/ASTAnnotation.ts +5 -1
  81. package/_src/ParseError.ts +13 -3
  82. package/_src/Parser/api.ts +6 -3
  83. package/_src/Parser.ts +3 -2
  84. package/_src/Schema/api/conc.ts +1 -1
  85. package/_src/Schema/definition.ts +7 -0
  86. package/_src/Schema/derivations.ts +4 -0
  87. package/_src/Schema.ts +12 -8
  88. package/_src/global.ts +2 -2
  89. package/global.d.ts +2 -2
  90. package/package.json +3 -3
@@ -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","deriveArray","element","array","deriveRecord","keySchema","valueSchema","record"],"sources":["../../_src/Schema/derivations.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;AAGA,SAASA,OAAO,QAAQ,qBAAqB;AAE7C;;;AAGA,OAAM,SAAUC,gBAAgBA,CAC9B,GAAG,CAACC,IAAI,EAAEC,MAAM,CAOP;EAET,OAAOC,eAAA,CAAAC,IAAA,CACLC,eAAA,CAAAC,gBAAA,CACEL,IAAI,CAACM,GAAG,EACRC,eAAA,CAAAC,IAAA,CAAYC,MAAM,CAACC,MAAM,CAACT,MAAM,CAAC,CAAC,EAClCD,IAAI,CAACM,GAAG,CAACK,WAAW,CAACC,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsBP,eAAA,CAAAC,IAAA,CAAYC,MAAM,CAACC,MAAM,CAACT,MAAM,CAAC,CAAC,CAAC,CACvF,CACF;AACH;AAEA;;;AAGA,OAAM,SAAUc,aAAaA,CAC3B,GAAG,CAACC,KAAK,CAAkG;EAE3G,OAAOd,eAAA,CAAAe,OAAA,CAAeD,KAAK,CAAC;AAC9B;AAIA;;;AAGA,OAAM,SAAUE,YAAYA,CAC1B,GAAG,CAACC,cAAc,EAAEC,cAAc,EAAEC,WAAW,CAsBtC;EAET,MAAMC,eAAe,GAAwBxB,OAAO,CAACuB,WAAW,CAAC;EACjE,IAAIE,kBAAkB,GAAuBhB,eAAA,CAAAiB,GAAA,CAA6BC,GAAG,IAC3ErB,eAAA,CAAAsB,uBAAA,CAA4BD,GAAG,EAAEN,cAAc,CAACM,GAAG,CAAE,CAACnB,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAD5BR,OAAO,CAACqB,cAAc,CAAC,CAEnE;EAED,IAAIC,cAAc,EAAE;IAClBG,kBAAkB,GAAGhB,eAAA,CAAAoB,MAAA,CACnBpB,eAAA,CAAAiB,GAAA,CAA6BC,GAAG,IAAKrB,eAAA,CAAAsB,uBAAA,CAA4BD,GAAG,EAAEL,cAAc,CAACK,GAAG,CAAE,CAACnB,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,EAA3GR,OAAO,CAACsB,cAAc,CAAC,CAAqF,EADzFG,kBAAkB,CAEtC;;EAGH,MAAMK,MAAM,GAAG1B,eAAA,CAAAC,IAAA,CAAeC,eAAA,CAAAyB,iBAAA,CAAsBN,kBAAkB,EAAEhB,eAAA,CAAAuB,KAAA,EAAc,CAAC,CAAC;EAExF,IAAIvB,eAAA,CAAAwB,OAAA,CAAAT,eAAe,CAAU,EAAE;IAC7B,OAAOM,MAAqB;;EAG9BL,kBAAkB,GAAIK,MAAM,CAACtB,GAAmB,CAACiB,kBAAkB;EAEnE,MAAMf,IAAI,GAAGN,eAAA,CAAAC,IAAA,CACXC,eAAA,CAAAyB,iBAAA,CACEtB,eAAA,CAAAoB,MAAA,CACEpB,eAAA,CAAAiB,GAAA,CAAqBC,GAAG,IACtBrB,eAAA,CAAAsB,uBAAA,CACED,GAAG,EACHrB,eAAA,CAAA4B,WAAA,CAAgBzB,eAAA,CAAA0B,MAAA,CAAA7B,eAAA,CAAA8B,gBAAA,EAA6B9B,eAAA,CAAA+B,aAAA,CAAkB,IAAI,CAAC,EAAEd,WAAY,CAACI,GAAG,CAAE,CAACnB,GAAG,CAAC,CAAC,EAC9F,IAAI,EACJ,IAAI,CACL,EANHgB,eAAe,CAOd,EARHC,kBAAkB,CASjB,EACDhB,eAAA,CAAAuB,KAAA,EAAc,CACf,CACF;EAED,MAAMM,EAAE,GAAGlC,eAAA,CAAAC,IAAA,CACTC,eAAA,CAAAyB,iBAAA,CACEtB,eAAA,CAAAoB,MAAA,CACEpB,eAAA,CAAAiB,GAAA,CAAqBC,GAAG,IACtBrB,eAAA,CAAAsB,uBAAA,CAA4BD,GAAG,EAAEY,eAAA,CAAAC,KAAA,CAAajB,WAAY,CAACI,GAAG,CAAE,CAAC,CAACnB,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,EADpFgB,eAAe,CAEd,EAHHC,kBAAkB,CAIjB,EACDhB,eAAA,CAAAuB,KAAA,EAAc,CACf,CACF;EAED,OAAO5B,eAAA,CAAAqC,SAAA,CACLH,EAAE,EACDI,KAAK,IAAI;IACR,MAAMC,MAAM,GAAG;MAAE,GAAGD;IAAK,CAAE;IAC3B,KAAK,MAAMf,GAAG,IAAIH,eAAe,EAAE;MACjCmB,MAAM,CAAChB,GAAG,CAAC,GAAGiB,eAAA,CAAAC,YAAA,CAAmBH,KAAK,CAACf,GAAG,CAAC,CAAC;;IAE9C,OAAOgB,MAAM;EACf,CAAC,EACAD,KAAK,IAAI;IACR,MAAMC,MAAM,GAAG;MAAE,GAAGD;IAAK,CAAE;IAC3B,KAAK,MAAMf,GAAG,IAAIH,eAAe,EAAE;MACjC,MAAMN,KAAK,GAAewB,KAAK,CAACf,GAAG,CAAC;MACpC,IAAImB,eAAA,CAAAC,SAAA,CAAA7B,KAAK,CAAY,EAAE;QACrB,OAAOyB,MAAM,CAAChB,GAAG,CAAC;QAClB;;MAEFgB,MAAM,CAAChB,GAAG,CAAC,GAAAqB,eAAA,CAAAC,WAAA,CAAG/B,KAAK,CAAM;;IAE3B,OAAOyB,MAAM;EACf,CAAC,EApBIjC,IAAI,CAqBV;AACH;AAEA;;;AAGA,OAAM,SAAUwC,WAAWA,CACzB,GAAG,CAACC,UAAU,CAAsG;EAEpH,OAAoB/C,eAAA,CAAAgD,KAAA,CAAa,GAAGD,UAAU,CAAC;AACjD;AAEA;;;AAGA,OAAM,SAAUE,UAAUA,CAAIC,CAA8B;EAC1D,IAAIC,MAAuB;EAC3B,MAAM/C,GAAG,GAAGF,eAAA,CAAAkD,UAAA,CAAe,MAAK;IAC9B,IAAI,CAACD,MAAM,EAAE;MACXA,MAAM,GAAGD,CAAC,CAAClD,eAAA,CAAAC,IAAA,CAAeG,GAAG,CAAC,CAAC,CAACA,GAAG;;IAErC,OAAO+C,MAAM;EACf,CAAC,CAAC;EACF,OAAOnD,eAAA,CAAAC,IAAA,CAAeG,GAAG,CAAC;AAC5B;AAEA;;;;AAIA,OAAM,SAAUiD,WAAWA,CACzB,GAAG,CAACC,OAAO,CAIF;EAET,OAAOtD,eAAA,CAAAuD,KAAA,CAAaD,OAAO,CAAyB;AACtD;AAEA;;;AAGA,OAAM,SAAUE,YAAYA,CAC1B,GAAG,CAACC,SAAS,EAAEC,WAAW,CAIjB;EAET,OAAO1D,eAAA,CAAA2D,MAAA,CAAcF,SAAoC,EAAEC,WAAW,CAAc;AACtF"}
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","deriveArray","element","array","deriveRecord","keySchema","valueSchema","record"],"sources":["../../_src/Schema/derivations.ts"],"sourcesContent":[null],"mappings":"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"}
package/_mjs/Schema.mjs CHANGED
@@ -1,14 +1,16 @@
1
+ /* eslint-disable simple-import-sort/exports */
1
2
  // codegen:start { preset: barrel, include: ./Schema/*.ts }
2
- export * from "./Schema/api.mjs";
3
- export * from "./Schema/definition.mjs";
4
3
  export * from "./Schema/derivations.mjs";
4
+ export * from "./Schema/definition.mjs";
5
+ export * from "./Schema/api.mjs";
5
6
  // codegen:end
7
+ /* eslint-disable simple-import-sort/exports */
6
8
  // codegen:start { preset: barrel, include: ./Schema/api/*.ts }
7
- export * from "./Schema/api/conc.mjs";
8
- export * from "./Schema/api/either.mjs";
9
- export * from "./Schema/api/hashMap.mjs";
10
- export * from "./Schema/api/hashSet.mjs";
11
- export * from "./Schema/api/immutableArray.mjs";
12
- export * from "./Schema/api/list.mjs";
13
9
  export * from "./Schema/api/maybe.mjs";
10
+ export * from "./Schema/api/list.mjs";
11
+ export * from "./Schema/api/immutableArray.mjs";
12
+ export * from "./Schema/api/hashSet.mjs";
13
+ export * from "./Schema/api/hashMap.mjs";
14
+ export * from "./Schema/api/either.mjs";
15
+ export * from "./Schema/api/conc.mjs";
14
16
  //# sourceMappingURL=Schema.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.mjs","names":[],"sources":["../_src/Schema.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA,cAAc,kBAAiB;AAC/B,cAAc,yBAAwB;AACtC,cAAc,0BAAyB;AACvC;AAEA;AACA,cAAc,uBAAsB;AACpC,cAAc,yBAAwB;AACtC,cAAc,0BAAyB;AACvC,cAAc,0BAAyB;AACvC,cAAc,iCAAgC;AAC9C,cAAc,uBAAsB;AACpC,cAAc,wBAAuB"}
1
+ {"version":3,"file":"Schema.mjs","names":[],"sources":["../_src/Schema.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,kBAAiB;AAC/B;AAEA;AACA;AACA,cAAc,wBAAuB;AACrC,cAAc,uBAAsB;AACpC,cAAc,iCAAgC;AAC9C,cAAc,0BAAyB;AACvC,cAAc,0BAAyB;AACvC,cAAc,yBAAwB;AACtC,cAAc,uBAAsB"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.mjs","names":["memoize","f","cache","Map","a","has","b","set","get","ownKeys","o","tsplus_module_1","from","Reflect","empty","getTemplateLiteralRegex","ast","pattern","head","span","spans","tsplus_module_2","isStringKeyword","type","isNumberKeyword","literal","RegExp","getKeysForIndexSignature","input","parameter","_tag","Object","keys","getOwnPropertySymbols"],"sources":["../_src/utils.ts"],"sourcesContent":[null],"mappings":";;AAIA,OAAM,SAAUA,OAAOA,CAAOC,CAAc;EAC1C,MAAMC,KAAK,GAAG,IAAIC,GAAG,EAAE;EACvB,OAAQC,CAAC,IAAI;IACX,IAAI,CAACF,KAAK,CAACG,GAAG,CAACD,CAAC,CAAC,EAAE;MACjB,MAAME,CAAC,GAAGL,CAAC,CAACG,CAAC,CAAC;MACdF,KAAK,CAACK,GAAG,CAACH,CAAC,EAAEE,CAAC,CAAC;MACf,OAAOA,CAAC;;IAEV,OAAOJ,KAAK,CAACM,GAAG,CAACJ,CAAC,CAAC;EACrB,CAAC;AACH;AAEA,OAAM,SAAUK,OAAOA,CAACC,CAAqB;EAC3C,OAAOA,CAAC,GAAGC,eAAA,CAAAC,IAAA,CAAYC,OAAO,CAACJ,OAAO,CAACC,CAAC,CAAC,CAAC,GAAGC,eAAA,CAAAG,KAAA,EAAc;AAC7D;AAEA,OAAM,SAAUC,uBAAuBA,CAACC,GAAoB;EAC1D,IAAIC,OAAO,GAAG,IAAID,GAAG,CAACE,IAAI,EAAE;EAC5B,KAAK,MAAMC,IAAI,IAAIH,GAAG,CAACI,KAAK,EAAE;IAC5B,IAAIC,eAAA,CAAAC,eAAA,CAAAH,IAAI,CAACI,IAAI,CAAkB,EAAE;MAC/BN,OAAO,IAAI,IAAI;KAChB,MAAM,IAAII,eAAA,CAAAG,eAAA,CAAAL,IAAI,CAACI,IAAI,CAAkB,EAAE;MACtCN,OAAO,IAAI,kBAAkB;;IAE/BA,OAAO,IAAIE,IAAI,CAACM,OAAO;;EAEzBR,OAAO,IAAI,GAAG;EACd,OAAO,IAAIS,MAAM,CAACT,OAAO,CAAC;AAC5B;AAEA,OAAM,SAAUU,wBAAwBA,CACtCC,KAA6C,EAC7CC,SAAsC;EAEtC,QAAQA,SAAS,CAACC,IAAI;IACpB;IACA;MACE,OAAOnB,eAAA,CAAAC,IAAA,CAAYmB,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAAC;IACxC;MACE,OAAOjB,eAAA,CAAAC,IAAA,CAAYmB,MAAM,CAACE,qBAAqB,CAACL,KAAK,CAAC,CAAC;IACzD;MACE,OAAOD,wBAAwB,CAACC,KAAK,EAAEC,SAAS,CAACjB,IAAW,CAAC;EAAC;AAEpE"}
1
+ {"version":3,"file":"utils.mjs","names":["memoize","f","cache","Map","a","has","b","set","get","ownKeys","o","tsplus_module_1","from","Reflect","empty","getTemplateLiteralRegex","ast","pattern","head","span","spans","tsplus_module_2","isStringKeyword","type","isNumberKeyword","literal","RegExp","getKeysForIndexSignature","input","parameter","_tag","Object","keys","getOwnPropertySymbols"],"sources":["../_src/utils.ts"],"sourcesContent":[null],"mappings":";;AAIA,OAAM,SAAUA,OAAOA,CAAOC,CAAc;EAC1C,MAAMC,KAAK,GAAG,IAAIC,GAAG,EAAE;EACvB,OAAQC,CAAC,IAAI;IACX,IAAI,CAACF,KAAK,CAACG,GAAG,CAACD,CAAC,CAAC,EAAE;MACjB,MAAME,CAAC,GAAGL,CAAC,CAACG,CAAC,CAAC;MACdF,KAAK,CAACK,GAAG,CAACH,CAAC,EAAEE,CAAC,CAAC;MACf,OAAOA,CAAC;IACV;IACA,OAAOJ,KAAK,CAACM,GAAG,CAACJ,CAAC,CAAC;EACrB,CAAC;AACH;AAEA,OAAM,SAAUK,OAAOA,CAACC,CAAqB;EAC3C,OAAOA,CAAC,GAAGC,eAAA,CAAAC,IAAA,CAAYC,OAAO,CAACJ,OAAO,CAACC,CAAC,CAAC,CAAC,GAAGC,eAAA,CAAAG,KAAA,EAAc;AAC7D;AAEA,OAAM,SAAUC,uBAAuBA,CAACC,GAAoB;EAC1D,IAAIC,OAAO,GAAG,IAAID,GAAG,CAACE,IAAI,EAAE;EAC5B,KAAK,MAAMC,IAAI,IAAIH,GAAG,CAACI,KAAK,EAAE;IAC5B,IAAIC,eAAA,CAAAC,eAAA,CAAAH,IAAI,CAACI,IAAI,CAAkB,EAAE;MAC/BN,OAAO,IAAI,IAAI;IACjB,CAAC,MAAM,IAAII,eAAA,CAAAG,eAAA,CAAAL,IAAI,CAACI,IAAI,CAAkB,EAAE;MACtCN,OAAO,IAAI,kBAAkB;IAC/B;IACAA,OAAO,IAAIE,IAAI,CAACM,OAAO;EACzB;EACAR,OAAO,IAAI,GAAG;EACd,OAAO,IAAIS,MAAM,CAACT,OAAO,CAAC;AAC5B;AAEA,OAAM,SAAUU,wBAAwBA,CACtCC,KAA6C,EAC7CC,SAAsC;EAEtC,QAAQA,SAAS,CAACC,IAAI;IACpB;IACA;MACE,OAAOnB,eAAA,CAAAC,IAAA,CAAYmB,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAAC;IACxC;MACE,OAAOjB,eAAA,CAAAC,IAAA,CAAYmB,MAAM,CAACE,qBAAqB,CAACL,KAAK,CAAC,CAAC;IACzD;MACE,OAAOD,wBAAwB,CAACC,KAAK,EAAEC,SAAS,CAACjB,IAAW,CAAC;EACjE;AACF"}
package/_src/AST.ts CHANGED
@@ -154,7 +154,10 @@ export type LiteralValue = string | number | boolean | null | bigint;
154
154
 
155
155
  export class Literal extends AST {
156
156
  readonly _tag = ASTTag.Literal;
157
- constructor(readonly literal: LiteralValue, readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty) {
157
+ constructor(
158
+ readonly literal: LiteralValue,
159
+ readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty,
160
+ ) {
158
161
  super();
159
162
  }
160
163
 
@@ -184,7 +187,10 @@ export function isLiteral(self: AST): self is Literal {
184
187
 
185
188
  export class UniqueSymbol extends AST {
186
189
  readonly _tag = ASTTag.UniqueSymbol;
187
- constructor(readonly symbol: symbol, readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty) {
190
+ constructor(
191
+ readonly symbol: symbol,
192
+ readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty,
193
+ ) {
188
194
  super();
189
195
  }
190
196
 
@@ -518,7 +524,10 @@ export function createEnum(
518
524
  }
519
525
 
520
526
  export class TemplateLiteralSpan {
521
- constructor(readonly type: StringKeyword | NumberKeyword, readonly literal: string) {}
527
+ constructor(
528
+ readonly type: StringKeyword | NumberKeyword,
529
+ readonly literal: string,
530
+ ) {}
522
531
  }
523
532
 
524
533
  /*
@@ -564,7 +573,10 @@ export function createTemplateLiteral(
564
573
  */
565
574
 
566
575
  export class Element {
567
- constructor(readonly type: AST, readonly isOptional: boolean) {}
576
+ constructor(
577
+ readonly type: AST,
578
+ readonly isOptional: boolean,
579
+ ) {}
568
580
  }
569
581
 
570
582
  /**
@@ -726,7 +738,10 @@ export function createTypeLiteral(
726
738
 
727
739
  export class Union extends AST {
728
740
  readonly _tag = ASTTag.Union;
729
- constructor(readonly types: Vector<AST>, readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty) {
741
+ constructor(
742
+ readonly types: Vector<AST>,
743
+ readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty,
744
+ ) {
730
745
  super();
731
746
  }
732
747
 
@@ -764,7 +779,10 @@ export function createUnion(candidates: Vector<AST>, annotations: ASTAnnotationM
764
779
 
765
780
  export class Lazy extends AST {
766
781
  readonly _tag = ASTTag.Lazy;
767
- constructor(readonly getAST: () => AST, readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty) {
782
+ constructor(
783
+ readonly getAST: () => AST,
784
+ readonly annotations: ASTAnnotationMap = ASTAnnotationMap.empty,
785
+ ) {
768
786
  super();
769
787
  }
770
788
 
@@ -15,7 +15,11 @@ export class ASTAnnotation<V> implements Hashable, Equatable {
15
15
  declare [ASTAnnotationVariance]: {
16
16
  readonly _V: (_: never) => V;
17
17
  };
18
- constructor(readonly tag: Tag<V>, readonly identifier: string, readonly combine: (v1: V, v2: V) => V) {}
18
+ constructor(
19
+ readonly tag: Tag<V>,
20
+ readonly identifier: string,
21
+ readonly combine: (v1: V, v2: V) => V,
22
+ ) {}
19
23
  get [Symbol.hash]() {
20
24
  return Hashable.combine(Hashable.string(this.identifier), Hashable.unknown(this.tag));
21
25
  }
@@ -32,7 +32,10 @@ export type ParseError =
32
32
  */
33
33
  export class TypeError {
34
34
  readonly _tag = ParseErrorTag.Type;
35
- constructor(readonly expected: AST, readonly actual: unknown) {}
35
+ constructor(
36
+ readonly expected: AST,
37
+ readonly actual: unknown,
38
+ ) {}
36
39
  }
37
40
 
38
41
  /**
@@ -48,7 +51,10 @@ export function typeError(expected: AST, actual: unknown): ParseError {
48
51
  */
49
52
  export class IndexError {
50
53
  readonly _tag = ParseErrorTag.Index;
51
- constructor(readonly index: number, readonly errors: Vector<ParseError>) {}
54
+ constructor(
55
+ readonly index: number,
56
+ readonly errors: Vector<ParseError>,
57
+ ) {}
52
58
  }
53
59
 
54
60
  /**
@@ -64,7 +70,11 @@ export function indexError(index: number, errors: Vector<ParseError>): ParseErro
64
70
  */
65
71
  export class KeyError {
66
72
  readonly _tag = ParseErrorTag.Key;
67
- constructor(readonly keyAST: AST, readonly key: any, readonly errors: Vector<ParseError>) {}
73
+ constructor(
74
+ readonly keyAST: AST,
75
+ readonly key: any,
76
+ readonly errors: Vector<ParseError>,
77
+ ) {}
68
78
  }
69
79
 
70
80
  /**
@@ -54,9 +54,12 @@ function parseMaybe(ast: AST) {
54
54
  function parseOrThrow(ast: AST) {
55
55
  const parser = parserFor(ast);
56
56
  return (input: unknown, options?: ParseOptions) => {
57
- return parser(input, options).match((errors) => {
58
- throw new Error(ParseError.format(errors));
59
- }, Function.identity);
57
+ return parser(input, options).match({
58
+ Left: (errors) => {
59
+ throw new Error(ParseError.format(errors));
60
+ },
61
+ Right: Function.identity,
62
+ });
60
63
  };
61
64
  }
62
65
 
package/_src/Parser.ts CHANGED
@@ -1,5 +1,6 @@
1
+ /* eslint-disable simple-import-sort/exports */
1
2
  // codegen:start { preset: barrel, include: ./Parser/*.ts }
2
- export * from "./Parser/api.js";
3
- export * from "./Parser/definition.js";
4
3
  export * from "./Parser/interpreter.js";
4
+ export * from "./Parser/definition.js";
5
+ export * from "./Parser/api.js";
5
6
  // codegen:end
@@ -46,7 +46,7 @@ export function concParser<A>(value: Schema<A>): Parser<Conc<A>> {
46
46
  const out: Array<A> = [];
47
47
  let i = 0;
48
48
  for (const v of u) {
49
- const t = value.decode(u);
49
+ const t = value.decode(v);
50
50
  Either.concrete(t);
51
51
  if (t.isLeft()) {
52
52
  errors.push(ParseError.IndexError(i, t.left));
@@ -30,3 +30,10 @@ export interface OptionalSchema<in out A> extends Schema<A> {
30
30
  export declare namespace Schema {
31
31
  export type Infer<S extends Schema<any>> = Parameters<S[SchemaVariance]["_A"]>[0];
32
32
  }
33
+
34
+ /**
35
+ * @tsplus static fncts.schema.SchemaOps isSchema
36
+ */
37
+ export function isSchema(u: unknown): u is Schema<unknown> {
38
+ return isObject(u) && SchemaTypeId in u;
39
+ }
@@ -66,11 +66,13 @@ export function deriveStruct<A extends Record<string, any>>(
66
66
  ): Schema<A> {
67
67
  const maybeFieldsKeys: Vector<PropertyKey> = ownKeys(maybeFields);
68
68
  let propertySignatures = ownKeys(requiredFields).map((key) =>
69
+ // @ts-expect-error
69
70
  AST.createPropertySignature(key, requiredFields[key]!.ast, false, true),
70
71
  );
71
72
 
72
73
  if (optionalFields) {
73
74
  propertySignatures = propertySignatures.concat(
75
+ // @ts-expect-error
74
76
  ownKeys(optionalFields).map((key) => AST.createPropertySignature(key, optionalFields[key]!.ast, true, true)),
75
77
  );
76
78
  }
@@ -89,6 +91,7 @@ export function deriveStruct<A extends Record<string, any>>(
89
91
  maybeFieldsKeys.map((key) =>
90
92
  AST.createPropertySignature(
91
93
  key,
94
+ // @ts-expect-error
92
95
  AST.createUnion(Vector(AST.undefinedKeyword, AST.createLiteral(null), maybeFields![key]!.ast)),
93
96
  true,
94
97
  true,
@@ -103,6 +106,7 @@ export function deriveStruct<A extends Record<string, any>>(
103
106
  AST.createTypeLiteral(
104
107
  propertySignatures.concat(
105
108
  maybeFieldsKeys.map((key) =>
109
+ // @ts-expect-error
106
110
  AST.createPropertySignature(key, Schema.maybe(maybeFields![key]!).ast, true, true),
107
111
  ),
108
112
  ),
package/_src/Schema.ts CHANGED
@@ -1,15 +1,19 @@
1
+ /* eslint-disable simple-import-sort/exports */
1
2
  // codegen:start { preset: barrel, include: ./Schema/*.ts }
2
- export * from "./Schema/api.js";
3
- export * from "./Schema/definition.js";
4
3
  export * from "./Schema/derivations.js";
4
+ export * from "./Schema/definition.js";
5
+ export * from "./Schema/api.js";
5
6
  // codegen:end
6
7
 
8
+ /* eslint-disable simple-import-sort/exports */
7
9
  // codegen:start { preset: barrel, include: ./Schema/api/*.ts }
8
- export * from "./Schema/api/conc.js";
9
- export * from "./Schema/api/either.js";
10
- export * from "./Schema/api/hashMap.js";
11
- export * from "./Schema/api/hashSet.js";
12
- export * from "./Schema/api/immutableArray.js";
13
- export * from "./Schema/api/list.js";
14
10
  export * from "./Schema/api/maybe.js";
11
+ export * from "./Schema/api/list.js";
12
+ export * from "./Schema/api/immutableArray.js";
13
+ export * from "./Schema/api/hashSet.js";
14
+ export * from "./Schema/api/hashMap.js";
15
+ export * from "./Schema/api/either.js";
16
+ export * from "./Schema/api/conc.js";
15
17
  // codegen:end
18
+
19
+ export type {} from "./Parser.js";
package/_src/global.ts CHANGED
@@ -50,11 +50,11 @@ import { ParseResult } from "@fncts/schema/ParseResult";
50
50
  /**
51
51
  * @tsplus global
52
52
  */
53
- import { OptionalSchema, Schema } from "@fncts/schema/Schema/definition";
53
+ import {} from "@fncts/schema/Schema";
54
54
  /**
55
55
  * @tsplus global
56
56
  */
57
- import {} from "@fncts/schema/Schema"
57
+ import { OptionalSchema, Schema } from "@fncts/schema/Schema/definition";
58
58
  /**
59
59
  * @tsplus global
60
60
  */
package/global.d.ts CHANGED
@@ -49,11 +49,11 @@ import { ParseResult } from "@fncts/schema/ParseResult";
49
49
  /**
50
50
  * @tsplus global
51
51
  */
52
- import { OptionalSchema, Schema } from "@fncts/schema/Schema/definition";
52
+ import {} from "@fncts/schema/Schema";
53
53
  /**
54
54
  * @tsplus global
55
55
  */
56
- import {} from "@fncts/schema/Schema";
56
+ import { OptionalSchema, Schema } from "@fncts/schema/Schema/definition";
57
57
  /**
58
58
  * @tsplus global
59
59
  */
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@fncts/schema",
3
- "version": "0.0.10",
3
+ "version": "0.0.12",
4
4
  "dependencies": {
5
- "@fncts/base": "0.0.31",
6
- "@fncts/typelevel": "0.0.15"
5
+ "@fncts/base": "0.0.33",
6
+ "@fncts/typelevel": "0.0.16"
7
7
  },
8
8
  "exports": {
9
9
  "./*": {