@mionjs/run-types 0.13.0 → 0.14.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 (337) hide show
  1. package/README.md +3 -3
  2. package/dist/builders/atomic.js.map +1 -1
  3. package/dist/builders/compose.js.map +1 -1
  4. package/dist/builders/index.js.map +1 -1
  5. package/dist/builders/static.js.map +1 -1
  6. package/dist/builders/utility.js.map +1 -1
  7. package/dist/createRTFunctions.js.map +1 -1
  8. package/dist/enrich/createFriendlyText.js.map +1 -1
  9. package/dist/enrich/friendlyText.js.map +1 -1
  10. package/dist/enrich/mockData.js.map +1 -1
  11. package/dist/fnHash.js.map +1 -1
  12. package/dist/formats/bigintFormats.js.map +1 -1
  13. package/dist/formats/datetime/dateFormats.js.map +1 -1
  14. package/dist/formats/datetime/dateTime-pure-fns.d.ts +21 -21
  15. package/dist/formats/datetime/dateTime-pure-fns.js +7 -0
  16. package/dist/formats/datetime/dateTime-pure-fns.js.map +1 -1
  17. package/dist/formats/datetime/dateTimeParams.js.map +1 -1
  18. package/dist/formats/datetime/stringDateTimeFormats.js.map +1 -1
  19. package/dist/formats/datetime/temporalFormats.js.map +1 -1
  20. package/dist/formats/index.js.map +1 -1
  21. package/dist/formats/numberFormats.js.map +1 -1
  22. package/dist/formats/refineFormat.js.map +1 -1
  23. package/dist/formats/scalars.js.map +1 -1
  24. package/dist/formats/string/credit-card-pure-fns.d.ts +4 -4
  25. package/dist/formats/string/credit-card-pure-fns.js.map +1 -1
  26. package/dist/formats/string/string-formats-pure-fns.d.ts +12 -12
  27. package/dist/formats/string/string-formats-pure-fns.js +9 -0
  28. package/dist/formats/string/string-formats-pure-fns.js.map +1 -1
  29. package/dist/formats/string/string-patterns.js.map +1 -1
  30. package/dist/formats/string/stringFormats.js.map +1 -1
  31. package/dist/formats/structural.js.map +1 -1
  32. package/dist/getRunType.js.map +1 -1
  33. package/dist/go-generated/fnHashes.generated.js.map +1 -1
  34. package/dist/go-generated/formatErrorKeys.generated.js.map +1 -1
  35. package/dist/go-generated/runTypeKind.generated.js.map +1 -1
  36. package/dist/go-generated/typeFormats.generated.js.map +1 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/markers.js.map +1 -1
  39. package/dist/mion-pure-fns/_rt/-yTRFuK01Y.js +2 -0
  40. package/dist/mion-pure-fns/_rt/0yJQ37XnmN.js +2 -0
  41. package/dist/mion-pure-fns/_rt/2xtQHAMu-y.js +1 -0
  42. package/dist/mion-pure-fns/_rt/3RndhrueRD.js +2 -0
  43. package/dist/mion-pure-fns/_rt/5oCqd7YyfA.js +1 -0
  44. package/dist/mion-pure-fns/_rt/6E7qWsIwaF.js +1 -0
  45. package/dist/mion-pure-fns/_rt/8AgZCCAhyw.js +1 -0
  46. package/dist/mion-pure-fns/_rt/AmEsDA-eXW.js +2 -0
  47. package/dist/mion-pure-fns/_rt/D503ooPt08.js +2 -0
  48. package/dist/mion-pure-fns/_rt/GA20s6bj41.js +1 -0
  49. package/dist/mion-pure-fns/_rt/GaLOTE4b_F.js +2 -0
  50. package/dist/mion-pure-fns/_rt/ICDNQUtC8e.js +1 -0
  51. package/dist/mion-pure-fns/_rt/IyjvBbz0zS.js +1 -0
  52. package/dist/mion-pure-fns/_rt/Nnf7kyDfjI.js +2 -0
  53. package/dist/mion-pure-fns/_rt/OCJ1B0-ZCA.js +1 -0
  54. package/dist/mion-pure-fns/_rt/OXVO2EpSFv.js +1 -0
  55. package/dist/mion-pure-fns/_rt/PZzwu-J2YB.js +2 -0
  56. package/dist/mion-pure-fns/_rt/Qd_9GJQlOC.js +1 -0
  57. package/dist/mion-pure-fns/_rt/T48n0wyjPx.js +2 -0
  58. package/dist/mion-pure-fns/_rt/VJiknJ2exR.js +1 -0
  59. package/dist/mion-pure-fns/_rt/Z2sc5xQPKB.js +1 -0
  60. package/dist/mion-pure-fns/_rt/ZPLfUKoTJQ.js +1 -0
  61. package/dist/mion-pure-fns/_rt/_abcB3do2M.js +1 -0
  62. package/dist/mion-pure-fns/_rt/cK87_2eKQW.js +1 -0
  63. package/dist/mion-pure-fns/_rt/cgwpjq6rGs.js +1 -0
  64. package/dist/mion-pure-fns/_rt/d8U9HjmMsN.js +1 -0
  65. package/dist/mion-pure-fns/_rt/eglb1lzTW9.js +1 -0
  66. package/dist/mion-pure-fns/_rt/eupKgBrCGt.js +2 -0
  67. package/dist/mion-pure-fns/_rt/gNpMnJMAUE.js +4 -0
  68. package/dist/mion-pure-fns/_rt/hiotRbfSKF.js +1 -0
  69. package/dist/mion-pure-fns/_rt/i-jWpjiwhL.js +1 -0
  70. package/dist/mion-pure-fns/_rt/iFXkEtW54e.js +1 -0
  71. package/dist/mion-pure-fns/_rt/jKlKNzqG2-.js +1 -0
  72. package/dist/mion-pure-fns/_rt/kSLD_nEHux.js +1 -0
  73. package/dist/mion-pure-fns/_rt/lBHf1kg5nQ.js +1 -0
  74. package/dist/mion-pure-fns/_rt/lFYcgG5ZSI.js +1 -0
  75. package/dist/mion-pure-fns/_rt/nLaf1XVvS4.js +2 -0
  76. package/dist/mion-pure-fns/_rt/n_ZOWff4X3.js +1 -0
  77. package/dist/mion-pure-fns/_rt/nsU8QeJCuC.js +1 -0
  78. package/dist/mion-pure-fns/_rt/oUfCfYMODo.js +2 -0
  79. package/dist/mion-pure-fns/_rt/t3CflNaUUJ.js +2 -0
  80. package/dist/mion-pure-fns/_rt/tfRjnFZVF8.js +1 -0
  81. package/dist/mion-pure-fns/_rt/u0Mw9bizvB.js +1 -0
  82. package/dist/mion-pure-fns/_rt/vPNeWxcCkj.js +3 -0
  83. package/dist/mion-pure-fns/_rt/wSBaXrUNw9.js +1 -0
  84. package/dist/mion-pure-fns/_rt/zaCgqTB_lJ.js +5 -0
  85. package/dist/mion-pure-fns/index.json +114 -114
  86. package/dist/mocking/childMatch.js.map +1 -1
  87. package/dist/mocking/constants.mock.d.ts +0 -1
  88. package/dist/mocking/constants.mock.js +0 -1
  89. package/dist/mocking/constants.mock.js.map +1 -1
  90. package/dist/mocking/createMockData.js.map +1 -1
  91. package/dist/mocking/index.js.map +1 -1
  92. package/dist/mocking/isMultipleOf.js.map +1 -1
  93. package/dist/mocking/mockBigIntFormat.js.map +1 -1
  94. package/dist/mocking/mockDateTimeBounds.js.map +1 -1
  95. package/dist/mocking/mockInvalid.js.map +1 -1
  96. package/dist/mocking/mockNumberFormat.js.map +1 -1
  97. package/dist/mocking/mockRandom.js.map +1 -1
  98. package/dist/mocking/mockRegistry.js.map +1 -1
  99. package/dist/mocking/mockStringFormat.js +1 -1
  100. package/dist/mocking/mockStringFormat.js.map +1 -1
  101. package/dist/mocking/mockTemporal.js.map +1 -1
  102. package/dist/mocking/mockType.js.map +1 -1
  103. package/dist/mocking/mockTypes.js.map +1 -1
  104. package/dist/mocking/structuralFormat.js.map +1 -1
  105. package/dist/modelTypes.js.map +1 -1
  106. package/dist/overrideRTFunctions.js.map +1 -1
  107. package/dist/runtime/index.js.map +1 -1
  108. package/dist/runtypes/builderCore.js.map +1 -1
  109. package/dist/runtypes/builderTypes.js.map +1 -1
  110. package/dist/runtypes/circular-pure-fns.d.ts +1 -1
  111. package/dist/runtypes/circular-pure-fns.js.map +1 -1
  112. package/dist/runtypes/circular.js.map +1 -1
  113. package/dist/runtypes/classSerializerRegistry.js.map +1 -1
  114. package/dist/runtypes/dataOnly.js.map +1 -1
  115. package/dist/runtypes/entryTuple.js +30 -3
  116. package/dist/runtypes/entryTuple.js.map +1 -1
  117. package/dist/runtypes/formatAnnotation.js.map +1 -1
  118. package/dist/runtypes/formatErrors.js.map +1 -1
  119. package/dist/runtypes/formatPattern.js.map +1 -1
  120. package/dist/runtypes/jsonShape.js.map +1 -1
  121. package/dist/runtypes/pure-fn-ids.generated.d.ts +47 -47
  122. package/dist/runtypes/pure-fn-ids.generated.js +47 -47
  123. package/dist/runtypes/pure-fn-ids.generated.js.map +1 -1
  124. package/dist/runtypes/pure-fns-utils.d.ts +8 -8
  125. package/dist/runtypes/pure-fns-utils.js +0 -1
  126. package/dist/runtypes/pure-fns-utils.js.map +1 -1
  127. package/dist/runtypes/pureFn.js.map +1 -1
  128. package/dist/runtypes/rtUtils.js +16 -3
  129. package/dist/runtypes/rtUtils.js.map +1 -1
  130. package/dist/runtypes/sentinelKeys.js.map +1 -1
  131. package/dist/runtypes/stripRunTypeMeta.js.map +1 -1
  132. package/dist/runtypes/typeFormat.js.map +1 -1
  133. package/dist/runtypes/types.js.map +1 -1
  134. package/dist/standard/createJsonSchemaFn.js.map +1 -1
  135. package/dist/standard/createStandardSchema.js.map +1 -1
  136. package/dist/standard/issueMapping.js +2 -0
  137. package/dist/standard/issueMapping.js.map +1 -1
  138. package/dist/standard/jsonSchemaDoc.js.map +1 -1
  139. package/dist/standard/spec.js.map +1 -1
  140. package/package.json +21 -58
  141. package/dist/cjs/builders/atomic.d.ts +0 -12
  142. package/dist/cjs/builders/atomic.js +0 -43
  143. package/dist/cjs/builders/compose.d.ts +0 -60
  144. package/dist/cjs/builders/compose.js +0 -122
  145. package/dist/cjs/builders/index.d.ts +0 -5
  146. package/dist/cjs/builders/index.js +0 -48
  147. package/dist/cjs/builders/static.d.ts +0 -137
  148. package/dist/cjs/builders/static.js +0 -2
  149. package/dist/cjs/builders/utility.d.ts +0 -12
  150. package/dist/cjs/builders/utility.js +0 -43
  151. package/dist/cjs/createRTFunctions.d.ts +0 -90
  152. package/dist/cjs/createRTFunctions.js +0 -38
  153. package/dist/cjs/enrich/createFriendlyText.d.ts +0 -25
  154. package/dist/cjs/enrich/createFriendlyText.js +0 -275
  155. package/dist/cjs/enrich/friendlyText.d.ts +0 -56
  156. package/dist/cjs/enrich/friendlyText.js +0 -2
  157. package/dist/cjs/enrich/mockData.d.ts +0 -53
  158. package/dist/cjs/enrich/mockData.js +0 -2
  159. package/dist/cjs/fnHash.d.ts +0 -8
  160. package/dist/cjs/fnHash.js +0 -41
  161. package/dist/cjs/formats/bigintFormats.d.ts +0 -41
  162. package/dist/cjs/formats/bigintFormats.js +0 -10
  163. package/dist/cjs/formats/datetime/dateFormats.d.ts +0 -10
  164. package/dist/cjs/formats/datetime/dateFormats.js +0 -2
  165. package/dist/cjs/formats/datetime/dateTime-pure-fns.d.ts +0 -21
  166. package/dist/cjs/formats/datetime/dateTime-pure-fns.js +0 -405
  167. package/dist/cjs/formats/datetime/dateTimeParams.d.ts +0 -14
  168. package/dist/cjs/formats/datetime/dateTimeParams.js +0 -2
  169. package/dist/cjs/formats/datetime/stringDateTimeFormats.d.ts +0 -33
  170. package/dist/cjs/formats/datetime/stringDateTimeFormats.js +0 -2
  171. package/dist/cjs/formats/datetime/temporalFormats.d.ts +0 -84
  172. package/dist/cjs/formats/datetime/temporalFormats.js +0 -23
  173. package/dist/cjs/formats/index.d.ts +0 -18
  174. package/dist/cjs/formats/index.js +0 -88
  175. package/dist/cjs/formats/numberFormats.d.ts +0 -82
  176. package/dist/cjs/formats/numberFormats.js +0 -16
  177. package/dist/cjs/formats/refineFormat.d.ts +0 -24
  178. package/dist/cjs/formats/refineFormat.js +0 -2
  179. package/dist/cjs/formats/scalars.d.ts +0 -32
  180. package/dist/cjs/formats/scalars.js +0 -30
  181. package/dist/cjs/formats/string/credit-card-pure-fns.d.ts +0 -26
  182. package/dist/cjs/formats/string/credit-card-pure-fns.js +0 -151
  183. package/dist/cjs/formats/string/string-formats-pure-fns.d.ts +0 -12
  184. package/dist/cjs/formats/string/string-formats-pure-fns.js +0 -517
  185. package/dist/cjs/formats/string/string-patterns.d.ts +0 -111
  186. package/dist/cjs/formats/string/string-patterns.js +0 -115
  187. package/dist/cjs/formats/string/stringFormats.d.ts +0 -489
  188. package/dist/cjs/formats/string/stringFormats.js +0 -84
  189. package/dist/cjs/formats/structural.d.ts +0 -105
  190. package/dist/cjs/formats/structural.js +0 -7
  191. package/dist/cjs/getRunType.d.ts +0 -4
  192. package/dist/cjs/getRunType.js +0 -20
  193. package/dist/cjs/go-generated/fnHashes.generated.d.ts +0 -196
  194. package/dist/cjs/go-generated/fnHashes.generated.js +0 -78
  195. package/dist/cjs/go-generated/formatErrorKeys.generated.d.ts +0 -78
  196. package/dist/cjs/go-generated/formatErrorKeys.generated.js +0 -40
  197. package/dist/cjs/go-generated/runTypeKind.generated.d.ts +0 -62
  198. package/dist/cjs/go-generated/runTypeKind.generated.js +0 -61
  199. package/dist/cjs/go-generated/typeFormats.generated.d.ts +0 -104
  200. package/dist/cjs/go-generated/typeFormats.generated.js +0 -30
  201. package/dist/cjs/index.d.ts +0 -28
  202. package/dist/cjs/index.js +0 -47
  203. package/dist/cjs/markers.d.ts +0 -33
  204. package/dist/cjs/markers.js +0 -14
  205. package/dist/cjs/mocking/childMatch.d.ts +0 -3
  206. package/dist/cjs/mocking/childMatch.js +0 -357
  207. package/dist/cjs/mocking/constants.mock.d.ts +0 -7
  208. package/dist/cjs/mocking/constants.mock.js +0 -87
  209. package/dist/cjs/mocking/createMockData.d.ts +0 -8
  210. package/dist/cjs/mocking/createMockData.js +0 -53
  211. package/dist/cjs/mocking/index.d.ts +0 -4
  212. package/dist/cjs/mocking/index.js +0 -9
  213. package/dist/cjs/mocking/isMultipleOf.d.ts +0 -2
  214. package/dist/cjs/mocking/isMultipleOf.js +0 -11
  215. package/dist/cjs/mocking/mockBigIntFormat.d.ts +0 -1
  216. package/dist/cjs/mocking/mockBigIntFormat.js +0 -38
  217. package/dist/cjs/mocking/mockDateTimeBounds.d.ts +0 -13
  218. package/dist/cjs/mocking/mockDateTimeBounds.js +0 -277
  219. package/dist/cjs/mocking/mockInvalid.d.ts +0 -15
  220. package/dist/cjs/mocking/mockInvalid.js +0 -233
  221. package/dist/cjs/mocking/mockNumberFormat.d.ts +0 -1
  222. package/dist/cjs/mocking/mockNumberFormat.js +0 -56
  223. package/dist/cjs/mocking/mockRandom.d.ts +0 -20
  224. package/dist/cjs/mocking/mockRandom.js +0 -106
  225. package/dist/cjs/mocking/mockRegistry.d.ts +0 -7
  226. package/dist/cjs/mocking/mockRegistry.js +0 -11
  227. package/dist/cjs/mocking/mockStringFormat.d.ts +0 -5
  228. package/dist/cjs/mocking/mockStringFormat.js +0 -238
  229. package/dist/cjs/mocking/mockTemporal.d.ts +0 -13
  230. package/dist/cjs/mocking/mockTemporal.js +0 -233
  231. package/dist/cjs/mocking/mockType.d.ts +0 -3
  232. package/dist/cjs/mocking/mockType.js +0 -810
  233. package/dist/cjs/mocking/mockTypes.d.ts +0 -54
  234. package/dist/cjs/mocking/mockTypes.js +0 -2
  235. package/dist/cjs/mocking/structuralFormat.d.ts +0 -5
  236. package/dist/cjs/mocking/structuralFormat.js +0 -82
  237. package/dist/cjs/modelTypes.d.ts +0 -11
  238. package/dist/cjs/modelTypes.js +0 -2
  239. package/dist/cjs/overrideRTFunctions.d.ts +0 -9
  240. package/dist/cjs/overrideRTFunctions.js +0 -20
  241. package/dist/cjs/package.json +0 -3
  242. package/dist/cjs/runtime/index.d.ts +0 -10
  243. package/dist/cjs/runtime/index.js +0 -25
  244. package/dist/cjs/runtypes/builderCore.d.ts +0 -7
  245. package/dist/cjs/runtypes/builderCore.js +0 -39
  246. package/dist/cjs/runtypes/builderTypes.d.ts +0 -51
  247. package/dist/cjs/runtypes/builderTypes.js +0 -2
  248. package/dist/cjs/runtypes/circular-pure-fns.d.ts +0 -11
  249. package/dist/cjs/runtypes/circular-pure-fns.js +0 -117
  250. package/dist/cjs/runtypes/circular.d.ts +0 -6
  251. package/dist/cjs/runtypes/circular.js +0 -25
  252. package/dist/cjs/runtypes/classSerializerRegistry.d.ts +0 -28
  253. package/dist/cjs/runtypes/classSerializerRegistry.js +0 -141
  254. package/dist/cjs/runtypes/dataOnly.d.ts +0 -29
  255. package/dist/cjs/runtypes/dataOnly.js +0 -2
  256. package/dist/cjs/runtypes/entryTuple.d.ts +0 -101
  257. package/dist/cjs/runtypes/entryTuple.js +0 -395
  258. package/dist/cjs/runtypes/formatAnnotation.d.ts +0 -4
  259. package/dist/cjs/runtypes/formatAnnotation.js +0 -2
  260. package/dist/cjs/runtypes/formatErrors.d.ts +0 -18
  261. package/dist/cjs/runtypes/formatErrors.js +0 -2
  262. package/dist/cjs/runtypes/formatPattern.d.ts +0 -20
  263. package/dist/cjs/runtypes/formatPattern.js +0 -17
  264. package/dist/cjs/runtypes/jsonShape.d.ts +0 -22
  265. package/dist/cjs/runtypes/jsonShape.js +0 -2
  266. package/dist/cjs/runtypes/pure-fn-ids.generated.d.ts +0 -47
  267. package/dist/cjs/runtypes/pure-fn-ids.generated.js +0 -50
  268. package/dist/cjs/runtypes/pure-fns-utils.d.ts +0 -8
  269. package/dist/cjs/runtypes/pure-fns-utils.js +0 -147
  270. package/dist/cjs/runtypes/pureFn.d.ts +0 -7
  271. package/dist/cjs/runtypes/pureFn.js +0 -52
  272. package/dist/cjs/runtypes/rtUtils.d.ts +0 -45
  273. package/dist/cjs/runtypes/rtUtils.js +0 -218
  274. package/dist/cjs/runtypes/sentinelKeys.d.ts +0 -7
  275. package/dist/cjs/runtypes/sentinelKeys.js +0 -2
  276. package/dist/cjs/runtypes/stripRunTypeMeta.d.ts +0 -53
  277. package/dist/cjs/runtypes/stripRunTypeMeta.js +0 -2
  278. package/dist/cjs/runtypes/typeFormat.d.ts +0 -14
  279. package/dist/cjs/runtypes/typeFormat.js +0 -2
  280. package/dist/cjs/runtypes/types.d.ts +0 -114
  281. package/dist/cjs/runtypes/types.js +0 -2
  282. package/dist/cjs/standard/createJsonSchemaFn.d.ts +0 -8
  283. package/dist/cjs/standard/createJsonSchemaFn.js +0 -16
  284. package/dist/cjs/standard/createStandardSchema.d.ts +0 -18
  285. package/dist/cjs/standard/createStandardSchema.js +0 -30
  286. package/dist/cjs/standard/issueMapping.d.ts +0 -12
  287. package/dist/cjs/standard/issueMapping.js +0 -36
  288. package/dist/cjs/standard/jsonSchemaDoc.d.ts +0 -7
  289. package/dist/cjs/standard/jsonSchemaDoc.js +0 -95
  290. package/dist/cjs/standard/spec.d.ts +0 -47
  291. package/dist/cjs/standard/spec.js +0 -2
  292. package/dist/mion-pure-fns/@mionjs/run-types/-y__pOnrgnvRMz.js +0 -2
  293. package/dist/mion-pure-fns/@mionjs/run-types/0ofEnb55W0BDIY.js +0 -2
  294. package/dist/mion-pure-fns/@mionjs/run-types/18wDCH5CXZoQKV.js +0 -2
  295. package/dist/mion-pure-fns/@mionjs/run-types/2xtQHAMu-yOBo6.js +0 -1
  296. package/dist/mion-pure-fns/@mionjs/run-types/5oCqd7YyfA9rEw.js +0 -1
  297. package/dist/mion-pure-fns/@mionjs/run-types/6E7qWsIwaFRGn6.js +0 -1
  298. package/dist/mion-pure-fns/@mionjs/run-types/6xkN1Qfs9nqO79.js +0 -1
  299. package/dist/mion-pure-fns/@mionjs/run-types/8Mj42N3ytEEn67.js +0 -1
  300. package/dist/mion-pure-fns/@mionjs/run-types/A3KjzpjelkcBST.js +0 -2
  301. package/dist/mion-pure-fns/@mionjs/run-types/AgOXcprpjsrTKk.js +0 -1
  302. package/dist/mion-pure-fns/@mionjs/run-types/E29ul2pUOyD_Ay.js +0 -1
  303. package/dist/mion-pure-fns/@mionjs/run-types/EG8OkOOSnT9bZn.js +0 -1
  304. package/dist/mion-pure-fns/@mionjs/run-types/EYsxRHRDgAykA_.js +0 -3
  305. package/dist/mion-pure-fns/@mionjs/run-types/Eube1z0GFHuqlM.js +0 -2
  306. package/dist/mion-pure-fns/@mionjs/run-types/GA20s6bj41GC1A.js +0 -1
  307. package/dist/mion-pure-fns/@mionjs/run-types/GfQK19ktpvibuZ.js +0 -2
  308. package/dist/mion-pure-fns/@mionjs/run-types/IyjvBbz0zSlgCJ.js +0 -1
  309. package/dist/mion-pure-fns/@mionjs/run-types/LqTR2O-h6MYq9J.js +0 -4
  310. package/dist/mion-pure-fns/@mionjs/run-types/MnJ72PqkyXHiSP.js +0 -1
  311. package/dist/mion-pure-fns/@mionjs/run-types/NJ9TCGDnkv_9Mn.js +0 -2
  312. package/dist/mion-pure-fns/@mionjs/run-types/OCJ1B0-ZCAwagS.js +0 -1
  313. package/dist/mion-pure-fns/@mionjs/run-types/PQVLEBllZckw8I.js +0 -2
  314. package/dist/mion-pure-fns/@mionjs/run-types/Qd_9GJQlOCVqDe.js +0 -1
  315. package/dist/mion-pure-fns/@mionjs/run-types/R0IFkkw4SM2gvv.js +0 -2
  316. package/dist/mion-pure-fns/@mionjs/run-types/THkAA-KNR1HeAe.js +0 -1
  317. package/dist/mion-pure-fns/@mionjs/run-types/VJiknJ2exR2oMF.js +0 -1
  318. package/dist/mion-pure-fns/@mionjs/run-types/XYGjy-tcgDROBw.js +0 -2
  319. package/dist/mion-pure-fns/@mionjs/run-types/Z2sc5xQPKB0oav.js +0 -1
  320. package/dist/mion-pure-fns/@mionjs/run-types/_3Pmrr5aNmyNi4.js +0 -2
  321. package/dist/mion-pure-fns/@mionjs/run-types/cgwpjq6rGsI8jb.js +0 -1
  322. package/dist/mion-pure-fns/@mionjs/run-types/d8U9HjmMsNFd6Z.js +0 -1
  323. package/dist/mion-pure-fns/@mionjs/run-types/fL3v1v6aVZwJ7-.js +0 -1
  324. package/dist/mion-pure-fns/@mionjs/run-types/gFl-yXbCxJqWgQ.js +0 -2
  325. package/dist/mion-pure-fns/@mionjs/run-types/hiotRbfSKFAuK4.js +0 -1
  326. package/dist/mion-pure-fns/@mionjs/run-types/lFYcgG5ZSI-8em.js +0 -1
  327. package/dist/mion-pure-fns/@mionjs/run-types/n_ZOWff4X3qBMQ.js +0 -1
  328. package/dist/mion-pure-fns/@mionjs/run-types/ndkQPoji6DFHx2.js +0 -2
  329. package/dist/mion-pure-fns/@mionjs/run-types/nsU8QeJCuCF8Kr.js +0 -1
  330. package/dist/mion-pure-fns/@mionjs/run-types/qMsNYN8hy_sC8i.js +0 -1
  331. package/dist/mion-pure-fns/@mionjs/run-types/rXVwGkGDX08BsQ.js +0 -1
  332. package/dist/mion-pure-fns/@mionjs/run-types/rgWveqNi_HeFF8.js +0 -5
  333. package/dist/mion-pure-fns/@mionjs/run-types/s-tZDRlQfCG5m2.js +0 -1
  334. package/dist/mion-pure-fns/@mionjs/run-types/t-ntJ9S0FuxkC2.js +0 -1
  335. package/dist/mion-pure-fns/@mionjs/run-types/tfRjnFZVF8lqI_.js +0 -1
  336. package/dist/mion-pure-fns/@mionjs/run-types/vLId7t0J8HNWlN.js +0 -1
  337. package/dist/mion-pure-fns/@mionjs/run-types/zXMPEMyjGR4ZRc.js +0 -1
@@ -1,277 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mockBoundedDate = mockBoundedDate;
4
- exports.mockBoundedTime = mockBoundedTime;
5
- exports.mockBoundedDateTime = mockBoundedDateTime;
6
- exports.mockBoundedNativeDate = mockBoundedNativeDate;
7
- const FILL_YEAR = 2000;
8
- const MS_PER_DAY = 86400000;
9
- const MS_PER_HOUR = 3600000;
10
- const MS_PER_MIN = 60000;
11
- const MS_PER_SEC = 1000;
12
- function randInt(min, max, random) {
13
- if (max <= min)
14
- return min;
15
- return min + Math.floor(random.float() * (max - min + 1));
16
- }
17
- function isRelative(bound) {
18
- return bound.startsWith('now');
19
- }
20
- function parseDuration(tail) {
21
- const out = { years: 0, months: 0, weeks: 0, days: 0, hours: 0, minutes: 0, seconds: 0 };
22
- const body = tail.substring(1);
23
- const tIdx = body.indexOf('T');
24
- const datePart = tIdx === -1 ? body : body.substring(0, tIdx);
25
- const timePart = tIdx === -1 ? '' : body.substring(tIdx + 1);
26
- const eat = (segment, map) => {
27
- const re = /(\d+)([A-Z])/g;
28
- let m;
29
- while ((m = re.exec(segment)) !== null) {
30
- const key = map[m[2]];
31
- if (key)
32
- out[key] = Number(m[1]);
33
- }
34
- };
35
- eat(datePart, { Y: 'years', M: 'months', W: 'weeks', D: 'days' });
36
- eat(timePart, { H: 'hours', M: 'minutes', S: 'seconds' });
37
- return out;
38
- }
39
- function resolveRelative(spec, scale, random) {
40
- const now = new Date(random.now());
41
- if (scale === 'timeOfDay') {
42
- let ms = now.getUTCHours() * MS_PER_HOUR +
43
- now.getUTCMinutes() * MS_PER_MIN +
44
- now.getUTCSeconds() * MS_PER_SEC +
45
- now.getUTCMilliseconds();
46
- if (spec !== 'now') {
47
- const sign = spec[3] === '-' ? -1 : 1;
48
- const d = parseDuration(spec.substring(4));
49
- ms += sign * (d.hours * MS_PER_HOUR + d.minutes * MS_PER_MIN + d.seconds * MS_PER_SEC);
50
- }
51
- return ms;
52
- }
53
- const result = new Date(now.getTime());
54
- if (spec !== 'now') {
55
- const sign = spec[3] === '-' ? -1 : 1;
56
- const d = parseDuration(spec.substring(4));
57
- result.setUTCFullYear(result.getUTCFullYear() + sign * d.years);
58
- result.setUTCMonth(result.getUTCMonth() + sign * d.months);
59
- result.setUTCDate(result.getUTCDate() + sign * (d.weeks * 7 + d.days));
60
- result.setTime(result.getTime() + sign * (d.hours * MS_PER_HOUR + d.minutes * MS_PER_MIN + d.seconds * MS_PER_SEC));
61
- }
62
- if (scale === 'epochDate') {
63
- return Date.UTC(result.getUTCFullYear(), result.getUTCMonth(), result.getUTCDate(), 0, 0, 0, 0);
64
- }
65
- return result.getTime();
66
- }
67
- function dateLiteralToMs(value, layout) {
68
- const parts = value.split('-');
69
- let year = FILL_YEAR;
70
- let month = 1;
71
- let day = 1;
72
- switch (layout) {
73
- case 'DD-MM-YYYY':
74
- day = Number(parts[0]);
75
- month = Number(parts[1]);
76
- year = Number(parts[2]);
77
- break;
78
- case 'MM-DD-YYYY':
79
- month = Number(parts[0]);
80
- day = Number(parts[1]);
81
- year = Number(parts[2]);
82
- break;
83
- case 'YYYY-MM':
84
- year = Number(parts[0]);
85
- month = Number(parts[1]);
86
- break;
87
- case 'MM-DD':
88
- month = Number(parts[0]);
89
- day = Number(parts[1]);
90
- break;
91
- case 'DD-MM':
92
- day = Number(parts[0]);
93
- month = Number(parts[1]);
94
- break;
95
- default:
96
- year = Number(parts[0]);
97
- month = Number(parts[1]);
98
- day = Number(parts[2]);
99
- }
100
- return Date.UTC(year, month - 1, day, 0, 0, 0, 0);
101
- }
102
- function timeLiteralToMs(value, layout) {
103
- let body = value;
104
- if (layout === 'ISO' || layout === 'HH:mm:ss[.mmm]TZ') {
105
- if (body.endsWith('Z') || body.endsWith('z'))
106
- body = body.substring(0, body.length - 1);
107
- else {
108
- const plus = body.indexOf('+');
109
- const minus = body.lastIndexOf('-');
110
- const cut = plus !== -1 ? plus : minus;
111
- if (cut > 0)
112
- body = body.substring(0, cut);
113
- }
114
- }
115
- if (layout === 'HH')
116
- return Number(body) * MS_PER_HOUR;
117
- if (layout === 'mm')
118
- return Number(body) * MS_PER_MIN;
119
- if (layout === 'ss')
120
- return Number(body) * MS_PER_SEC;
121
- const parts = body.split(':');
122
- if (layout === 'HH:mm')
123
- return Number(parts[0]) * MS_PER_HOUR + Number(parts[1]) * MS_PER_MIN;
124
- if (layout === 'mm:ss')
125
- return Number(parts[0]) * MS_PER_MIN + Number(parts[1]) * MS_PER_SEC;
126
- const secParts = (parts[2] ?? '').split('.');
127
- return (Number(parts[0]) * MS_PER_HOUR +
128
- Number(parts[1]) * MS_PER_MIN +
129
- (secParts[0] ? Number(secParts[0]) : 0) * MS_PER_SEC +
130
- (secParts[1] ? Number(secParts[1]) : 0));
131
- }
132
- function dateTimeLiteralToMs(value, splitChar) {
133
- const sep = splitChar || 'T';
134
- const idx = value.indexOf(sep);
135
- if (idx < 0)
136
- return Date.parse(value);
137
- const dateMs = dateLiteralToMs(value.substring(0, idx), 'YYYY-MM-DD');
138
- const timeMs = timeLiteralToMs(value.substring(idx + sep.length), 'ISO');
139
- return dateMs + timeMs;
140
- }
141
- function resolveDateKey(bound, layout, random) {
142
- return isRelative(bound) ? resolveRelative(bound, 'epochDate', random) : dateLiteralToMs(bound, layout);
143
- }
144
- function resolveTimeKey(bound, layout, random) {
145
- return isRelative(bound) ? resolveRelative(bound, 'timeOfDay', random) : timeLiteralToMs(bound, layout);
146
- }
147
- function resolveEpochKey(bound, splitChar, random) {
148
- return isRelative(bound) ? resolveRelative(bound, 'epoch', random) : dateTimeLiteralToMs(bound, splitChar);
149
- }
150
- function formatDate(ms, layout) {
151
- const d = new Date(ms);
152
- const year = String(d.getUTCFullYear()).padStart(4, '0');
153
- const month = String(d.getUTCMonth() + 1).padStart(2, '0');
154
- const day = String(d.getUTCDate()).padStart(2, '0');
155
- switch (layout) {
156
- case 'DD-MM-YYYY':
157
- return `${day}-${month}-${year}`;
158
- case 'MM-DD-YYYY':
159
- return `${month}-${day}-${year}`;
160
- case 'YYYY-MM':
161
- return `${year}-${month}`;
162
- case 'MM-DD':
163
- return `${month}-${day}`;
164
- case 'DD-MM':
165
- return `${day}-${month}`;
166
- default:
167
- return `${year}-${month}-${day}`;
168
- }
169
- }
170
- function formatTime(msOfDay, layout) {
171
- const h = Math.floor(msOfDay / MS_PER_HOUR);
172
- const m = Math.floor((msOfDay % MS_PER_HOUR) / MS_PER_MIN);
173
- const s = Math.floor((msOfDay % MS_PER_MIN) / MS_PER_SEC);
174
- const ms = msOfDay % MS_PER_SEC;
175
- const hh = String(h).padStart(2, '0');
176
- const mm = String(m).padStart(2, '0');
177
- const ss = String(s).padStart(2, '0');
178
- const mmm = String(ms).padStart(3, '0');
179
- switch (layout) {
180
- case 'ISO':
181
- case 'HH:mm:ss[.mmm]TZ':
182
- return `${hh}:${mm}:${ss}.${mmm}Z`;
183
- case 'HH:mm:ss[.mmm]':
184
- return `${hh}:${mm}:${ss}.${mmm}`;
185
- case 'HH:mm:ss':
186
- return `${hh}:${mm}:${ss}`;
187
- case 'HH:mm':
188
- return `${hh}:${mm}`;
189
- case 'mm:ss':
190
- return `${mm}:${ss}`;
191
- case 'HH':
192
- return hh;
193
- case 'mm':
194
- return mm;
195
- case 'ss':
196
- return ss;
197
- default:
198
- return `${hh}:${mm}:${ss}`;
199
- }
200
- }
201
- const DATE_MIN_MS = Date.UTC(1, 0, 1, 0, 0, 0, 0);
202
- const DATE_MAX_MS = Date.UTC(9999, 11, 31, 0, 0, 0, 0);
203
- function timeMaxMs(layout) {
204
- switch (layout) {
205
- case 'HH':
206
- return 23 * MS_PER_HOUR;
207
- case 'mm':
208
- return 59 * MS_PER_MIN;
209
- case 'ss':
210
- return 59 * MS_PER_SEC;
211
- case 'HH:mm':
212
- return 23 * MS_PER_HOUR + 59 * MS_PER_MIN;
213
- case 'mm:ss':
214
- return 59 * MS_PER_MIN + 59 * MS_PER_SEC;
215
- case 'HH:mm:ss':
216
- return 23 * MS_PER_HOUR + 59 * MS_PER_MIN + 59 * MS_PER_SEC;
217
- default:
218
- return 23 * MS_PER_HOUR + 59 * MS_PER_MIN + 59 * MS_PER_SEC + 999;
219
- }
220
- }
221
- function timeGridMs(layout) {
222
- switch (layout) {
223
- case 'HH':
224
- return MS_PER_HOUR;
225
- case 'mm':
226
- case 'HH:mm':
227
- return MS_PER_MIN;
228
- case 'ss':
229
- case 'mm:ss':
230
- case 'HH:mm:ss':
231
- return MS_PER_SEC;
232
- default:
233
- return 1;
234
- }
235
- }
236
- function resolveRange(bounds, resolve, defaultLo, defaultHi, grid) {
237
- let lo = defaultLo;
238
- let hi = defaultHi;
239
- if (bounds.min !== undefined)
240
- lo = Math.max(lo, resolve(bounds.min));
241
- if (bounds.gt !== undefined)
242
- lo = Math.max(lo, resolve(bounds.gt) + grid);
243
- if (bounds.max !== undefined)
244
- hi = Math.min(hi, resolve(bounds.max));
245
- if (bounds.lt !== undefined)
246
- hi = Math.min(hi, resolve(bounds.lt) - grid);
247
- if (hi < lo)
248
- hi = lo;
249
- return { lo, hi };
250
- }
251
- function mockBoundedDate(layout, bounds, random) {
252
- const { lo, hi } = resolveRange(bounds, (b) => resolveDateKey(b, layout, random), DATE_MIN_MS, DATE_MAX_MS, MS_PER_DAY);
253
- return formatDate(randInt(lo, hi, random), layout);
254
- }
255
- function mockBoundedTime(layout, bounds, random) {
256
- const grid = timeGridMs(layout);
257
- const { lo, hi } = resolveRange(bounds, (b) => resolveTimeKey(b, layout, random), 0, timeMaxMs(layout), grid);
258
- return formatTime(randInt(lo, hi, random), layout);
259
- }
260
- function mockBoundedDateTime(params, random) {
261
- const dateLayout = (params.date?.format ?? 'ISO');
262
- const timeLayout = (params.time?.format ?? 'ISO');
263
- const splitChar = params.splitChar ?? 'T';
264
- const bounds = { min: params.min, max: params.max, gt: params.gt, lt: params.lt };
265
- if (bounds.min === undefined && bounds.max === undefined && bounds.gt === undefined && bounds.lt === undefined) {
266
- return `${mockBoundedDate(dateLayout, {}, random)}${splitChar}${mockBoundedTime(timeLayout, {}, random)}`;
267
- }
268
- const { lo, hi } = resolveRange(bounds, (b) => resolveEpochKey(b, splitChar, random), DATE_MIN_MS, DATE_MAX_MS + timeMaxMs(timeLayout), timeGridMs(timeLayout));
269
- const pick = randInt(lo, hi, random);
270
- const dayMs = Math.floor(pick / MS_PER_DAY) * MS_PER_DAY;
271
- const timeOfDay = pick - dayMs;
272
- return `${formatDate(dayMs, dateLayout)}${splitChar}${formatTime(timeOfDay, timeLayout)}`;
273
- }
274
- function mockBoundedNativeDate(bounds, random) {
275
- const { lo, hi } = resolveRange(bounds, (b) => resolveEpochKey(b, 'T', random), DATE_MIN_MS, random.now(), 1);
276
- return new Date(randInt(lo, hi, random));
277
- }
@@ -1,15 +0,0 @@
1
- import type { RunType } from '../runtypes/types.ts';
2
- import type { RunTypeMockOptions } from './mockTypes.ts';
3
- import type { MockRandom } from './mockRandom.ts';
4
- export interface Target {
5
- parent: Record<string | number, unknown> | undefined;
6
- key: string | number | undefined;
7
- node: RunType | undefined;
8
- value: unknown;
9
- depth: number;
10
- isLeaf: boolean;
11
- }
12
- export declare function negativeFor(node: RunType | undefined, value: unknown, random?: MockRandom): unknown;
13
- export declare function collectInvalidTargets(root: unknown, rootNode: RunType | undefined): Target[];
14
- export declare function chooseInvalidTarget(targets: Target[], invalidLeafProbability: number, random?: MockRandom): Target | undefined;
15
- export declare function mockRunTypeInvalid(runType: RunType, options: RunTypeMockOptions, stack?: RunType[]): unknown;
@@ -1,233 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.negativeFor = negativeFor;
4
- exports.collectInvalidTargets = collectInvalidTargets;
5
- exports.chooseInvalidTarget = chooseInvalidTarget;
6
- exports.mockRunTypeInvalid = mockRunTypeInvalid;
7
- const runTypeKind_generated_ts_1 = require("../go-generated/runTypeKind.generated.js");
8
- const mockRandom_ts_1 = require("./mockRandom.js");
9
- const mockType_ts_1 = require("./mockType.js");
10
- const mockStringFormat_ts_1 = require("./mockStringFormat.js");
11
- const K = runTypeKind_generated_ts_1.RunTypeKind;
12
- const kindOf = (node) => node.kind;
13
- function isContainer(value) {
14
- if (typeof value !== 'object' || value === null)
15
- return false;
16
- if (Array.isArray(value))
17
- return true;
18
- return !(value instanceof Date ||
19
- value instanceof Uint8Array ||
20
- value instanceof Map ||
21
- value instanceof Set ||
22
- value instanceof RegExp);
23
- }
24
- function kindMatchesValue(node, candidate) {
25
- switch (kindOf(node)) {
26
- case K.string:
27
- case K.templateLiteral:
28
- return typeof candidate === 'string';
29
- case K.regexp:
30
- return candidate instanceof RegExp;
31
- case K.number:
32
- return typeof candidate === 'number';
33
- case K.bigint:
34
- return typeof candidate === 'bigint';
35
- case K.boolean:
36
- return typeof candidate === 'boolean';
37
- case K.literal:
38
- return candidate === node.literal;
39
- case K.null:
40
- return candidate === null;
41
- case K.undefined:
42
- case K.void:
43
- return candidate === undefined;
44
- case K.array:
45
- case K.tuple:
46
- return Array.isArray(candidate);
47
- case K.object:
48
- case K.objectLiteral:
49
- case K.intersection:
50
- case K.class:
51
- return typeof candidate === 'object' && candidate !== null && !Array.isArray(candidate);
52
- case K.enum:
53
- return true;
54
- default:
55
- return false;
56
- }
57
- }
58
- function memberForValue(node, value) {
59
- if (!node || kindOf(node) !== K.union)
60
- return node;
61
- const members = (node.children ?? []).filter((member) => !member.notSupported);
62
- return members.find((member) => kindMatchesValue(member, value)) ?? members[0] ?? node;
63
- }
64
- function propChildNode(node, key) {
65
- const children = node?.children ?? [];
66
- for (const member of children) {
67
- if ((kindOf(member) === K.property || kindOf(member) === K.propertySignature) && member.name === String(key)) {
68
- return member.child;
69
- }
70
- }
71
- for (const member of children) {
72
- if (kindOf(member) === K.indexSignature)
73
- return member.child;
74
- }
75
- return undefined;
76
- }
77
- function elemNodeAt(node, i) {
78
- if (!node)
79
- return undefined;
80
- if (kindOf(node) === K.tuple) {
81
- const member = (node.children ?? [])[i];
82
- return member?.child ?? member;
83
- }
84
- return node.child;
85
- }
86
- function typeofInverse(value) {
87
- if (typeof value === 'string')
88
- return 123;
89
- if (typeof value === 'number' || typeof value === 'bigint')
90
- return 'not-a-number';
91
- if (typeof value === 'boolean')
92
- return 'not-a-boolean';
93
- if (value === null || value === undefined)
94
- return 'unexpected';
95
- if (Array.isArray(value))
96
- return 'not-an-array';
97
- return 'not-an-object';
98
- }
99
- const UNION_CANDIDATES = ['rt-invalid', 1234.5, true, { rtInvalid: true }, [], null];
100
- function negativeForUnion(members, value) {
101
- const live = members.filter((member) => !member.notSupported);
102
- for (const candidate of UNION_CANDIDATES) {
103
- if (!live.some((member) => kindMatchesValue(member, candidate)))
104
- return candidate;
105
- }
106
- return typeofInverse(value);
107
- }
108
- function literalInverse(lit) {
109
- if (typeof lit === 'string')
110
- return 1;
111
- return 'not-the-literal';
112
- }
113
- function negativeFor(node, value, random = mockRandom_ts_1.nativeMockRandom) {
114
- if (!node)
115
- return typeofInverse(value);
116
- const kind = kindOf(node);
117
- if (kind === K.union)
118
- return negativeForUnion(node.children ?? [], value);
119
- switch (kind) {
120
- case K.string: {
121
- if (random.float() < 0.5) {
122
- const formatNegative = (0, mockStringFormat_ts_1.negativeForStringFormat)(node.formatAnnotation, value);
123
- if (formatNegative !== undefined)
124
- return formatNegative;
125
- }
126
- return 123;
127
- }
128
- case K.regexp:
129
- case K.templateLiteral:
130
- case K.symbol:
131
- return 123;
132
- case K.number:
133
- case K.bigint:
134
- return 'not-a-number';
135
- case K.boolean:
136
- return 'not-a-boolean';
137
- case K.literal:
138
- return literalInverse(node.literal);
139
- case K.enum:
140
- return {};
141
- case K.null:
142
- return 'not-null';
143
- case K.undefined:
144
- case K.void:
145
- return 'should-be-undefined';
146
- case K.object:
147
- case K.objectLiteral:
148
- case K.intersection:
149
- case K.class:
150
- return 'not-an-object';
151
- case K.array:
152
- case K.tuple:
153
- return 'not-an-array';
154
- case K.any:
155
- case K.unknown:
156
- return value;
157
- default:
158
- return typeofInverse(value);
159
- }
160
- }
161
- function collect(value, node, parent, key, depth, out) {
162
- const leaf = !isContainer(value);
163
- out.push({ parent, key, node, value, depth, isLeaf: leaf });
164
- if (leaf)
165
- return;
166
- const resolved = memberForValue(node, value);
167
- if (Array.isArray(value)) {
168
- const arr = value;
169
- value.forEach((child, index) => collect(child, elemNodeAt(resolved, index), arr, index, depth + 1, out));
170
- return;
171
- }
172
- const container = value;
173
- for (const childKey of Object.keys(container)) {
174
- collect(container[childKey], propChildNode(resolved, childKey), container, childKey, depth + 1, out);
175
- }
176
- }
177
- function collectInvalidTargets(root, rootNode) {
178
- const out = [];
179
- collect(root, rootNode, undefined, undefined, 0, out);
180
- return out;
181
- }
182
- function canCorrupt(target) {
183
- if (!target.node)
184
- return true;
185
- const kind = kindOf(target.node);
186
- return kind !== K.any && kind !== K.unknown;
187
- }
188
- function levelWeight(nd, p) {
189
- return (1 - p) * (1 - nd) + p * nd;
190
- }
191
- function chooseInvalidTarget(targets, invalidLeafProbability, random = mockRandom_ts_1.nativeMockRandom) {
192
- const corruptible = targets.filter(canCorrupt);
193
- if (corruptible.length === 0)
194
- return undefined;
195
- const root = corruptible.find((target) => target.parent === undefined);
196
- if (invalidLeafProbability >= 1) {
197
- const leaves = corruptible.filter((target) => target.isLeaf);
198
- if (leaves.length > 0)
199
- return leaves[random.int(0, leaves.length - 1)];
200
- return root ?? corruptible[0];
201
- }
202
- if (invalidLeafProbability <= 0)
203
- return root ?? corruptible[0];
204
- const maxDepth = corruptible.reduce((max, target) => Math.max(max, target.depth), 0);
205
- if (maxDepth === 0)
206
- return root ?? corruptible[0];
207
- const countAtDepth = new Map();
208
- for (const target of corruptible)
209
- countAtDepth.set(target.depth, (countAtDepth.get(target.depth) ?? 0) + 1);
210
- const weights = corruptible.map((target) => levelWeight(target.depth / maxDepth, invalidLeafProbability) / countAtDepth.get(target.depth));
211
- const total = weights.reduce((sum, weight) => sum + weight, 0);
212
- let roll = random.float() * total;
213
- for (let i = 0; i < corruptible.length; i++) {
214
- roll -= weights[i];
215
- if (roll < 0)
216
- return corruptible[i];
217
- }
218
- return corruptible[corruptible.length - 1];
219
- }
220
- function injectInvalid(root, rootNode, invalidLeafProbability, random) {
221
- const targets = collectInvalidTargets(root, rootNode);
222
- const chosen = chooseInvalidTarget(targets, invalidLeafProbability, random);
223
- if (!chosen || chosen.parent === undefined)
224
- return negativeFor(rootNode, root, random);
225
- chosen.parent[chosen.key] = negativeFor(chosen.node, chosen.value, random);
226
- return root;
227
- }
228
- function mockRunTypeInvalid(runType, options, stack = []) {
229
- const base = (0, mockType_ts_1.mockRunType)(runType, options, stack);
230
- const mockOptions = options.mock;
231
- const random = mockOptions.random ?? mockRandom_ts_1.nativeMockRandom;
232
- return injectInvalid(base, runType, mockOptions.invalidLeafProbability ?? 0.85, random);
233
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const runTypeKind_generated_ts_1 = require("../go-generated/runTypeKind.generated.js");
4
- const mockRegistry_ts_1 = require("./mockRegistry.js");
5
- const mockRandom_ts_1 = require("./mockRandom.js");
6
- const isMultipleOf_ts_1 = require("./isMultipleOf.js");
7
- const mockNumberFormat = (annotation, random = mockRandom_ts_1.nativeMockRandom) => {
8
- if (annotation.name !== 'numberFormat')
9
- return undefined;
10
- return mockNumberParams((annotation.params ?? {}), random);
11
- };
12
- (0, mockRegistry_ts_1.registerMockingFunction)(runTypeKind_generated_ts_1.RunTypeKind.number, mockNumberFormat);
13
- function mockNumberParams(params, random) {
14
- let min = params.min !== undefined ? numVal(params.min) : -99999;
15
- let max = params.max !== undefined ? numVal(params.max) : 99999;
16
- if (params.gt !== undefined) {
17
- const epsilon = params.float ? 0.01 : 1;
18
- min = Math.max(min, numVal(params.gt) + epsilon);
19
- }
20
- if (params.lt !== undefined) {
21
- const epsilon = params.float ? 0.01 : 1;
22
- max = Math.min(max, numVal(params.lt) - epsilon);
23
- }
24
- let result;
25
- if (params.integer) {
26
- min = Math.ceil(min);
27
- max = Math.floor(max);
28
- result = random.int(min, max);
29
- }
30
- else {
31
- result = min + random.float() * (max - min);
32
- }
33
- if (params.multipleOf !== undefined) {
34
- const tolerance = params.multipleOfTolerance !== undefined ? numVal(params.multipleOfTolerance) : undefined;
35
- result = snapToMultiple(result, numVal(params.multipleOf), tolerance);
36
- }
37
- return result;
38
- }
39
- function snapToMultiple(value, multipleOf, tolerance) {
40
- const quotient = Math.floor(value / multipleOf);
41
- if (Number.isInteger(multipleOf))
42
- return quotient * multipleOf;
43
- for (let step = 0; step < 4; step++) {
44
- const candidate = Number(((quotient - step) * multipleOf).toPrecision(15));
45
- if ((0, isMultipleOf_ts_1.isMultipleOf)(candidate, multipleOf, tolerance))
46
- return candidate;
47
- }
48
- return 0;
49
- }
50
- function numVal(value) {
51
- if (typeof value === 'number')
52
- return value;
53
- if (value !== null && typeof value === 'object' && 'val' in value)
54
- return numVal(value.val);
55
- return Number(value);
56
- }
@@ -1,20 +0,0 @@
1
- export declare function mulberry32(state: number): () => number;
2
- export declare class MockRandom {
3
- private readonly next;
4
- constructor(seed?: number);
5
- float(): number;
6
- int(min?: number, max?: number): number;
7
- pick<T>(list: T[]): T;
8
- boolean(): boolean;
9
- bigint(min?: number, max?: number): bigint;
10
- number(min?: number, max?: number): number;
11
- string(length?: number, allowedChars?: string, disallowedChars?: string): string;
12
- symbol(name?: string, length?: number, charsSet?: string): symbol;
13
- regExp(list?: RegExp[]): RegExp;
14
- date(minDate?: Date | number, maxDate?: Date | number): Date;
15
- any(anyList?: unknown[]): unknown;
16
- now(): number;
17
- uuidV4(): string;
18
- uuidV7(): string;
19
- }
20
- export declare const nativeMockRandom: MockRandom;