effect 3.9.2 → 3.10.0

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 (202) hide show
  1. package/Arbitrary/package.json +6 -0
  2. package/FastCheck/package.json +6 -0
  3. package/JSONSchema/package.json +6 -0
  4. package/ParseResult/package.json +6 -0
  5. package/Pretty/package.json +6 -0
  6. package/Schema/package.json +6 -0
  7. package/SchemaAST/package.json +6 -0
  8. package/TSubscriptionRef/package.json +6 -0
  9. package/dist/cjs/Arbitrary.js +490 -0
  10. package/dist/cjs/Arbitrary.js.map +1 -0
  11. package/dist/cjs/Effect.js +247 -16
  12. package/dist/cjs/Effect.js.map +1 -1
  13. package/dist/cjs/FastCheck.js +17 -0
  14. package/dist/cjs/FastCheck.js.map +1 -0
  15. package/dist/cjs/Inspectable.js +43 -3
  16. package/dist/cjs/Inspectable.js.map +1 -1
  17. package/dist/cjs/JSONSchema.js +418 -0
  18. package/dist/cjs/JSONSchema.js.map +1 -0
  19. package/dist/cjs/ParseResult.js +1539 -0
  20. package/dist/cjs/ParseResult.js.map +1 -0
  21. package/dist/cjs/Predicate.js +3 -1
  22. package/dist/cjs/Predicate.js.map +1 -1
  23. package/dist/cjs/Pretty.js +183 -0
  24. package/dist/cjs/Pretty.js.map +1 -0
  25. package/dist/cjs/Schema.js +5529 -0
  26. package/dist/cjs/Schema.js.map +1 -0
  27. package/dist/cjs/SchemaAST.js +2365 -0
  28. package/dist/cjs/SchemaAST.js.map +1 -0
  29. package/dist/cjs/Stream.js +17 -3
  30. package/dist/cjs/Stream.js.map +1 -1
  31. package/dist/cjs/TPubSub.js +9 -1
  32. package/dist/cjs/TPubSub.js.map +1 -1
  33. package/dist/cjs/TQueue.js.map +1 -1
  34. package/dist/cjs/TRef.js.map +1 -1
  35. package/dist/cjs/TSubscriptionRef.js +96 -0
  36. package/dist/cjs/TSubscriptionRef.js.map +1 -0
  37. package/dist/cjs/index.js +18 -2
  38. package/dist/cjs/index.js.map +1 -1
  39. package/dist/cjs/internal/cause.js +2 -2
  40. package/dist/cjs/internal/cause.js.map +1 -1
  41. package/dist/cjs/internal/core.js +4 -4
  42. package/dist/cjs/internal/core.js.map +1 -1
  43. package/dist/cjs/internal/fiberRuntime.js +14 -12
  44. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  45. package/dist/cjs/internal/logger.js +7 -6
  46. package/dist/cjs/internal/logger.js.map +1 -1
  47. package/dist/cjs/internal/redacted.js +4 -0
  48. package/dist/cjs/internal/redacted.js.map +1 -1
  49. package/dist/cjs/internal/schema/errors.js +116 -0
  50. package/dist/cjs/internal/schema/errors.js.map +1 -0
  51. package/dist/cjs/internal/schema/filters.js +41 -0
  52. package/dist/cjs/internal/schema/filters.js.map +1 -0
  53. package/dist/cjs/internal/schema/util.js +96 -0
  54. package/dist/cjs/internal/schema/util.js.map +1 -0
  55. package/dist/cjs/internal/stm/core.js +2 -3
  56. package/dist/cjs/internal/stm/core.js.map +1 -1
  57. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  58. package/dist/cjs/internal/stm/tQueue.js +1 -2
  59. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  60. package/dist/cjs/internal/stm/tRef.js +6 -2
  61. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  62. package/dist/cjs/internal/stm/tSubscriptionRef.js +178 -0
  63. package/dist/cjs/internal/stm/tSubscriptionRef.js.map +1 -0
  64. package/dist/cjs/internal/stream.js +36 -16
  65. package/dist/cjs/internal/stream.js.map +1 -1
  66. package/dist/cjs/internal/version.js +1 -1
  67. package/dist/cjs/internal/version.js.map +1 -1
  68. package/dist/dts/Arbitrary.d.ts +45 -0
  69. package/dist/dts/Arbitrary.d.ts.map +1 -0
  70. package/dist/dts/Effect.d.ts +298 -30
  71. package/dist/dts/Effect.d.ts.map +1 -1
  72. package/dist/dts/FastCheck.d.ts +9 -0
  73. package/dist/dts/FastCheck.d.ts.map +1 -0
  74. package/dist/dts/Inspectable.d.ts +28 -0
  75. package/dist/dts/Inspectable.d.ts.map +1 -1
  76. package/dist/dts/JSONSchema.d.ts +181 -0
  77. package/dist/dts/JSONSchema.d.ts.map +1 -0
  78. package/dist/dts/ParseResult.d.ts +551 -0
  79. package/dist/dts/ParseResult.d.ts.map +1 -0
  80. package/dist/dts/Predicate.d.ts.map +1 -1
  81. package/dist/dts/Pretty.d.ts +26 -0
  82. package/dist/dts/Pretty.d.ts.map +1 -0
  83. package/dist/dts/Schema.d.ts +4562 -0
  84. package/dist/dts/Schema.d.ts.map +1 -0
  85. package/dist/dts/SchemaAST.d.ts +1321 -0
  86. package/dist/dts/SchemaAST.d.ts.map +1 -0
  87. package/dist/dts/Stream.d.ts +67 -2
  88. package/dist/dts/Stream.d.ts.map +1 -1
  89. package/dist/dts/TPubSub.d.ts +8 -0
  90. package/dist/dts/TPubSub.d.ts.map +1 -1
  91. package/dist/dts/TQueue.d.ts +7 -7
  92. package/dist/dts/TQueue.d.ts.map +1 -1
  93. package/dist/dts/TRef.d.ts +2 -1
  94. package/dist/dts/TRef.d.ts.map +1 -1
  95. package/dist/dts/TSubscriptionRef.d.ts +251 -0
  96. package/dist/dts/TSubscriptionRef.d.ts.map +1 -0
  97. package/dist/dts/index.d.ts +32 -0
  98. package/dist/dts/index.d.ts.map +1 -1
  99. package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
  100. package/dist/dts/internal/schema/errors.d.ts +2 -0
  101. package/dist/dts/internal/schema/errors.d.ts.map +1 -0
  102. package/dist/dts/internal/schema/filters.d.ts +2 -0
  103. package/dist/dts/internal/schema/filters.d.ts.map +1 -0
  104. package/dist/dts/internal/schema/util.d.ts +2 -0
  105. package/dist/dts/internal/schema/util.d.ts.map +1 -0
  106. package/dist/dts/internal/stm/tRef.d.ts +3 -1
  107. package/dist/dts/internal/stm/tRef.d.ts.map +1 -1
  108. package/dist/dts/internal/stm/tSubscriptionRef.d.ts +2 -0
  109. package/dist/dts/internal/stm/tSubscriptionRef.d.ts.map +1 -0
  110. package/dist/dts/internal/stream.d.ts.map +1 -1
  111. package/dist/esm/Arbitrary.js +472 -0
  112. package/dist/esm/Arbitrary.js.map +1 -0
  113. package/dist/esm/Effect.js +256 -18
  114. package/dist/esm/Effect.js.map +1 -1
  115. package/dist/esm/FastCheck.js +9 -0
  116. package/dist/esm/FastCheck.js.map +1 -0
  117. package/dist/esm/Inspectable.js +39 -2
  118. package/dist/esm/Inspectable.js.map +1 -1
  119. package/dist/esm/JSONSchema.js +408 -0
  120. package/dist/esm/JSONSchema.js.map +1 -0
  121. package/dist/esm/ParseResult.js +1503 -0
  122. package/dist/esm/ParseResult.js.map +1 -0
  123. package/dist/esm/Predicate.js +2 -1
  124. package/dist/esm/Predicate.js.map +1 -1
  125. package/dist/esm/Pretty.js +173 -0
  126. package/dist/esm/Pretty.js.map +1 -0
  127. package/dist/esm/Schema.js +5328 -0
  128. package/dist/esm/Schema.js.map +1 -0
  129. package/dist/esm/SchemaAST.js +2300 -0
  130. package/dist/esm/SchemaAST.js.map +1 -0
  131. package/dist/esm/Stream.js +14 -0
  132. package/dist/esm/Stream.js.map +1 -1
  133. package/dist/esm/TPubSub.js +8 -0
  134. package/dist/esm/TPubSub.js.map +1 -1
  135. package/dist/esm/TQueue.js.map +1 -1
  136. package/dist/esm/TRef.js.map +1 -1
  137. package/dist/esm/TSubscriptionRef.js +87 -0
  138. package/dist/esm/TSubscriptionRef.js.map +1 -0
  139. package/dist/esm/index.js +32 -0
  140. package/dist/esm/index.js.map +1 -1
  141. package/dist/esm/internal/cause.js +3 -3
  142. package/dist/esm/internal/cause.js.map +1 -1
  143. package/dist/esm/internal/core.js +4 -4
  144. package/dist/esm/internal/core.js.map +1 -1
  145. package/dist/esm/internal/fiberRuntime.js +14 -12
  146. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  147. package/dist/esm/internal/logger.js +7 -6
  148. package/dist/esm/internal/logger.js.map +1 -1
  149. package/dist/esm/internal/redacted.js +4 -0
  150. package/dist/esm/internal/redacted.js.map +1 -1
  151. package/dist/esm/internal/schema/errors.js +87 -0
  152. package/dist/esm/internal/schema/errors.js.map +1 -0
  153. package/dist/esm/internal/schema/filters.js +35 -0
  154. package/dist/esm/internal/schema/filters.js.map +1 -0
  155. package/dist/esm/internal/schema/util.js +78 -0
  156. package/dist/esm/internal/schema/util.js.map +1 -0
  157. package/dist/esm/internal/stm/core.js +1 -2
  158. package/dist/esm/internal/stm/core.js.map +1 -1
  159. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  160. package/dist/esm/internal/stm/tQueue.js +1 -2
  161. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  162. package/dist/esm/internal/stm/tRef.js +5 -1
  163. package/dist/esm/internal/stm/tRef.js.map +1 -1
  164. package/dist/esm/internal/stm/tSubscriptionRef.js +166 -0
  165. package/dist/esm/internal/stm/tSubscriptionRef.js.map +1 -0
  166. package/dist/esm/internal/stream.js +33 -15
  167. package/dist/esm/internal/stream.js.map +1 -1
  168. package/dist/esm/internal/version.js +1 -1
  169. package/dist/esm/internal/version.js.map +1 -1
  170. package/package.json +68 -1
  171. package/src/Arbitrary.ts +563 -0
  172. package/src/Effect.ts +302 -31
  173. package/src/FastCheck.ts +9 -0
  174. package/src/Inspectable.ts +56 -2
  175. package/src/JSONSchema.ts +601 -0
  176. package/src/ParseResult.ts +2027 -0
  177. package/src/Predicate.ts +3 -1
  178. package/src/Pretty.ts +204 -0
  179. package/src/Schema.ts +10388 -0
  180. package/src/SchemaAST.ts +2827 -0
  181. package/src/Stream.ts +77 -9
  182. package/src/TPubSub.ts +9 -0
  183. package/src/TQueue.ts +7 -7
  184. package/src/TRef.ts +2 -1
  185. package/src/TSubscriptionRef.ts +284 -0
  186. package/src/index.ts +40 -0
  187. package/src/internal/cause.ts +3 -3
  188. package/src/internal/core-effect.ts +2 -2
  189. package/src/internal/core.ts +4 -4
  190. package/src/internal/fiberRuntime.ts +14 -12
  191. package/src/internal/logger.ts +7 -6
  192. package/src/internal/redacted.ts +4 -0
  193. package/src/internal/schema/errors.ts +189 -0
  194. package/src/internal/schema/filters.ts +86 -0
  195. package/src/internal/schema/util.ts +113 -0
  196. package/src/internal/stm/core.ts +1 -2
  197. package/src/internal/stm/tPubSub.ts +1 -0
  198. package/src/internal/stm/tQueue.ts +2 -2
  199. package/src/internal/stm/tRef.ts +7 -2
  200. package/src/internal/stm/tSubscriptionRef.ts +286 -0
  201. package/src/internal/stream.ts +97 -20
  202. package/src/internal/version.ts +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseResult.js","names":["array_","TaggedError","Effect","Either","dual","globalValue","Inspectable","util_","Option","Predicate","AST","Pointer","path","actual","issue","_tag","constructor","Unexpected","message","Missing","ast","undefined","Composite","issues","output","Refinement","kind","Transformation","Type","Forbidden","ParseErrorTypeId","Symbol","for","isParseError","u","hasProperty","ParseError","toString","TreeFormatter","formatIssueSync","toJSON","_id","NodeInspectSymbol","parseError","succeed","right","fail","left","_try","try","fromOption","flatMap","self","f","s","map","mapError","eitherOrUndefined","mapBoth","options","onFailure","onSuccess","orElse","catchAll","mergeInternalOptions","overrideOptions","isNumber","getEither","isDecoding","parser","goMemo","getSync","input","getOrThrowWith","getOption","getRight","getEffect","isEffectAllowed","decodeUnknownSync","schema","decodeUnknownOption","decodeUnknownEither","decodeUnknownPromise","decodeUnknown","runPromise","encodeUnknownSync","encodeUnknownOption","encodeUnknownEither","encodeUnknownPromise","encodeUnknown","decodeSync","decodeOption","decodeEither","decodePromise","decode","validateSync","typeAST","validateOption","validateEither","validatePromise","validate","is","isRight","exact","asserts","result","isLeft","encodeSync","encodeOption","encodeEither","encodePromise","encode","decodeMemoMap","WeakMap","encodeMemoMap","memoMap","memo","get","raw","go","parseOptionsAnnotation","getParseOptionsAnnotation","parserWithOptions","isSome","i","value","decodingFallbackAnnotation","getDecodingFallbackAnnotation","handleForbidden","set","getConcurrency","getOrUndefined","getConcurrencyAnnotation","getBatching","getBatchingAnnotation","from","defaultParseOption","allErrors","errors","ef","hasStableFilter","match","filter","onNone","onSome","ep","a","to","dropRightRefinement","transform","getFinalTransformation","transformation","e","i2","parse","typeParameters","fromRefinement","literal","symbol","isUndefined","isNever","isString","isBoolean","isBigInt","isSymbol","isObject","enums","some","_","regex","getTemplateLiteralRegExp","test","elements","type","rest","annotatedAST","requiredTypes","isOptional","length","concat","slice","requiredLen","expectedIndexes","join","concurrency","batching","isArray","es","stepKey","len","push","queue","te","eu","sortByIndex","nk","index","either","t","void","isNonEmptyReadonlyArray","head","tail","j","computeResult","isNonEmptyArray","cqueue","suspend","state","copy","forEach","discard","propertySignatures","indexSignatures","isNotNullable","expectedKeysMap","expectedKeys","ps","name","parameter","expectedAST","Union","make","key","UniqueSymbol","Literal","expected","isRecord","onExcessPropertyError","onExcessProperty","onExcessPropertyPreserve","inputKeys","ownKeys","String","isExact","hasKey","Object","prototype","hasOwnProperty","call","indexSignature","keys","getKeysForIndexSignature","keu","vpr","veu","tv","propertyOrder","indexOf","out","assign","searchTree","getSearchTree","types","Map","candidates","isRecordOrArray","buckets","literals","TypeLiteral","PropertySignature","fakeps","otherwise","candidate","pr","finalResult","memoizeThunk","annotations","refinement","getLiterals","annotation","getSurrogateAnnotation","propertySignature","encodedAST","isLiteral","element","members","member","tags","hash","isRefinement","effect","runSync","compare","b","sort","pst","propertySignatureTransformations","o","none","makeTree","forest","formatIssue","formatTree","drawTree","formatError","error","formatErrorSync","tree","draw","indentation","r","isLast","formatTransformationKind","formatRefinementKind","getAnnotated","getCurrentMessage","pipe","getMessageAnnotation","override","isEffect","createParseIssueGuard","tag","isComposite","isTransformation","getMessage","currentMessage","useInnerMessage","getParseIssueTitleAnnotation","filterMap","fromNullable","formatTypeMessage","formatUnknown","getParseIssueTitle","getOrElse","formatForbiddenMessage","formatUnexpectedMessage","formatMissingMessage","getMissingMessageAnnotation","getTree","matchEffect","formatPath","parseIssueTitle","isNonEmpty","ArrayFormatter","formatArray","succeedArrayFormatterIssue","getArray","flatten"],"sources":["../../src/ParseResult.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -322,7 +322,8 @@ export const isNever = _ => false;
322
322
  * @since 2.0.0
323
323
  */
324
324
  export const isUnknown = _ => true;
325
- const isRecordOrArray = input => typeof input === "object" && input !== null;
325
+ /** @internal */
326
+ export const isRecordOrArray = input => typeof input === "object" && input !== null;
326
327
  /**
327
328
  * Tests if a value is an `object`.
328
329
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Predicate.js","names":["dual","isFunction","isFunction_","mapInput","self","f","b","isTupleOf","n","length","isTupleOfAtLeast","isTruthy","input","isSet","Set","isMap","Map","isString","isNumber","isBoolean","isBigInt","isSymbol","isUndefined","undefined","isNotUndefined","isNull","isNotNull","isNever","_","isUnknown","isRecordOrArray","isObject","hasProperty","property","isTagged","tag","isNullable","isNotNullable","isError","Error","isUint8Array","Uint8Array","isDate","Date","isIterable","Symbol","iterator","isRecord","Array","isArray","isReadonlyRecord","isPromise","then","catch","isPromiseLike","isRegExp","RegExp","compose","ab","bc","a","product","that","all","collection","as","collectionIndex","p","productMany","rest","head","tail","tuple","elements","struct","fields","keys","Object","key","not","or","and","xor","eqv","implies","antecedent","consequent","nor","nand","every","some"],"sources":["../../src/Predicate.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,SAASA,IAAI,EAAEC,UAAU,IAAIC,WAAW,QAAQ,eAAe;AAmE/D;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAMC,QAAQ,gBAyCjBH,IAAI,CAAC,CAAC,EAAE,CAAOI,IAAkB,EAAEC,CAAc,KAAoBC,CAAC,IAAKF,IAAI,CAACC,CAAC,CAACC,CAAC,CAAC,CAAC,CAAC;AAE1F;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAMC,SAAS,gBAmDlBP,IAAI,CAAC,CAAC,EAAE,CAAsBI,IAAsB,EAAEI,CAAI,KAA4BJ,IAAI,CAACK,MAAM,KAAKD,CAAC,CAAC;AAE5G;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAO,MAAME,gBAAgB,gBAmDzBV,IAAI,CAAC,CAAC,EAAE,CAAsBI,IAAsB,EAAEI,CAAI,KAAmCJ,IAAI,CAACK,MAAM,IAAID,CAAC,CAAC;AAElH;;;;;;;;;;;;;;;AAeA,OAAO,MAAMG,QAAQ,GAAIC,KAAc,IAAK,CAAC,CAACA,KAAK;AAEnD;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,KAAK,GAAID,KAAc,IAA4BA,KAAK,YAAYE,GAAG;AAEpF;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMC,KAAK,GAAIH,KAAc,IAAqCA,KAAK,YAAYI,GAAG;AAE7F;;;;;;;;;;;;;;;AAeA,OAAO,MAAMC,QAAQ,GAAIL,KAAc,IAAsB,OAAOA,KAAK,KAAK,QAAQ;AAEtF;;;;;;;;;;;;;;;AAeA,OAAO,MAAMM,QAAQ,GAAIN,KAAc,IAAsB,OAAOA,KAAK,KAAK,QAAQ;AAEtF;;;;;;;;;;;;;;;AAeA,OAAO,MAAMO,SAAS,GAAIP,KAAc,IAAuB,OAAOA,KAAK,KAAK,SAAS;AAEzF;;;;;;;;;;;;;;;AAeA,OAAO,MAAMQ,QAAQ,GAAIR,KAAc,IAAsB,OAAOA,KAAK,KAAK,QAAQ;AAEtF;;;;;;;;;;;;;;;AAeA,OAAO,MAAMS,QAAQ,GAAIT,KAAc,IAAsB,OAAOA,KAAK,KAAK,QAAQ;AAEtF;;;;;;;;;;;;;;;AAeA,OAAO,MAAMX,UAAU,GAA0CC,WAAW;AAE5E;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMoB,WAAW,GAAIV,KAAc,IAAyBA,KAAK,KAAKW,SAAS;AAEtF;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMC,cAAc,GAAOZ,KAAQ,IAAqCA,KAAK,KAAKW,SAAS;AAElG;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAME,MAAM,GAAIb,KAAc,IAAoBA,KAAK,KAAK,IAAI;AAEvE;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMc,SAAS,GAAOd,KAAQ,IAAgCA,KAAK,KAAK,IAAI;AAEnF;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMe,OAAO,GAAwCC,CAAU,IAAiB,KAAK;AAE5F;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,SAAS,GAA0CD,CAAC,IAAmB,IAAI;AAExF,MAAME,eAAe,GAAIlB,KAAc,IAAK,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI;AAEvF;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMmB,QAAQ,GAAInB,KAAc,IAAsBkB,eAAe,CAAClB,KAAK,CAAC,IAAIX,UAAU,CAACW,KAAK,CAAC;AAExG;;;;;;;;;AASA,OAAO,MAAMoB,WAAW,gBAqBpBhC,IAAI,CACN,CAAC,EACD,CAAwBI,IAAa,EAAE6B,QAAW,KAChDF,QAAQ,CAAC3B,IAAI,CAAC,IAAK6B,QAAQ,IAAI7B,IAAK,CACvC;AAED;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAM8B,QAAQ,gBAyCjBlC,IAAI,CACN,CAAC,EACD,CAAmBI,IAAa,EAAE+B,GAAM,KAA0BH,WAAW,CAAC5B,IAAI,EAAE,MAAM,CAAC,IAAIA,IAAI,CAAC,MAAM,CAAC,KAAK+B,GAAG,CACpH;AAED;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,UAAU,GAAOxB,KAAQ,IAA4CA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKW,SAAS;AAEvH;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMc,aAAa,GAAOzB,KAAQ,IAA8BA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKW,SAAS;AAE5G;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMe,OAAO,GAAI1B,KAAc,IAAqBA,KAAK,YAAY2B,KAAK;AAEjF;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMC,YAAY,GAAI5B,KAAc,IAA0BA,KAAK,YAAY6B,UAAU;AAEhG;;;;;;;;;;;;;;;;AAgBA,OAAO,MAAMC,MAAM,GAAI9B,KAAc,IAAoBA,KAAK,YAAY+B,IAAI;AAE9E;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,UAAU,GAAIhC,KAAc,IAAiCoB,WAAW,CAACpB,KAAK,EAAEiC,MAAM,CAACC,QAAQ,CAAC;AAE7G;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,MAAMC,QAAQ,GAAInC,KAAc,IACrCkB,eAAe,CAAClB,KAAK,CAAC,IAAI,CAACoC,KAAK,CAACC,OAAO,CAACrC,KAAK,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAMsC,gBAAgB,GAE8BH,QAAQ;AAEnE;;;;;;;;;;;;;;AAcA,OAAO,MAAMI,SAAS,GACpBvC,KAAc,IAEdoB,WAAW,CAACpB,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,IAAIA,KAAK,IAAIX,UAAU,CAACW,KAAK,CAACwC,IAAI,CAAC,IAAInD,UAAU,CAACW,KAAK,CAACyC,KAAK,CAAC;AAErG;;;;AAIA,OAAO,MAAMC,aAAa,GACxB1C,KAAc,IACoBoB,WAAW,CAACpB,KAAK,EAAE,MAAM,CAAC,IAAIX,UAAU,CAACW,KAAK,CAACwC,IAAI,CAAC;AAExF;;;;;;;;;;;;;;AAcA,OAAO,MAAMG,QAAQ,GAAI3C,KAAc,IAAsBA,KAAK,YAAY4C,MAAM;AAEpF;;;AAGA,OAAO,MAAMC,OAAO,gBAiBhBzD,IAAI,CACN,CAAC,EACD,CAA8B0D,EAAoB,EAAEC,EAAoB,KAAwBC,CAAC,IAC/FF,EAAE,CAACE,CAAC,CAAC,IAAID,EAAE,CAACC,CAAC,CAAC,CACjB;AAED;;;;AAIA,OAAO,MAAMC,OAAO,GAClBA,CAAOzD,IAAkB,EAAE0D,IAAkB,KAC7C,CAAC,CAACF,CAAC,EAAEtD,CAAC,CAAC,KAAKF,IAAI,CAACwD,CAAC,CAAC,IAAIE,IAAI,CAACxD,CAAC,CAAC;AAEhC;;;;AAIA,OAAO,MAAMyD,GAAG,GACdC,UAAkC,IACH;EAC/B,OAAQC,EAAE,IAAI;IACZ,IAAIC,eAAe,GAAG,CAAC;IACvB,KAAK,MAAMC,CAAC,IAAIH,UAAU,EAAE;MAC1B,IAAIE,eAAe,IAAID,EAAE,CAACxD,MAAM,EAAE;QAChC;MACF;MACA,IAAI0D,CAAC,CAACF,EAAE,CAACC,eAAe,CAAC,CAAC,KAAK,KAAK,EAAE;QACpC,OAAO,KAAK;MACd;MACAA,eAAe,EAAE;IACnB;IACA,OAAO,IAAI;EACb,CAAC;AACH,CAAC;AAED;;;;AAIA,OAAO,MAAME,WAAW,GAAGA,CACzBhE,IAAkB,EAClB4D,UAAkC,KAC2C;EAC7E,MAAMK,IAAI,GAAGN,GAAG,CAACC,UAAU,CAAC;EAC5B,OAAO,CAAC,CAACM,IAAI,EAAE,GAAGC,IAAI,CAAC,KAAKnE,IAAI,CAACkE,IAAI,CAAC,KAAK,KAAK,GAAG,KAAK,GAAGD,IAAI,CAACE,IAAI,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;AAWA,OAAO,MAAMC,KAAK,GAmBdA,CAAC,GAAGC,QAAsC,KAAKV,GAAG,CAACU,QAAQ,CAAQ;AAEvE;;;;;;;;;AASA,OAAO,MAAMC,MAAM,GAkB4BC,MAAS,IAAI;EAC1D,MAAMC,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACD,MAAM,CAAC;EAChC,OAAQf,CAA0B,IAAI;IACpC,KAAK,MAAMkB,GAAG,IAAIF,IAAI,EAAE;MACtB,IAAI,CAACD,MAAM,CAACG,GAAG,CAAC,CAAClB,CAAC,CAACkB,GAAG,CAAC,CAAC,EAAE;QACxB,OAAO,KAAK;MACd;IACF;IACA,OAAO,IAAI;EACb,CAAC;AACH,CAAS;AAET;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,GAAG,GAAO3E,IAAkB,IAAoBwD,CAAC,IAAK,CAACxD,IAAI,CAACwD,CAAC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;AAkBA,OAAO,MAAMoB,EAAE,gBA6EXhF,IAAI,CAAC,CAAC,EAAE,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAKxD,IAAI,CAACwD,CAAC,CAAC,IAAIE,IAAI,CAACF,CAAC,CAAC,CAAC;AAEnG;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMqB,GAAG,gBAyFZjF,IAAI,CAAC,CAAC,EAAE,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAKxD,IAAI,CAACwD,CAAC,CAAC,IAAIE,IAAI,CAACF,CAAC,CAAC,CAAC;AAEnG;;;;AAIA,OAAO,MAAMsB,GAAG,gBAWZlF,IAAI,CAAC,CAAC,EAAE,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAKxD,IAAI,CAACwD,CAAC,CAAC,KAAKE,IAAI,CAACF,CAAC,CAAC,CAAC;AAEpG;;;;AAIA,OAAO,MAAMuB,GAAG,gBAWZnF,IAAI,CAAC,CAAC,EAAE,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAKxD,IAAI,CAACwD,CAAC,CAAC,KAAKE,IAAI,CAACF,CAAC,CAAC,CAAC;AAEpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,OAAO,MAAMwB,OAAO,gBA2FhBpF,IAAI,CACN,CAAC,EACD,CAAIqF,UAAwB,EAAEC,UAAwB,KAAoB1B,CAAC,IAAKyB,UAAU,CAACzB,CAAC,CAAC,GAAG0B,UAAU,CAAC1B,CAAC,CAAC,GAAG,IAAI,CACrH;AAED;;;;AAIA,OAAO,MAAM2B,GAAG,gBAWZvF,IAAI,CACN,CAAC,EACD,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAK,EAAExD,IAAI,CAACwD,CAAC,CAAC,IAAIE,IAAI,CAACF,CAAC,CAAC,CAAC,CAC1F;AAED;;;;AAIA,OAAO,MAAM4B,IAAI,gBAWbxF,IAAI,CACN,CAAC,EACD,CAAII,IAAkB,EAAE0D,IAAkB,KAAoBF,CAAC,IAAK,EAAExD,IAAI,CAACwD,CAAC,CAAC,IAAIE,IAAI,CAACF,CAAC,CAAC,CAAC,CAC1F;AAED;;;;AAIA,OAAO,MAAM6B,KAAK,GAAOzB,UAAkC,IAAoBJ,CAAI,IAAI;EACrF,KAAK,MAAMO,CAAC,IAAIH,UAAU,EAAE;IAC1B,IAAI,CAACG,CAAC,CAACP,CAAC,CAAC,EAAE;MACT,OAAO,KAAK;IACd;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAED;;;;AAIA,OAAO,MAAM8B,IAAI,GAAO1B,UAAkC,IAAoBJ,CAAC,IAAI;EACjF,KAAK,MAAMO,CAAC,IAAIH,UAAU,EAAE;IAC1B,IAAIG,CAAC,CAACP,CAAC,CAAC,EAAE;MACR,OAAO,IAAI;IACb;EACF;EACA,OAAO,KAAK;AACd,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Predicate.js","names":["dual","isFunction","isFunction_","mapInput","self","f","b","isTupleOf","n","length","isTupleOfAtLeast","isTruthy","input","isSet","Set","isMap","Map","isString","isNumber","isBoolean","isBigInt","isSymbol","isUndefined","undefined","isNotUndefined","isNull","isNotNull","isNever","_","isUnknown","isRecordOrArray","isObject","hasProperty","property","isTagged","tag","isNullable","isNotNullable","isError","Error","isUint8Array","Uint8Array","isDate","Date","isIterable","Symbol","iterator","isRecord","Array","isArray","isReadonlyRecord","isPromise","then","catch","isPromiseLike","isRegExp","RegExp","compose","ab","bc","a","product","that","all","collection","as","collectionIndex","p","productMany","rest","head","tail","tuple","elements","struct","fields","keys","Object","key","not","or","and","xor","eqv","implies","antecedent","consequent","nor","nand","every","some"],"sources":["../../src/Predicate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * @since 3.10.0
3
+ */
4
+ import * as Arr from "./Array.js";
5
+ import * as errors_ from "./internal/schema/errors.js";
6
+ import * as util_ from "./internal/schema/util.js";
7
+ import * as Option from "./Option.js";
8
+ import * as ParseResult from "./ParseResult.js";
9
+ import * as AST from "./SchemaAST.js";
10
+ /**
11
+ * @category prettify
12
+ * @since 3.10.0
13
+ */
14
+ export const make = schema => compile(schema.ast, []);
15
+ const getPrettyAnnotation = /*#__PURE__*/AST.getAnnotation(AST.PrettyAnnotationId);
16
+ const getMatcher = defaultPretty => ast => Option.match(getPrettyAnnotation(ast), {
17
+ onNone: () => defaultPretty,
18
+ onSome: handler => handler()
19
+ });
20
+ const toString = /*#__PURE__*/getMatcher(a => String(a));
21
+ const stringify = /*#__PURE__*/getMatcher(a => JSON.stringify(a));
22
+ const formatUnknown = /*#__PURE__*/getMatcher(util_.formatUnknown);
23
+ /**
24
+ * @since 3.10.0
25
+ */
26
+ export const match = {
27
+ "Declaration": (ast, go, path) => {
28
+ const annotation = getPrettyAnnotation(ast);
29
+ if (Option.isSome(annotation)) {
30
+ return annotation.value(...ast.typeParameters.map(tp => go(tp, path)));
31
+ }
32
+ throw new Error(errors_.getPrettyMissingAnnotationErrorMessage(path, ast));
33
+ },
34
+ "VoidKeyword": /*#__PURE__*/getMatcher(() => "void(0)"),
35
+ "NeverKeyword": /*#__PURE__*/getMatcher(() => {
36
+ throw new Error(errors_.getPrettyNeverErrorMessage);
37
+ }),
38
+ "Literal": /*#__PURE__*/getMatcher(literal => typeof literal === "bigint" ? `${String(literal)}n` : JSON.stringify(literal)),
39
+ "SymbolKeyword": toString,
40
+ "UniqueSymbol": toString,
41
+ "TemplateLiteral": stringify,
42
+ "UndefinedKeyword": toString,
43
+ "UnknownKeyword": formatUnknown,
44
+ "AnyKeyword": formatUnknown,
45
+ "ObjectKeyword": formatUnknown,
46
+ "StringKeyword": stringify,
47
+ "NumberKeyword": toString,
48
+ "BooleanKeyword": toString,
49
+ "BigIntKeyword": /*#__PURE__*/getMatcher(a => `${String(a)}n`),
50
+ "Enums": stringify,
51
+ "TupleType": (ast, go, path) => {
52
+ const hook = getPrettyAnnotation(ast);
53
+ if (Option.isSome(hook)) {
54
+ return hook.value();
55
+ }
56
+ const elements = ast.elements.map((e, i) => go(e.type, path.concat(i)));
57
+ const rest = ast.rest.map(annotatedAST => go(annotatedAST.type, path));
58
+ return input => {
59
+ const output = [];
60
+ let i = 0;
61
+ // ---------------------------------------------
62
+ // handle elements
63
+ // ---------------------------------------------
64
+ for (; i < elements.length; i++) {
65
+ if (input.length < i + 1) {
66
+ if (ast.elements[i].isOptional) {
67
+ continue;
68
+ }
69
+ } else {
70
+ output.push(elements[i](input[i]));
71
+ }
72
+ }
73
+ // ---------------------------------------------
74
+ // handle rest element
75
+ // ---------------------------------------------
76
+ if (Arr.isNonEmptyReadonlyArray(rest)) {
77
+ const [head, ...tail] = rest;
78
+ for (; i < input.length - tail.length; i++) {
79
+ output.push(head(input[i]));
80
+ }
81
+ // ---------------------------------------------
82
+ // handle post rest elements
83
+ // ---------------------------------------------
84
+ for (let j = 0; j < tail.length; j++) {
85
+ i += j;
86
+ output.push(tail[j](input[i]));
87
+ }
88
+ }
89
+ return "[" + output.join(", ") + "]";
90
+ };
91
+ },
92
+ "TypeLiteral": (ast, go, path) => {
93
+ const hook = getPrettyAnnotation(ast);
94
+ if (Option.isSome(hook)) {
95
+ return hook.value();
96
+ }
97
+ const propertySignaturesTypes = ast.propertySignatures.map(ps => go(ps.type, path.concat(ps.name)));
98
+ const indexSignatureTypes = ast.indexSignatures.map(is => go(is.type, path));
99
+ const expectedKeys = {};
100
+ for (let i = 0; i < propertySignaturesTypes.length; i++) {
101
+ expectedKeys[ast.propertySignatures[i].name] = null;
102
+ }
103
+ return input => {
104
+ const output = [];
105
+ // ---------------------------------------------
106
+ // handle property signatures
107
+ // ---------------------------------------------
108
+ for (let i = 0; i < propertySignaturesTypes.length; i++) {
109
+ const ps = ast.propertySignatures[i];
110
+ const name = ps.name;
111
+ if (ps.isOptional && !Object.prototype.hasOwnProperty.call(input, name)) {
112
+ continue;
113
+ }
114
+ output.push(`${util_.formatPropertyKey(name)}: ${propertySignaturesTypes[i](input[name])}`);
115
+ }
116
+ // ---------------------------------------------
117
+ // handle index signatures
118
+ // ---------------------------------------------
119
+ if (indexSignatureTypes.length > 0) {
120
+ for (let i = 0; i < indexSignatureTypes.length; i++) {
121
+ const type = indexSignatureTypes[i];
122
+ const keys = util_.getKeysForIndexSignature(input, ast.indexSignatures[i].parameter);
123
+ for (const key of keys) {
124
+ if (Object.prototype.hasOwnProperty.call(expectedKeys, key)) {
125
+ continue;
126
+ }
127
+ output.push(`${util_.formatPropertyKey(key)}: ${type(input[key])}`);
128
+ }
129
+ }
130
+ }
131
+ return Arr.isNonEmptyReadonlyArray(output) ? "{ " + output.join(", ") + " }" : "{}";
132
+ };
133
+ },
134
+ "Union": (ast, go, path) => {
135
+ const hook = getPrettyAnnotation(ast);
136
+ if (Option.isSome(hook)) {
137
+ return hook.value();
138
+ }
139
+ const types = ast.types.map(ast => [ParseResult.is({
140
+ ast
141
+ }), go(ast, path)]);
142
+ return a => {
143
+ const index = types.findIndex(([is]) => is(a));
144
+ if (index === -1) {
145
+ throw new Error(errors_.getPrettyNoMatchingSchemaErrorMessage(a, path, ast));
146
+ }
147
+ return types[index][1](a);
148
+ };
149
+ },
150
+ "Suspend": (ast, go, path) => {
151
+ return Option.match(getPrettyAnnotation(ast), {
152
+ onNone: () => {
153
+ const get = util_.memoizeThunk(() => go(ast.f(), path));
154
+ return a => get()(a);
155
+ },
156
+ onSome: handler => handler()
157
+ });
158
+ },
159
+ "Refinement": (ast, go, path) => {
160
+ return Option.match(getPrettyAnnotation(ast), {
161
+ onNone: () => go(ast.from, path),
162
+ onSome: handler => handler()
163
+ });
164
+ },
165
+ "Transformation": (ast, go, path) => {
166
+ return Option.match(getPrettyAnnotation(ast), {
167
+ onNone: () => go(ast.to, path),
168
+ onSome: handler => handler()
169
+ });
170
+ }
171
+ };
172
+ const compile = /*#__PURE__*/AST.getCompiler(match);
173
+ //# sourceMappingURL=Pretty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pretty.js","names":["Arr","errors_","util_","Option","ParseResult","AST","make","schema","compile","ast","getPrettyAnnotation","getAnnotation","PrettyAnnotationId","getMatcher","defaultPretty","match","onNone","onSome","handler","toString","a","String","stringify","JSON","formatUnknown","Declaration","go","path","annotation","isSome","value","typeParameters","map","tp","Error","getPrettyMissingAnnotationErrorMessage","getPrettyNeverErrorMessage","literal","TupleType","hook","elements","e","i","type","concat","rest","annotatedAST","input","output","length","isOptional","push","isNonEmptyReadonlyArray","head","tail","j","join","TypeLiteral","propertySignaturesTypes","propertySignatures","ps","name","indexSignatureTypes","indexSignatures","is","expectedKeys","Object","prototype","hasOwnProperty","call","formatPropertyKey","keys","getKeysForIndexSignature","parameter","key","Union","types","index","findIndex","getPrettyNoMatchingSchemaErrorMessage","Suspend","get","memoizeThunk","f","Refinement","from","Transformation","to","getCompiler"],"sources":["../../src/Pretty.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}