@mionjs/run-types 0.13.2 → 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,141 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.classSerializerEpoch = classSerializerEpoch;
4
- exports.registerClassSerializer = registerClassSerializer;
5
- exports.getClassSerializer = getClassSerializer;
6
- exports.isClassSerializerRegistered = isClassSerializerRegistered;
7
- exports.deserializeClass = deserializeClass;
8
- exports.unregisterClassSerializer = unregisterClassSerializer;
9
- exports.clearClassSerializers = clearClassSerializers;
10
- const entryTuple_ts_1 = require("./entryTuple.js");
11
- const rtUtils_ts_1 = require("./rtUtils.js");
12
- const classSerializers = new Map();
13
- const classSerializersByName = new Map();
14
- const classStates = new Map();
15
- const warnedAmbiguousNames = new Set();
16
- let epoch = 0;
17
- function classSerializerEpoch() {
18
- return epoch;
19
- }
20
- function classSerializerIdentity(id, cls) {
21
- if ((0, entryTuple_ts_1.isEntryTuple)(id)) {
22
- (0, entryTuple_ts_1.initFromTuple)(id);
23
- const key = (0, entryTuple_ts_1.entryTupleKey)(id);
24
- const separator = key.indexOf('_');
25
- if (separator === entryTuple_ts_1.FN_HASH_LEN)
26
- return { typeId: key.slice(entryTuple_ts_1.FN_HASH_LEN + 1), entryKey: key };
27
- return { typeId: key };
28
- }
29
- if (typeof id === 'string' && id.length > 0)
30
- return { typeId: id };
31
- throw new Error(`[mion] registerClassSerializer(${cls.name || '<anonymous>'}): no type id injected. ` +
32
- `The @mionjs/devtools plugin must process the registration file so the class's ` +
33
- `type id can be injected (the registry is keyed by type id + class name).`);
34
- }
35
- function classSerializerName(identity, cls) {
36
- if (identity.entryKey !== undefined) {
37
- const typeName = (0, rtUtils_ts_1.getRTFnCaches)().rtFnsCache[identity.entryKey]?.typeName;
38
- if (typeof typeName === 'string' && typeName.length > 0)
39
- return typeName;
40
- }
41
- const node = (0, rtUtils_ts_1.getRTUtils)().getRunType(identity.typeId);
42
- const typeName = node?.typeName;
43
- if (typeof typeName === 'string' && typeName.length > 0)
44
- return typeName;
45
- return cls.name || undefined;
46
- }
47
- function indexByName(name, entry) {
48
- let entries = classSerializersByName.get(name);
49
- if (!entries) {
50
- entries = new Set();
51
- classSerializersByName.set(name, entries);
52
- }
53
- entries.add(entry);
54
- if (entries.size > 1 && !warnedAmbiguousNames.has(name)) {
55
- warnedAmbiguousNames.add(name);
56
- console.warn(`[mion] registerClassSerializer: ${entries.size} different classes named "${name}" are registered. ` +
57
- `The class-name fallback is disabled for "${name}" — only exact-instantiation matches will use the registry ` +
58
- `(other generic instantiations of these classes fall back to structural decode).`);
59
- }
60
- }
61
- function registerClassSerializer(cls, handler, id) {
62
- if (typeof cls !== 'function')
63
- throw new Error('registerClassSerializer: cls must be a class constructor');
64
- const identity = classSerializerIdentity(id, cls);
65
- let state = classStates.get(cls);
66
- if (!state) {
67
- state = { entry: { cls }, keys: new Set() };
68
- classStates.set(cls, state);
69
- }
70
- state.entry.serialize = handler?.serialize;
71
- state.entry.deserialize = handler?.deserialize;
72
- state.keys.add(identity.typeId);
73
- classSerializers.set(identity.typeId, state.entry);
74
- const name = classSerializerName(identity, cls);
75
- if (name && state.name === undefined) {
76
- state.name = name;
77
- indexByName(name, state.entry);
78
- }
79
- epoch++;
80
- }
81
- function getClassSerializer(typeId, className) {
82
- const exact = classSerializers.get(typeId);
83
- if (exact)
84
- return exact;
85
- if (!className)
86
- return undefined;
87
- const entries = classSerializersByName.get(className);
88
- if (!entries || entries.size !== 1)
89
- return undefined;
90
- return entries.values().next().value;
91
- }
92
- function isClassSerializerRegistered(cls) {
93
- return classStates.has(cls);
94
- }
95
- function deserializeClass(entry, data, keys) {
96
- if (entry.deserialize)
97
- return entry.deserialize(data);
98
- let instance;
99
- try {
100
- instance = new entry.cls();
101
- }
102
- catch (err) {
103
- const original = err instanceof Error ? err.message : String(err);
104
- const name = entry.cls.name || '<anonymous>';
105
- throw new Error(`[data-class-constructor-failed] Cannot reconstruct class "${name}": the automatic \`new ${name}()\` failed, ` +
106
- `so its constructor needs arguments. Register a \`deserialize\` handler: ` +
107
- `registerClassSerializer(${name}, {deserialize: (data) => new ${name}(/* … */)}). ` +
108
- `Original error: ${original}`);
109
- }
110
- const source = data;
111
- const target = instance;
112
- for (let i = 0; i < keys.length; i++) {
113
- const key = keys[i];
114
- const value = source[key];
115
- if (value !== undefined)
116
- target[key] = value;
117
- }
118
- return instance;
119
- }
120
- function unregisterClassSerializer(cls) {
121
- const state = classStates.get(cls);
122
- if (!state)
123
- return;
124
- for (const key of state.keys)
125
- classSerializers.delete(key);
126
- if (state.name !== undefined) {
127
- const entries = classSerializersByName.get(state.name);
128
- entries?.delete(state.entry);
129
- if (entries && entries.size === 0)
130
- classSerializersByName.delete(state.name);
131
- }
132
- classStates.delete(cls);
133
- epoch++;
134
- }
135
- function clearClassSerializers() {
136
- classSerializers.clear();
137
- classSerializersByName.clear();
138
- classStates.clear();
139
- warnedAmbiguousNames.clear();
140
- epoch++;
141
- }
@@ -1,29 +0,0 @@
1
- import type { __rtFormatName, __rtContains, __rtPatternProps, __rtPropNames } from './sentinelKeys.ts';
2
- type DataOnlyUrl = typeof globalThis extends {
3
- URL: {
4
- prototype: infer I;
5
- };
6
- } ? I : never;
7
- export interface DataOnlyNativeExtra {
8
- url: DataOnlyUrl;
9
- }
10
- type DataOnlyNative = Date | DataOnlyNativeExtra[keyof DataOnlyNativeExtra];
11
- type DataOnlyStripped = symbol | RegExp | ((...args: never[]) => unknown) | (abstract new (...args: never[]) => unknown) | {
12
- then: (...args: never[]) => unknown;
13
- } | ArrayBuffer | SharedArrayBuffer | ArrayBufferView;
14
- type _DataOnlyDepth = [never, 0, 1, 2, 3, 4, 5, 6, 7, 8];
15
- export type DataOnly<T, Depth extends number = 8> = Depth extends 0 ? T : unknown extends T ? T : T extends DataOnlyStripped ? never : T extends string | number | boolean | bigint | null | undefined | DataOnlyNative ? T : DataOnlySentinelKept<T> extends true ? T : DataOnlyLadder<T, Depth>;
16
- type DataOnlySentinelKeys = typeof __rtFormatName | typeof __rtContains | typeof __rtPatternProps | typeof __rtPropNames;
17
- type DataOnlySentinelKept<T> = Extract<keyof T, DataOnlySentinelKeys> extends never ? (string extends keyof T ? DataOnlyRecordSentinelKept<T> : false) : true;
18
- type DataOnlySentinelProbe<X, Shape> = [X] extends [never] ? false : X extends Shape ? true : false;
19
- type DataOnlyProperStringLiteral<X> = [X] extends [never] ? false : string extends X ? false : X extends string ? true : false;
20
- type DataOnlyRecordSentinelKept<T> = true extends DataOnlyProperStringLiteral<NonNullable<T[typeof __rtFormatName & keyof T]>> | DataOnlySentinelProbe<NonNullable<T[typeof __rtPatternProps & keyof T]>, Record<string, {
21
- rt$value: unknown;
22
- }>> | DataOnlySentinelProbe<NonNullable<T[typeof __rtPropNames & keyof T]>, string> ? true : false;
23
- type DataOnlyLadder<T, Depth extends number> = T extends ReadonlyMap<any, any> ? T extends ReadonlyMap<infer K, infer V> ? T extends Map<any, any> ? Map<DataOnly<K, _DataOnlyDepth[Depth]>, DataOnly<V, _DataOnlyDepth[Depth]>> : ReadonlyMap<DataOnly<K, _DataOnlyDepth[Depth]>, DataOnly<V, _DataOnlyDepth[Depth]>> : never : T extends ReadonlySet<any> ? T extends ReadonlySet<infer U> ? T extends Set<any> ? Set<DataOnly<U, _DataOnlyDepth[Depth]>> : ReadonlySet<DataOnly<U, _DataOnlyDepth[Depth]>> : never : T extends readonly unknown[] ? {
24
- -readonly [K in keyof T]: DataOnly<T[K], _DataOnlyDepth[Depth]>;
25
- } : T extends object ? [keyof T] extends [never] ? T : {
26
- [K in keyof T as K extends symbol | '__proto__' ? never : [DataOnly<T[K], _DataOnlyDepth[Depth]>] extends [undefined] ? [DataOnly<T[K], _DataOnlyDepth[Depth]>] extends [never] ? never : DataOnlyOptionalStripped<T, K> extends true ? never : K : K]: DataOnly<T[K], _DataOnlyDepth[Depth]>;
27
- } : T;
28
- type DataOnlyOptionalStripped<T, K extends keyof T> = [T[K]] extends [undefined] ? false : {} extends Record<K, never> ? false : {} extends Pick<T, K> ? true : false;
29
- export {};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,101 +0,0 @@
1
- import type { RTUtils } from './rtUtils.ts';
2
- import type { AnyFn, CompiledFnArgs, CompiledFnData, CompiledPureFunction, CompiledTypeFn, RunType } from './types.ts';
3
- declare const KIND_RUN_TYPE = 0;
4
- declare const KIND_PURE_FN = 2;
5
- declare const KIND_MISSING = 3;
6
- declare const KIND_RUN_TYPE_BUNDLE = 4;
7
- declare const KIND_RUN_TYPE_FACADE = 5;
8
- export declare const FN_HASH_LEN = 4;
9
- export type EntryDepsThunk = () => readonly EntryTuple[];
10
- export type RunTypeIni = (rtu: RTUtils) => void;
11
- declare const RUN_TYPE_FIELD_KEYS: readonly ["id", "kind", "subKind", "typeName", "name", "literal", "optional", "readonly", "isAbstract", "isStatic", "visibility", "isSafeName", "position", "isCircular", "flags", "description", "defaultVal", "enumVal", "values", "notSupported", "nonEnumerable", "jsonMaxBytes"];
12
- export type RunTypeRowRecord = Pick<RunType, (typeof RUN_TYPE_FIELD_KEYS)[number]>;
13
- type RunTypeRel = number | string | object;
14
- export type RunTypeRelRow = readonly (RunTypeRel | readonly RunTypeRel[] | undefined)[];
15
- export interface RunTypeRecord extends RunTypeRowRecord {
16
- entryKind: typeof KIND_RUN_TYPE;
17
- deps: EntryDepsThunk | undefined;
18
- ini: RunTypeIni | undefined;
19
- }
20
- export interface RunTypeBundleRecord {
21
- entryKind: typeof KIND_RUN_TYPE_BUNDLE;
22
- deps: EntryDepsThunk | undefined;
23
- ini: RunTypeIni | undefined;
24
- key: string;
25
- rows: readonly RunTypeRow[];
26
- rels: readonly (RunTypeRelRow | undefined)[];
27
- }
28
- export interface RunTypeFacadeRecord {
29
- entryKind: typeof KIND_RUN_TYPE_FACADE;
30
- deps: EntryDepsThunk | undefined;
31
- ini: undefined;
32
- key: string;
33
- }
34
- export interface FnTypeRecord extends Pick<CompiledTypeFn, 'rtFnHash' | 'typeName' | 'isNoop' | 'rtDependencies' | 'pureFnDependencies' | 'createRTFn' | 'alwaysThrowMessage'> {
35
- familyTag: string;
36
- deps: EntryDepsThunk | undefined;
37
- ini: undefined;
38
- code: CompiledFnData['code'] | undefined;
39
- }
40
- export interface PureFnRecord extends Pick<CompiledPureFunction, 'paramNames' | 'code' | 'pureFnDependencies' | 'createPureFn'> {
41
- entryKind: typeof KIND_PURE_FN;
42
- deps: EntryDepsThunk | undefined;
43
- ini: undefined;
44
- key: string;
45
- }
46
- export interface MissingRecord {
47
- entryKind: typeof KIND_MISSING;
48
- deps: undefined;
49
- ini: undefined;
50
- key: string;
51
- }
52
- type TupleFrom<R, K extends readonly (keyof R)[]> = {
53
- [I in keyof K]: R[K[I]];
54
- };
55
- declare const ENTRY_HEAD_KEYS: readonly ["entryKind", "deps", "ini"];
56
- type RunTypeRowRequiredKeys = readonly ['id', 'kind'];
57
- type RunTypeRowTrimmedKeys = typeof RUN_TYPE_FIELD_KEYS extends readonly [unknown, unknown, ...infer Rest] ? Rest : never;
58
- export declare const RUN_TYPE_TUPLE_KEYS: readonly ["entryKind", "deps", "ini", "id", "kind", "subKind", "typeName", "name", "literal", "optional", "readonly", "isAbstract", "isStatic", "visibility", "isSafeName", "position", "isCircular", "flags", "description", "defaultVal", "enumVal", "values", "notSupported", "nonEnumerable", "jsonMaxBytes"];
59
- export declare const RUN_TYPE_BUNDLE_TUPLE_KEYS: readonly ["entryKind", "deps", "ini", "key", "rows", "rels"];
60
- export declare const RUN_TYPE_FACADE_TUPLE_KEYS: readonly ["entryKind", "deps", "ini", "key"];
61
- declare const FN_TYPE_REQUIRED_KEYS: readonly ["familyTag", "deps", "ini", "rtFnHash", "typeName"];
62
- declare const FN_TYPE_TRIMMED_KEYS: readonly ["code", "isNoop", "rtDependencies", "pureFnDependencies", "createRTFn", "alwaysThrowMessage"];
63
- export declare const FN_TYPE_TUPLE_KEYS: readonly ["familyTag", "deps", "ini", "rtFnHash", "typeName", "code", "isNoop", "rtDependencies", "pureFnDependencies", "createRTFn", "alwaysThrowMessage"];
64
- declare const PURE_FN_REQUIRED_KEYS: readonly ["entryKind", "deps", "ini", "key", "paramNames", "code", "pureFnDependencies"];
65
- declare const PURE_FN_TRIMMED_KEYS: readonly ["createPureFn"];
66
- export declare const PURE_FN_TUPLE_KEYS: readonly ["entryKind", "deps", "ini", "key", "paramNames", "code", "pureFnDependencies", "createPureFn"];
67
- declare const MISSING_TUPLE_KEYS: readonly ["entryKind", "deps", "ini", "key"];
68
- export type RunTypeRow = readonly [
69
- ...TupleFrom<RunTypeRowRecord, RunTypeRowRequiredKeys>,
70
- ...Partial<TupleFrom<RunTypeRowRecord, RunTypeRowTrimmedKeys>>
71
- ];
72
- export type RunTypeTuple = readonly [
73
- ...TupleFrom<RunTypeRecord, readonly [...typeof ENTRY_HEAD_KEYS, ...RunTypeRowRequiredKeys]>,
74
- ...Partial<TupleFrom<RunTypeRecord, RunTypeRowTrimmedKeys>>
75
- ];
76
- export type RunTypeBundleTuple = readonly [...TupleFrom<RunTypeBundleRecord, typeof RUN_TYPE_BUNDLE_TUPLE_KEYS>];
77
- export type RunTypeFacadeTuple = readonly [...TupleFrom<RunTypeFacadeRecord, typeof RUN_TYPE_FACADE_TUPLE_KEYS>];
78
- export type FnTypeTuple = readonly [
79
- ...TupleFrom<FnTypeRecord, typeof FN_TYPE_REQUIRED_KEYS>,
80
- ...Partial<TupleFrom<FnTypeRecord, typeof FN_TYPE_TRIMMED_KEYS>>
81
- ];
82
- export type PureFnTuple = readonly [
83
- ...TupleFrom<PureFnRecord, typeof PURE_FN_REQUIRED_KEYS>,
84
- ...Partial<TupleFrom<PureFnRecord, typeof PURE_FN_TRIMMED_KEYS>>
85
- ];
86
- export type MissingTuple = readonly [...TupleFrom<MissingRecord, typeof MISSING_TUPLE_KEYS>];
87
- export type EntryTuple = RunTypeTuple | RunTypeBundleTuple | RunTypeFacadeTuple | FnTypeTuple | PureFnTuple | MissingTuple;
88
- export declare function isEntryTuple(value: unknown): value is EntryTuple;
89
- export declare function entryTupleKey(tuple: EntryTuple): string;
90
- export declare function isMissingTuple(value: unknown): boolean;
91
- interface FamilyMeta {
92
- fnID: string;
93
- args: () => CompiledFnArgs;
94
- defaultParamValues: () => CompiledFnArgs;
95
- noop: AnyFn;
96
- }
97
- export declare const familyMeta: Record<string, FamilyMeta>;
98
- export declare function initFromTuple(root: EntryTuple): void;
99
- export declare function entryTupleAt(injected: unknown, index: number): EntryTuple | undefined;
100
- export declare function resolveEntryTupleFn<F extends AnyFn>(fnName: string, identityFn: F, runTypeId: string | undefined, injected: unknown): F;
101
- export {};
@@ -1,395 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.familyMeta = exports.PURE_FN_TUPLE_KEYS = exports.FN_TYPE_TUPLE_KEYS = exports.RUN_TYPE_FACADE_TUPLE_KEYS = exports.RUN_TYPE_BUNDLE_TUPLE_KEYS = exports.RUN_TYPE_TUPLE_KEYS = exports.FN_HASH_LEN = void 0;
4
- exports.isEntryTuple = isEntryTuple;
5
- exports.entryTupleKey = entryTupleKey;
6
- exports.isMissingTuple = isMissingTuple;
7
- exports.initFromTuple = initFromTuple;
8
- exports.entryTupleAt = entryTupleAt;
9
- exports.resolveEntryTupleFn = resolveEntryTupleFn;
10
- const rtUtils_ts_1 = require("./rtUtils.js");
11
- const KIND_RUN_TYPE = 0;
12
- const KIND_PURE_FN = 2;
13
- const KIND_MISSING = 3;
14
- const KIND_RUN_TYPE_BUNDLE = 4;
15
- const KIND_RUN_TYPE_FACADE = 5;
16
- exports.FN_HASH_LEN = 4;
17
- const RUN_TYPE_FIELD_KEYS = [
18
- 'id',
19
- 'kind',
20
- 'subKind',
21
- 'typeName',
22
- 'name',
23
- 'literal',
24
- 'optional',
25
- 'readonly',
26
- 'isAbstract',
27
- 'isStatic',
28
- 'visibility',
29
- 'isSafeName',
30
- 'position',
31
- 'isCircular',
32
- 'flags',
33
- 'description',
34
- 'defaultVal',
35
- 'enumVal',
36
- 'values',
37
- 'notSupported',
38
- 'nonEnumerable',
39
- 'jsonMaxBytes',
40
- ];
41
- const RUN_TYPE_REL_KEYS = [
42
- 'child',
43
- 'children',
44
- 'index',
45
- 'return',
46
- 'indexType',
47
- 'parameters',
48
- 'safeUnionChildren',
49
- 'unionDiscriminators',
50
- 'typeMeta',
51
- 'typeArguments',
52
- 'arguments',
53
- 'extendsArguments',
54
- 'implements',
55
- 'extends',
56
- ];
57
- const RUN_TYPE_REL_IS_ARRAY = [
58
- false,
59
- true,
60
- false,
61
- false,
62
- false,
63
- true,
64
- true,
65
- true,
66
- true,
67
- true,
68
- true,
69
- true,
70
- true,
71
- true,
72
- ];
73
- const ENTRY_HEAD_KEYS = ['entryKind', 'deps', 'ini'];
74
- exports.RUN_TYPE_TUPLE_KEYS = [...ENTRY_HEAD_KEYS, ...RUN_TYPE_FIELD_KEYS];
75
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS = [...ENTRY_HEAD_KEYS, 'key', 'rows', 'rels'];
76
- exports.RUN_TYPE_FACADE_TUPLE_KEYS = [...ENTRY_HEAD_KEYS, 'key'];
77
- const FN_TYPE_REQUIRED_KEYS = ['familyTag', 'deps', 'ini', 'rtFnHash', 'typeName'];
78
- const FN_TYPE_TRIMMED_KEYS = [
79
- 'code',
80
- 'isNoop',
81
- 'rtDependencies',
82
- 'pureFnDependencies',
83
- 'createRTFn',
84
- 'alwaysThrowMessage',
85
- ];
86
- exports.FN_TYPE_TUPLE_KEYS = [...FN_TYPE_REQUIRED_KEYS, ...FN_TYPE_TRIMMED_KEYS];
87
- const PURE_FN_REQUIRED_KEYS = [...ENTRY_HEAD_KEYS, 'key', 'paramNames', 'code', 'pureFnDependencies'];
88
- const PURE_FN_TRIMMED_KEYS = ['createPureFn'];
89
- exports.PURE_FN_TUPLE_KEYS = [...PURE_FN_REQUIRED_KEYS, ...PURE_FN_TRIMMED_KEYS];
90
- const MISSING_TUPLE_KEYS = [...ENTRY_HEAD_KEYS, 'key'];
91
- const SLOT_KIND = 0;
92
- const SLOT_DEPS = 1;
93
- const SLOT_KEY = 3;
94
- const SLOT_ROWS = 4;
95
- const SLOT_RELS = 5;
96
- const _pinBundleRels = exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[SLOT_RELS];
97
- void _pinBundleRels;
98
- const _pinBundleHead = [
99
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[SLOT_KIND],
100
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[SLOT_DEPS],
101
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[2],
102
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[SLOT_KEY],
103
- exports.RUN_TYPE_BUNDLE_TUPLE_KEYS[SLOT_ROWS],
104
- ];
105
- const _pinFacadeHead = [
106
- exports.RUN_TYPE_FACADE_TUPLE_KEYS[SLOT_KIND],
107
- exports.RUN_TYPE_FACADE_TUPLE_KEYS[SLOT_DEPS],
108
- exports.RUN_TYPE_FACADE_TUPLE_KEYS[2],
109
- exports.RUN_TYPE_FACADE_TUPLE_KEYS[SLOT_KEY],
110
- ];
111
- const _pinFnTypeHead = [
112
- exports.FN_TYPE_TUPLE_KEYS[SLOT_KIND],
113
- exports.FN_TYPE_TUPLE_KEYS[SLOT_DEPS],
114
- exports.FN_TYPE_TUPLE_KEYS[2],
115
- exports.FN_TYPE_TUPLE_KEYS[SLOT_KEY],
116
- ];
117
- const _pinPureFnHead = [
118
- exports.PURE_FN_TUPLE_KEYS[SLOT_KIND],
119
- exports.PURE_FN_TUPLE_KEYS[SLOT_DEPS],
120
- exports.PURE_FN_TUPLE_KEYS[2],
121
- exports.PURE_FN_TUPLE_KEYS[SLOT_KEY],
122
- ];
123
- const _pinMissingHead = [
124
- MISSING_TUPLE_KEYS[SLOT_KIND],
125
- MISSING_TUPLE_KEYS[SLOT_DEPS],
126
- MISSING_TUPLE_KEYS[2],
127
- MISSING_TUPLE_KEYS[SLOT_KEY],
128
- ];
129
- void _pinBundleHead;
130
- void _pinFacadeHead;
131
- void _pinFnTypeHead;
132
- void _pinPureFnHead;
133
- void _pinMissingHead;
134
- function tupleToRecord(keys, tuple) {
135
- const record = {};
136
- for (let index = 0; index < keys.length; index++) {
137
- record[keys[index]] = tuple[index];
138
- }
139
- return record;
140
- }
141
- function isEntryTuple(value) {
142
- if (isMissingTuple(value))
143
- return true;
144
- if (!Array.isArray(value) || value.length <= SLOT_KEY)
145
- return false;
146
- const deps = value[SLOT_DEPS];
147
- return (typeof deps === 'function' || deps === undefined) && typeof value[SLOT_KEY] === 'string';
148
- }
149
- function entryTupleKey(tuple) {
150
- return tuple[SLOT_KEY];
151
- }
152
- function isMissingTuple(value) {
153
- return Array.isArray(value) && value[SLOT_KIND] === KIND_MISSING;
154
- }
155
- const noopTrue = () => true;
156
- const noopIdentity = (v) => v;
157
- const noopErrors = (_v, _pth, er) => er || [];
158
- const noopStringify = (v) => JSON.stringify(v);
159
- const noopParse = (s) => JSON.parse(s);
160
- const valueArgs = () => ({ vλl: 'v' });
161
- const valueDefaults = () => ({ vλl: '' });
162
- const errorArgs = () => ({ vλl: 'v', pλth: 'pth', εrr: 'er' });
163
- const errorDefaults = () => ({ vλl: '', pλth: '[]', εrr: '[]' });
164
- const valueShaped = (fnID, noop) => ({ fnID, args: valueArgs, defaultParamValues: valueDefaults, noop });
165
- const errorShaped = (fnID) => ({ fnID, args: errorArgs, defaultParamValues: errorDefaults, noop: noopErrors });
166
- exports.familyMeta = {
167
- val: valueShaped('val', noopTrue),
168
- verr: errorShaped('verr'),
169
- vst: valueShaped('vst', noopTrue),
170
- vest: errorShaped('vest'),
171
- vuk: valueShaped('vuk', noopTrue),
172
- veuk: errorShaped('veuk'),
173
- pj: valueShaped('pj', noopIdentity),
174
- rj: valueShaped('rj', noopIdentity),
175
- pjs: valueShaped('pjs', noopIdentity),
176
- cj: valueShaped('cj', noopIdentity),
177
- cjr: valueShaped('cjr', noopIdentity),
178
- rjs: valueShaped('rjs', noopIdentity),
179
- ruk: valueShaped('ruk', noopIdentity),
180
- ruks: valueShaped('ruks', noopIdentity),
181
- rukr: valueShaped('rukr', noopIdentity),
182
- csr: valueShaped('csr', noopIdentity),
183
- fmt: valueShaped('fmt', noopIdentity),
184
- jsc: valueShaped('jsc', () => ({})),
185
- jeCL: valueShaped('pj', noopStringify),
186
- jeMU: valueShaped('pj', noopStringify),
187
- jeCO: valueShaped('pj', noopStringify),
188
- jdCL: valueShaped('rj', noopParse),
189
- jdMU: valueShaped('rj', noopParse),
190
- jdCO: valueShaped('rj', noopParse),
191
- };
192
- const processedKeys = new Set();
193
- function initFromTuple(root) {
194
- if (isMissingTuple(root))
195
- return;
196
- if (!isEntryTuple(root))
197
- return;
198
- const utils = (0, rtUtils_ts_1.getRTUtils)();
199
- const fresh = [];
200
- collectClosure(root, utils, fresh, new Set());
201
- for (const tuple of fresh) {
202
- if (tuple[SLOT_KIND] === KIND_RUN_TYPE_BUNDLE)
203
- wireBundleRelations(utils, tuple);
204
- const ini = tuple[2];
205
- if (typeof ini === 'function')
206
- ini(utils);
207
- }
208
- }
209
- function wireBundleRelations(utils, tuple) {
210
- const rows = (tuple[SLOT_ROWS] ?? []);
211
- const rels = (tuple[SLOT_RELS] ?? []);
212
- const added = addedRows.get(tuple);
213
- if (rels.length === 0 || !added)
214
- return;
215
- const byIndex = rows.map((row) => utils.getRunType(row[0]));
216
- const resolve = (rel) => typeof rel === 'number' ? byIndex[rel] : typeof rel === 'string' ? utils.getRunType(rel) : rel;
217
- for (const i of added) {
218
- const relRow = rels[i];
219
- if (!relRow)
220
- continue;
221
- const runType = byIndex[i];
222
- if (!runType)
223
- continue;
224
- const target = runType;
225
- for (let slot = 0; slot < RUN_TYPE_REL_KEYS.length; slot++) {
226
- const value = relRow[slot];
227
- if (value === undefined)
228
- continue;
229
- target[RUN_TYPE_REL_KEYS[slot]] = RUN_TYPE_REL_IS_ARRAY[slot] ? value.map(resolve) : resolve(value);
230
- }
231
- }
232
- }
233
- function collectClosure(tuple, utils, fresh, visiting) {
234
- if (!isEntryTuple(tuple) || isMissingTuple(tuple))
235
- return;
236
- const key = entryTupleKey(tuple);
237
- if (visiting.has(key))
238
- return;
239
- visiting.add(key);
240
- if (processedKeys.has(key) && isStillRegistered(utils, tuple))
241
- return;
242
- processedKeys.add(key);
243
- const deps = tuple[SLOT_DEPS];
244
- if (deps)
245
- for (const dep of deps())
246
- collectClosure(dep, utils, fresh, visiting);
247
- if (registerTuple(utils, tuple))
248
- fresh.push(tuple);
249
- }
250
- function isStillRegistered(utils, tuple) {
251
- const slot0 = tuple[SLOT_KIND];
252
- const key = entryTupleKey(tuple);
253
- if (typeof slot0 === 'string')
254
- return utils.hasRTFn(key);
255
- if (slot0 === KIND_RUN_TYPE)
256
- return utils.hasRunType(key);
257
- if (slot0 === KIND_PURE_FN)
258
- return utils.hasPureFnByKey(key);
259
- if (slot0 === KIND_RUN_TYPE_BUNDLE) {
260
- const rows = (tuple[SLOT_ROWS] ?? []);
261
- return rows.length === 0 || utils.hasRunType(rows[0][0]);
262
- }
263
- return true;
264
- }
265
- function registerTuple(utils, tuple) {
266
- const slot0 = tuple[SLOT_KIND];
267
- if (typeof slot0 === 'string')
268
- return registerTypeFnTuple(utils, tuple);
269
- if (slot0 === KIND_RUN_TYPE_BUNDLE)
270
- return registerRunTypeBundle(utils, tuple);
271
- if (slot0 === KIND_RUN_TYPE)
272
- return registerRunTypeTuple(utils, tuple);
273
- if (slot0 === KIND_PURE_FN)
274
- return registerPureFnTuple(utils, tuple);
275
- if (slot0 === KIND_RUN_TYPE_FACADE)
276
- return false;
277
- return false;
278
- }
279
- function runTypeEntryFromRecord(record) {
280
- return {
281
- ...record,
282
- child: undefined,
283
- index: undefined,
284
- return: undefined,
285
- indexType: undefined,
286
- parameters: undefined,
287
- children: undefined,
288
- safeUnionChildren: undefined,
289
- unionDiscriminators: undefined,
290
- typeMeta: undefined,
291
- typeArguments: undefined,
292
- arguments: undefined,
293
- extendsArguments: undefined,
294
- implements: undefined,
295
- extends: undefined,
296
- classType: undefined,
297
- };
298
- }
299
- function registerRunTypeTuple(utils, tuple) {
300
- const record = tupleToRecord(exports.RUN_TYPE_TUPLE_KEYS, tuple);
301
- if (utils.hasRunType(record.id))
302
- return false;
303
- utils.addRunType(record.id, runTypeEntryFromRecord(record));
304
- return true;
305
- }
306
- const addedRows = new WeakMap();
307
- function registerRunTypeBundle(utils, tuple) {
308
- const rows = (tuple[SLOT_ROWS] ?? []);
309
- const added = [];
310
- rows.forEach((row, index) => {
311
- const record = tupleToRecord(RUN_TYPE_FIELD_KEYS, row);
312
- const existing = utils.getRunType(record.id);
313
- if (!existing) {
314
- utils.addRunType(record.id, runTypeEntryFromRecord(record));
315
- added.push(index);
316
- }
317
- else if (existing.jsonMaxBytes === undefined && record.jsonMaxBytes !== undefined) {
318
- existing.jsonMaxBytes = record.jsonMaxBytes;
319
- }
320
- });
321
- if (added.length)
322
- addedRows.set(tuple, added);
323
- return added.length > 0;
324
- }
325
- function registerTypeFnTuple(utils, tuple) {
326
- const record = tupleToRecord(exports.FN_TYPE_TUPLE_KEYS, tuple);
327
- if (utils.hasRTFn(record.rtFnHash))
328
- return false;
329
- const meta = exports.familyMeta[record.familyTag];
330
- if (!meta)
331
- return false;
332
- const isNoop = record.isNoop === true;
333
- const entry = {
334
- rtFnHash: record.rtFnHash,
335
- fnID: meta.fnID,
336
- familyTag: record.familyTag,
337
- typeName: record.typeName,
338
- args: meta.args(),
339
- defaultParamValues: meta.defaultParamValues(),
340
- code: record.code,
341
- isNoop,
342
- rtDependencies: record.rtDependencies,
343
- pureFnDependencies: record.pureFnDependencies,
344
- createRTFn: record.alwaysThrowMessage !== undefined
345
- ? utils.alwaysThrowFactory(record.alwaysThrowMessage)
346
- : record.createRTFn,
347
- fn: isNoop ? meta.noop : undefined,
348
- alwaysThrowMessage: record.alwaysThrowMessage,
349
- };
350
- utils.addToRTCache(entry);
351
- return true;
352
- }
353
- function registerPureFnTuple(utils, tuple) {
354
- const record = tupleToRecord(exports.PURE_FN_TUPLE_KEYS, tuple);
355
- if (utils.hasPureFnByKey(record.key))
356
- return false;
357
- const entry = {
358
- id: record.key,
359
- paramNames: record.paramNames,
360
- code: record.code,
361
- pureFnDependencies: record.pureFnDependencies,
362
- createPureFn: record.createPureFn,
363
- fn: undefined,
364
- };
365
- utils.addPureFn(record.key, entry);
366
- return true;
367
- }
368
- function entryTupleAt(injected, index) {
369
- const tuples = injected;
370
- return tuples ? tuples[index] : undefined;
371
- }
372
- function resolveEntryTupleFn(fnName, identityFn, runTypeId, injected) {
373
- const utils = (0, rtUtils_ts_1.getRTUtils)();
374
- if (isMissingTuple(injected))
375
- return identityFn;
376
- if (!isEntryTuple(injected)) {
377
- if (runTypeId === undefined) {
378
- throw new Error(`${fnName}(): no id injected. @mionjs/devtools must be active for ${fnName} to dispatch to a precompiled factory.`);
379
- }
380
- if (utils.knowsType(runTypeId))
381
- return identityFn;
382
- throw new Error(`${fnName}(): no RTCompiledFn entry for run-type id "${runTypeId}" in rtUtils.`);
383
- }
384
- initFromTuple(injected);
385
- let key = entryTupleKey(injected);
386
- if (runTypeId !== undefined)
387
- key = key.slice(0, exports.FN_HASH_LEN) + '_' + runTypeId;
388
- const typeId = key.slice(exports.FN_HASH_LEN + 1);
389
- const entry = utils.getRT(key);
390
- if (entry)
391
- return entry.fn;
392
- if (utils.knowsType(typeId))
393
- return identityFn;
394
- throw new Error(`${fnName}(): no RTCompiledFn entry for "${key}" in rtUtils. The build pipeline didn't emit a factory for that runtype.`);
395
- }
@@ -1,4 +0,0 @@
1
- export interface FormatAnnotation<Params extends object = Record<string, unknown>> {
2
- name: string;
3
- params?: Params;
4
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });