@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 +1 @@
1
- {"version":3,"file":"dateTime-pure-fns.js","sourceRoot":"","sources":["../../../src/formats/datetime/dateTime-pure-fns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dateTime-pure-fns.js","sourceRoot":"","sources":["../../../src/formats/datetime/dateTime-pure-fns.ts"],"names":[],"mappings":"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","sourcesContent":["// Registration module for the date / time pure fns the Go-side date/time/dateTime/nativeDate emitters\n// reach via `utl.getPureFn(<the id below>)`. The Go path constant `dateTimePureFnFilePath` in\n// internal/cachegen/typefunctions/formats/datetime/shared.go MUST match this file's location or the\n// pure-fn extractor won't ship these bodies. Importing this file from ../index.ts guarantees the\n// registrations run before any user code references a date/time/dateTime/Date format type.\n\nimport {registerPureFnFactory} from '../../runtypes/pureFn.ts';\nimport {\n isDateStringId,\n isDateString_YMDId,\n isDateString_DMYId,\n isDateString_MDYId,\n isDateString_YMId,\n isDateString_MDId,\n isDateString_DMId,\n isHoursId,\n isMinutesId,\n isSecondsId,\n isSecondsWithMsId,\n isSecondsWithLeapId,\n isTimeZoneId,\n isTimeString_ISOId,\n isTimeString_ISO_TZId,\n isTimeString_HHmmssId,\n isTimeString_HHmmId,\n isTimeString_mmssId,\n dateStrToMsId,\n timeStrToMsId,\n relativeNowKeyId,\n} from '../../runtypes/pure-fn-ids.generated.ts';\nimport type {RTUtils} from '../../runtypes/rtUtils.ts';\n\n// The shape the base isDateString resolves to, for the getPureFn lookups in the layout wrappers below.\ntype IsDateStringFn = (year: string | undefined, month: string, day?: string) => boolean;\ntype SegmentFn = (segment: string) => boolean;\n\n// ############### Date pure fns ###############\n//\n// isDateString is the base leap-year-aware validator; the six layout wrappers split on '-' and reach\n// it via utl.getPureFn, so the Go extractor records the transitive dep.\n\nexport const isDateString = registerPureFnFactory(function () {\n // -1 unless exactly `len` ASCII digits. Not `Number()`, which takes '0x1F', '1e03', '+1', ' 1' and '1.' too.\n function digitsVal(part: string, len: number): number {\n if (part.length !== len) return -1;\n let val = 0;\n for (let i = 0; i < len; i++) {\n const digit = part.charCodeAt(i) - 48;\n if (digit < 0 || digit > 9) return -1;\n val = val * 10 + digit;\n }\n return val;\n }\n return function _isDateString(year: string | undefined, month: string, day?: string): boolean {\n // `undefined` means the layout has no such part; an empty string is a missing one and fails.\n const yearNum = year === undefined ? -1 : digitsVal(year, 4);\n if (year !== undefined && yearNum < 0) return false;\n const monthNum = digitsVal(month, 2);\n if (monthNum < 1 || monthNum > 12) return false;\n if (day !== undefined) {\n const dayNum = digitsVal(day, 2);\n if (dayNum < 1 || dayNum > 31) return false;\n if (monthNum === 2) {\n if (dayNum > 29) return false;\n if (yearNum >= 0 && dayNum === 29 && !(yearNum % 4 === 0 && (yearNum % 100 !== 0 || yearNum % 400 === 0))) return false;\n } else if ((monthNum === 4 || monthNum === 6 || monthNum === 9 || monthNum === 11) && dayNum > 30) {\n return false;\n }\n }\n return true;\n };\n}, isDateStringId);\n\nexport const isDateString_YMD = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_ymd(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 3 && isDate(parts[0], parts[1], parts[2]);\n };\n}, isDateString_YMDId);\n\nexport const isDateString_DMY = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_dmy(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 3 && isDate(parts[2], parts[1], parts[0]);\n };\n}, isDateString_DMYId);\n\nexport const isDateString_MDY = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_mdy(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 3 && isDate(parts[2], parts[0], parts[1]);\n };\n}, isDateString_MDYId);\n\nexport const isDateString_YM = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_ym(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 2 && isDate(parts[0], parts[1]);\n };\n}, isDateString_YMId);\n\nexport const isDateString_MD = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_md(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 2 && isDate(undefined, parts[0], parts[1]);\n };\n}, isDateString_MDId);\n\nexport const isDateString_DM = registerPureFnFactory(function (utl: RTUtils) {\n const isDate = utl.getPureFn(isDateString) as IsDateStringFn;\n return function _is_dm(value: string): boolean {\n const parts = value.split('-');\n return parts.length === 2 && isDate(undefined, parts[1], parts[0]);\n };\n}, isDateString_DMId);\n\n// ############### Time pure fns ###############\n//\n// Every layout here is FIXED-SHAPE (two ASCII digits per segment, ':' between them), so the fns check\n// character codes at fixed positions instead of splitting and regex-testing per segment: the split\n// version measured 4-5x slower, all of it array allocation and per-segment regex + `Number()` calls.\n// charCode arithmetic keeps the same strictness those regexes bought, since a single digit ('8:3:6'),\n// whitespace and non-ASCII numerals all fail the 0-9 code range. Each factory redeclares its two-digit\n// helper, because the extractor lifts factory bodies alone.\n\n// A standalone segment is exactly TWO ASCII digits within the bound.\nexport const isHours = registerPureFnFactory(function () {\n return function _is_h(hours: string): boolean {\n if (hours.length !== 2) return false;\n const tens = hours.charCodeAt(0) - 48;\n const ones = hours.charCodeAt(1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= 23;\n };\n}, isHoursId);\n\nexport const isMinutes = registerPureFnFactory(function () {\n return function _is_m(mins: string): boolean {\n if (mins.length !== 2) return false;\n const tens = mins.charCodeAt(0) - 48;\n const ones = mins.charCodeAt(1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= 59;\n };\n}, isMinutesId);\n\nexport const isSeconds = registerPureFnFactory(function () {\n return function _is_s(secs: string): boolean {\n if (secs.length !== 2) return false;\n const tens = secs.charCodeAt(0) - 48;\n const ones = secs.charCodeAt(1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= 59;\n };\n}, isSecondsId);\n\n// Seconds with an optional MILLISECOND fraction, exactly three digits, because this backs the layouts\n// that name them (`HH:mm:ss.sss`). The RFC 3339 rule, where the fraction may be any length, lives in\n// isSecondsWithLeap below: deliberately different questions. Only `dd` and `dd.ddd` are accepted, so\n// the dot sits at index 2 or nowhere.\nexport const isSecondsWithMs = registerPureFnFactory(function () {\n function digitsRun(s: string, start: number, end: number): boolean {\n for (let i = start; i < end; i++) {\n const code = s.charCodeAt(i);\n if (code < 48 || code > 57) return false;\n }\n return true;\n }\n return function _is_s_ms(secsAndMs: string): boolean {\n const len = secsAndMs.length;\n if (len !== 2 && !(len === 6 && secsAndMs.charCodeAt(2) === 46)) return false;\n const tens = secsAndMs.charCodeAt(0) - 48;\n const ones = secsAndMs.charCodeAt(1) - 48;\n if (tens < 0 || tens > 9 || ones < 0 || ones > 9 || tens * 10 + ones > 59) return false;\n return len === 2 || digitsRun(secsAndMs, 3, 6);\n };\n}, isSecondsWithMsId);\n\n// The same, but tolerating second 60 and a fraction of ANY length: whether that leap second is REAL\n// depends on the offset, which only isTimeString_ISO_TZ knows, so this one just admits it.\nexport const isSecondsWithLeap = registerPureFnFactory(function () {\n return function _is_s_leap(secsAndMs: string): boolean {\n const len = secsAndMs.length;\n if (len < 2) return false;\n const tens = secsAndMs.charCodeAt(0) - 48;\n const ones = secsAndMs.charCodeAt(1) - 48;\n if (tens < 0 || tens > 9 || ones < 0 || ones > 9 || tens * 10 + ones > 60) return false;\n if (len === 2) return true;\n if (secsAndMs.charCodeAt(2) !== 46 || len === 3) return false;\n for (let i = 3; i < len; i++) {\n const code = secsAndMs.charCodeAt(i);\n if (code < 48 || code > 57) return false;\n }\n return true;\n };\n}, isSecondsWithLeapId);\n\nexport const isTimeZone = registerPureFnFactory(function (utl: RTUtils) {\n const isH = utl.getPureFn(isHours) as SegmentFn;\n const isM = utl.getPureFn(isMinutes) as SegmentFn;\n return function _is_tz(timeZone: string): boolean {\n if (timeZone === 'Z' || timeZone === 'z') return true;\n const parts = timeZone.split(':');\n return parts.length === 2 && isH(parts[0]) && isM(parts[1]);\n };\n}, isTimeZoneId);\n\n// `HH:mm:ss` or `HH:mm:ss.mmm` — length says which, the dot confirms it.\nexport const isTimeString_ISO = registerPureFnFactory(function () {\n function twoDigitsLE(s: string, at: number, max: number): boolean {\n const tens = s.charCodeAt(at) - 48;\n const ones = s.charCodeAt(at + 1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= max;\n }\n return function _is_iso(value: string): boolean {\n const len = value.length;\n if (len !== 8 && !(len === 12 && value.charCodeAt(8) === 46)) return false;\n if (value.charCodeAt(2) !== 58 || value.charCodeAt(5) !== 58) return false;\n if (!twoDigitsLE(value, 0, 23) || !twoDigitsLE(value, 3, 59) || !twoDigitsLE(value, 6, 59)) return false;\n for (let i = 9; i < len; i++) {\n const code = value.charCodeAt(i);\n if (code < 48 || code > 57) return false;\n }\n return true;\n };\n}, isTimeString_ISOId);\n\n// RFC 3339 full-time: HH:MM:SS[.frac] then `Z` or a ±HH:MM offset. The offset is parsed here rather\n// than delegated because of the leap second: a second of 60 is only real at 23:59:60 UTC, so\n// `23:59:60+01:00` (22:59 UTC) is invalid while `01:29:60+01:30` is the same instant as `23:59:60Z`\n// and valid, and that answer needs the local time and the offset together.\nexport const isTimeString_ISO_TZ = registerPureFnFactory(function () {\n const MINUTES_PER_DAY = 1440;\n // -1 when either character is not an ASCII digit, the value otherwise.\n function twoDigitsVal(s: string, at: number): number {\n const tens = s.charCodeAt(at) - 48;\n const ones = s.charCodeAt(at + 1) - 48;\n if (tens < 0 || tens > 9 || ones < 0 || ones > 9) return -1;\n return tens * 10 + ones;\n }\n return function _is_iso_tz(value: string): boolean {\n const len = value.length;\n if (len < 9) return false;\n let timeEnd: number;\n let offsetMinutes: number;\n const last = value.charCodeAt(len - 1);\n if (last === 90 || last === 122) {\n // 'Z' / 'z'\n timeEnd = len - 1;\n offsetMinutes = 0;\n } else {\n // An offset is always exactly `±HH:MM`, so its sign sits six from the end.\n const at = len - 6;\n if (at < 8) return false;\n const sign = value.charCodeAt(at);\n if (sign !== 43 && sign !== 45) return false;\n if (value.charCodeAt(at + 3) !== 58) return false;\n const offsetHours = twoDigitsVal(value, at + 1);\n const offsetMins = twoDigitsVal(value, at + 4);\n if (offsetHours < 0 || offsetHours > 23 || offsetMins < 0 || offsetMins > 59) return false;\n offsetMinutes = (offsetHours * 60 + offsetMins) * (sign === 45 ? -1 : 1);\n timeEnd = at;\n }\n // The time half: `HH:MM:SS` at 0-8, then an optional `.` + digit fraction.\n if (timeEnd < 8) return false;\n if (value.charCodeAt(2) !== 58 || value.charCodeAt(5) !== 58) return false;\n const hours = twoDigitsVal(value, 0);\n const mins = twoDigitsVal(value, 3);\n const secs = twoDigitsVal(value, 6);\n if (hours < 0 || hours > 23 || mins < 0 || mins > 59 || secs < 0 || secs > 60) return false;\n if (timeEnd > 8) {\n if (value.charCodeAt(8) !== 46 || timeEnd === 9) return false;\n for (let i = 9; i < timeEnd; i++) {\n const code = value.charCodeAt(i);\n if (code < 48 || code > 57) return false;\n }\n }\n if (secs !== 60) return true;\n const utcMinutes = (hours * 60 + mins - offsetMinutes + MINUTES_PER_DAY * 2) % MINUTES_PER_DAY;\n return utcMinutes === 23 * 60 + 59;\n };\n}, isTimeString_ISO_TZId);\n\nexport const isTimeString_HHmmss = registerPureFnFactory(function () {\n function twoDigitsLE(s: string, at: number, max: number): boolean {\n const tens = s.charCodeAt(at) - 48;\n const ones = s.charCodeAt(at + 1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= max;\n }\n return function _is_hhmmss(value: string): boolean {\n return (\n value.length === 8 &&\n value.charCodeAt(2) === 58 &&\n value.charCodeAt(5) === 58 &&\n twoDigitsLE(value, 0, 23) &&\n twoDigitsLE(value, 3, 59) &&\n twoDigitsLE(value, 6, 59)\n );\n };\n}, isTimeString_HHmmssId);\n\nexport const isTimeString_HHmm = registerPureFnFactory(function () {\n function twoDigitsLE(s: string, at: number, max: number): boolean {\n const tens = s.charCodeAt(at) - 48;\n const ones = s.charCodeAt(at + 1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= max;\n }\n return function _is_hhmm(value: string): boolean {\n return value.length === 5 && value.charCodeAt(2) === 58 && twoDigitsLE(value, 0, 23) && twoDigitsLE(value, 3, 59);\n };\n}, isTimeString_HHmmId);\n\nexport const isTimeString_mmss = registerPureFnFactory(function () {\n function twoDigitsLE(s: string, at: number, max: number): boolean {\n const tens = s.charCodeAt(at) - 48;\n const ones = s.charCodeAt(at + 1) - 48;\n return tens >= 0 && tens <= 9 && ones >= 0 && ones <= 9 && tens * 10 + ones <= max;\n }\n return function _is_mmss(value: string): boolean {\n return value.length === 5 && value.charCodeAt(2) === 58 && twoDigitsLE(value, 0, 59) && twoDigitsLE(value, 3, 59);\n };\n}, isTimeString_mmssId);\n\n// ############### Bound comparison pure fns ###############\n//\n// These convert a validated value (or a relative `now±P…` spec) to a numeric comparison key. The Go\n// emitter bakes absolute bounds as precomputed numbers on the SAME scale, so a min/max check is a\n// plain `key(value) >= bakedMin` / `<= relativeNowKey(spec)`.\n// Scales (must match internal/cachegen/typefunctions/formats/datetime/literals.go):\n// - date / dateTime / native Date → epoch milliseconds (UTC)\n// - time → milliseconds-of-day\n// Canonical fills for partial layouts: missing year → 2000, missing day → 1, inlined in each factory\n// because pure-fn factories can't capture outer-scope bindings.\n\n// UTC epoch ms for a date value already known to be valid in `layout`, one of the DateFmt strings.\nexport const dateStrToMs = registerPureFnFactory(function () {\n return function _date_to_ms(value: string, layout: string): number {\n const parts = value.split('-');\n // Canonical fill for yearless layouts (MM-DD / DD-MM), which MUST match Go's defaultFillYear in\n // literals.go; 2000 is a leap year so '02-29' is representable. A literal, not an outer const:\n // pure-fn factories can't capture outer-scope bindings.\n let year = 2000;\n let month = 1;\n let day = 1;\n switch (layout) {\n case 'ISO':\n case 'YYYY-MM-DD':\n year = Number(parts[0]);\n month = Number(parts[1]);\n day = Number(parts[2]);\n break;\n case 'DD-MM-YYYY':\n day = Number(parts[0]);\n month = Number(parts[1]);\n year = Number(parts[2]);\n break;\n case 'MM-DD-YYYY':\n month = Number(parts[0]);\n day = Number(parts[1]);\n year = Number(parts[2]);\n break;\n case 'YYYY-MM':\n year = Number(parts[0]);\n month = Number(parts[1]);\n break;\n case 'MM-DD':\n month = Number(parts[0]);\n day = Number(parts[1]);\n break;\n case 'DD-MM':\n day = Number(parts[0]);\n month = Number(parts[1]);\n break;\n }\n return Date.UTC(year, month - 1, day, 0, 0, 0, 0);\n };\n}, dateStrToMsId);\n\n// ms-of-day for a time value valid in `layout`; a tz is stripped and ignored (wall-clock comparison).\nexport const timeStrToMs = registerPureFnFactory(function () {\n return function _time_to_ms(value: string, layout: string): number {\n let body = value;\n if (layout === 'ISO' || layout === 'HH:mm:ss[.mmm]TZ') {\n if (body.endsWith('Z') || body.endsWith('z')) {\n body = body.substring(0, body.length - 1);\n } else {\n const plus = body.indexOf('+');\n const minus = body.lastIndexOf('-');\n const cut = plus !== -1 ? plus : minus;\n if (cut > 0) body = body.substring(0, cut);\n }\n }\n let hours = 0;\n let mins = 0;\n let secMs = 0;\n if (layout === 'HH') return Number(body) * 3600000;\n if (layout === 'mm') return Number(body) * 60000;\n if (layout === 'ss') return Number(body) * 1000;\n const parts = body.split(':');\n if (layout === 'HH:mm') {\n hours = Number(parts[0]);\n mins = Number(parts[1]);\n } else if (layout === 'mm:ss') {\n mins = Number(parts[0]);\n secMs = Number(parts[1]) * 1000;\n } else {\n // A dateTime bound parses its time half as 'ISO' regardless of the declared nested layout, so\n // the value may legitimately carry fewer segments (an 'HH:mm' nested time → '14:30'). The\n // structural check already validated it, so a tolerant key is enough: absent segments are 0.\n hours = Number(parts[0]);\n mins = parts[1] ? Number(parts[1]) : 0;\n if (parts[2]) {\n const secParts = parts[2].split('.');\n secMs = Number(secParts[0]) * 1000 + (secParts[1] ? Number(secParts[1]) : 0);\n }\n }\n return hours * 3600000 + mins * 60000 + secMs;\n };\n}, timeStrToMsId);\n\n// Parses a `now` or `now±P…` spec once; the validator hoists the returned fn and calls it per check.\n// 'timeOfDay' ignores date components: they are rejected at build time.\nexport const relativeNowKey = registerPureFnFactory(function () {\n // Parses the ISO-8601 duration tail.\n function parseDuration(tail: string): Record<string, number> {\n const out: Record<string, number> = {years: 0, months: 0, weeks: 0, days: 0, hours: 0, minutes: 0, seconds: 0};\n const body = tail.substring(1); // drop leading 'P'\n const tIdx = body.indexOf('T');\n const datePart = tIdx === -1 ? body : body.substring(0, tIdx);\n const timePart = tIdx === -1 ? '' : body.substring(tIdx + 1);\n const eat = (segment: string, map: Record<string, string>) => {\n const re = /(\\d+)([A-Z])/g;\n let m: RegExpExecArray | null;\n while ((m = re.exec(segment)) !== null) {\n const key = map[m[2]];\n if (key) out[key] = Number(m[1]);\n }\n };\n eat(datePart, {Y: 'years', M: 'months', W: 'weeks', D: 'days'});\n eat(timePart, {H: 'hours', M: 'minutes', S: 'seconds'});\n return out;\n }\n return function _relative_now_key(spec: string, scale: string): () => number {\n const isPlainNow = spec === 'now';\n const sign = spec[3] === '-' ? -1 : 1;\n const duration = parseDuration(spec.substring(4));\n const timeMs = sign * (duration.hours * 3600000 + duration.minutes * 60000 + duration.seconds * 1000);\n if (scale === 'timeOfDay') {\n return function () {\n const now = new Date();\n return (\n now.getUTCHours() * 3600000 +\n now.getUTCMinutes() * 60000 +\n now.getUTCSeconds() * 1000 +\n now.getUTCMilliseconds() +\n timeMs\n );\n };\n }\n return function () {\n const result = new Date();\n if (!isPlainNow) {\n // Calendar-correct: Y/M first (months vary in length), then W/D and time as fixed offsets.\n result.setUTCFullYear(result.getUTCFullYear() + sign * duration.years);\n result.setUTCMonth(result.getUTCMonth() + sign * duration.months);\n result.setUTCDate(result.getUTCDate() + sign * (duration.weeks * 7 + duration.days));\n result.setTime(result.getTime() + timeMs);\n }\n if (scale === 'epochDate') {\n // Same scale as dateStrToMs, which builds dates at 00:00:00Z.\n return Date.UTC(result.getUTCFullYear(), result.getUTCMonth(), result.getUTCDate(), 0, 0, 0, 0);\n }\n return result.getTime();\n };\n };\n}, relativeNowKeyId);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dateTimeParams.js","sourceRoot":"","sources":["../../../src/formats/datetime/dateTimeParams.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"dateTimeParams.js","sourceRoot":"","sources":["../../../src/formats/datetime/dateTimeParams.ts"],"names":[],"mappings":"","sourcesContent":["// Shared static params for every date-ish format family (the string date/time/dateTime formats, the\n// native `Date` family, later Temporal), so all of them accept the SAME min/max shape. A bound is\n// ALWAYS a string: an absolute literal in the field's own layout (a `YYYY-MM-DD` field takes\n// `'2020-01-01'`, an `HH:mm` field `'08:30'`, no mixing) OR a relative `now±P…` ISO-8601 duration.\n// Epoch-ms numbers are intentionally NOT accepted, the field's layout cannot express them. Layout\n// match, calendar validity and the per-kind duration restriction are checked build-time on the Go\n// side; TS only carries the brand.\n\n// The `P…` tail is a full ISO-8601 duration (`P1Y2M10D`, `PT12H30M`, `P1W`). Go enforces that it uses\n// only components of the field's own kind (dateTime / native Date accept both).\nexport type RelativeNow = 'now' | `now+P${string}` | `now-P${string}`;\n\n// All three are structurally `string` (TS can't encode \"valid in this exact layout\"), kept distinct\n// so call sites and docs read clearly.\nexport type DateBound = string; // 'YYYY-MM-DD'-style literal or RelativeNow\nexport type TimeBound = string; // 'HH:mm[:ss[.mmm]]'-style literal or RelativeNow\nexport type DateTimeBound = string; // full datetime literal or RelativeNow\n\n// The bound set every date-ish params interface mixes in: `min`/`max` INCLUSIVE, `gt`/`lt` their\n// EXCLUSIVE twins, mirroring the numeric family. One edge is either inclusive or exclusive, never\n// both; Go rejects that at build time, and a lower bound above an upper one when both are literals.\nexport interface MinMax<Bound extends string = string> {\n min?: Bound;\n max?: Bound;\n gt?: Bound;\n lt?: Bound;\n /** JSON Schema alias of `min` (inclusive lower bound). Normalised to `min`. */\n minimum?: Bound;\n /** JSON Schema alias of `max` (inclusive upper bound). Normalised to `max`. */\n maximum?: Bound;\n /** JSON Schema alias of `gt` (exclusive lower bound). Normalised to `gt`. */\n exclusiveMinimum?: Bound;\n /** JSON Schema alias of `lt` (exclusive upper bound). Normalised to `lt`. */\n exclusiveMaximum?: Bound;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"stringDateTimeFormats.js","sourceRoot":"","sources":["../../../src/formats/datetime/stringDateTimeFormats.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"stringDateTimeFormats.js","sourceRoot":"","sources":["../../../src/formats/datetime/stringDateTimeFormats.ts"],"names":[],"mappings":"","sourcesContent":["// String date/time/dateTime format TYPE aliases, sharing the min/max bound params in\n// ./dateTimeParams.ts with the native `Date` family. These stay plain string formats: the wire value\n// is a string, validated against the chosen layout AND (when present) the bounds, with validation /\n// mocking emitted on the Go side and in ../../mocking/mockStringFormat.ts. `TypeFormat` IS imported\n// as a value (not `import type`): the value-level import keeps each brand alias's reflection metadata\n// reachable for tsgo.\n\nimport {TypeFormat} from '../../runtypes/typeFormat.ts';\nimport type {MinMax, DateBound, TimeBound, DateTimeBound} from './dateTimeParams.ts';\n\n// ─────────────────────────────── Date ───────────────────────────────\n\nexport type DateFmt = 'ISO' | 'YYYY-MM-DD' | 'DD-MM-YYYY' | 'MM-DD-YYYY' | 'YYYY-MM' | 'MM-DD' | 'DD-MM';\n// Each bound is an absolute literal in `format`'s layout, or a relative `now±P…` using ONLY date\n// components (Go rejects time components for a date format).\nexport interface DateParams extends MinMax<DateBound> {\n format: DateFmt;\n}\nexport type DEFAULT_DATE_PARAMS = {format: 'ISO'};\nexport type StringDate<P extends Partial<DateParams> = DEFAULT_DATE_PARAMS> = TypeFormat<string, 'date', P, never>;\n\n// ─────────────────────────────── Time ───────────────────────────────\n\nexport type TimeFmt = 'ISO' | 'HH:mm:ss[.mmm]TZ' | 'HH:mm:ss[.mmm]' | 'HH:mm:ss' | 'HH:mm' | 'mm:ss' | 'HH' | 'mm' | 'ss';\n// Each bound is an absolute literal in `format`'s layout, or a relative `now±P…` using ONLY time\n// components (Go rejects date components for a time format).\nexport interface TimeParams extends MinMax<TimeBound> {\n format: TimeFmt;\n}\nexport type DEFAULT_TIME_FORMAT_PARAMS = {format: 'ISO'};\nexport type StringTime<P extends Partial<TimeParams> = DEFAULT_TIME_FORMAT_PARAMS> = TypeFormat<string, 'time', P, never>;\n\n// ───────────────────────────── DateTime ─────────────────────────────\n\n// A dateTime bound may use both date and time duration components.\nexport interface DateTimeParams extends MinMax<DateTimeBound> {\n date: DateParams;\n time: TimeParams;\n splitChar: string;\n}\nexport type DEFAULT_DATE_TIME_PARAMS = {\n date: {format: 'ISO'};\n time: {format: 'ISO'};\n splitChar: 'T';\n};\n// P is passed through verbatim, NOT intersected with the defaults (that would collapse an overridden\n// `format` literal to `never`); Go defaults missing nested formats / splitChar to ISO / 'T'.\nexport type StringDateTime<P extends Partial<DateTimeParams> = DEFAULT_DATE_TIME_PARAMS> = TypeFormat<\n string,\n 'dateTime',\n P,\n never\n>;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"temporalFormats.js","sourceRoot":"","sources":["../../../src/formats/datetime/temporalFormats.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAgI5D,SAAS,eAAe,CAAgD,GAAQ;IAC9E,MAAM,KAAK,GAAG,CACZ,gBAAmE,EACnE,EAA4C,EACX,EAAE;QACnC,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,UAAU,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,OAAO,aAAa,CAAC,UAAU,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,OAAO,KAA+B,CAAC;AACzC,CAAC;AAID,SAAS,uBAAuB,CAC9B,GAAQ;IAER,OAAO,CAAC,CAAC,EAA4C,EAAE,EAAE,CACvD,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAmC,CAAC;AACxF,CAAC;AAGD,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,aAAa,GAAG,uBAAuB,CAAC,wBAAwB,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"temporalFormats.js","sourceRoot":"","sources":["../../../src/formats/datetime/temporalFormats.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAgI5D,SAAS,eAAe,CAAgD,GAAQ;IAC9E,MAAM,KAAK,GAAG,CACZ,gBAAmE,EACnE,EAA4C,EACX,EAAE;QACnC,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,UAAU,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,OAAO,aAAa,CAAC,UAAU,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,OAAO,KAA+B,CAAC;AACzC,CAAC;AAID,SAAS,uBAAuB,CAC9B,GAAQ;IAER,OAAO,CAAC,CAAC,EAA4C,EAAE,EAAE,CACvD,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAmC,CAAC;AACxF,CAAC;AAGD,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,aAAa,GAAG,uBAAuB,CAAC,wBAAwB,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,mBAAmB,CAAC,CAAC","sourcesContent":["// Temporal format TYPE aliases and builders, opt-in via the `@mionjs/run-types/formats/temporal`\n// subpath (NOT re-exported from the root `formats` surface) so consumers who don't use Temporal never\n// need the Temporal lib. This file deliberately has NO `/// <reference lib=\"esnext.temporal\" />`: the\n// Go scanner's inferred-program path cannot load that lib, so a reference\n// here would make `Temporal.*` resolve to `any` DURING THE SCAN, collapse the `& {brand}` intersection\n// and silently drop the bounds. Temporal must instead be globally available to the scanned program\n// (the consumer's own tsconfig `lib`, or test/support/temporal-ambient.d.ts); when it is not, the\n// scanner raises marker-temporal-lib-missing rather than emit a no-op validator. The brand intersection is written INLINE\n// rather than through `TypeFormat` because naming `Temporal.*` in the root `runtypes/typeFormat.ts`\n// would force the Temporal lib on every marker consumer, and the scanner detects a format brand\n// structurally anyway. Each bound is an absolute Temporal string literal in the type's own ISO form OR\n// a relative `now±P…` ISO-8601 duration; Go validates the grammar and the per-type duration-component\n// restriction (Instant/PlainTime → time units, PlainDate/PlainYearMonth → date units, PlainDateTime/\n// ZonedDateTime → both) and emits `Temporal.X.compare(value, bound) >= 0/<= 0`.\n\nimport type {__rtFormatName, __rtFormatParams} from '../../runtypes/sentinelKeys.ts';\n\nimport {builderResult} from '../../runtypes/builderCore.ts';\nimport type {MinMax} from './dateTimeParams.ts';\nimport type {RunType} from '../../runtypes/types.ts';\nimport type {InjectRunTypeId} from '../../markers.ts';\nimport type {\n TemporalFormatByTag,\n TemporalBaseByTag,\n TemporalBuilderFn,\n TemporalInstanceBuilderFn,\n} from '../../runtypes/builderTypes.ts';\n\n// PlainMonthDay (no static compare) and Duration (a length, not an instant) are intentionally absent:\n// they have no min/max ordering semantics.\n\n// Guarded references to the global `Temporal.*` instance types: each resolves to the REAL type when\n// the consumer's `lib` provides the Temporal namespace and degrades when it does NOT, so the published\n// `.d.ts` never forces the Temporal lib on a consumer who doesn't use these formats (the root marker\n// surface loads this file transitively). Reading `{prototype: infer I}` off the constructor value\n// works whether `Temporal.X` is declared as a class or an interface + constructor const.\n// TWO fallbacks, chosen by the POSITION the reference sits in:\n// • `unknown` (TemporalInstanceOf) for the brand aliases and the base map below — INTERSECTION\n// positions, where `unknown & {brand}` keeps the brand structurally detectable and `any` would\n// collapse it.\n// • `never` (TemporalInstanceOrNever) for the DataOnlyNativeExtra augmentation — a UNION-KEEP\n// position, where `unknown` absorbs `DataOnlyNative` and silently collapses `DataOnly<T>` to the\n// IDENTITY for every consumer without the Temporal lib; `never` vanishes from the union instead.\ntype TemporalInstanceOf<K extends string> = typeof globalThis extends {Temporal: Record<K, {prototype: infer I}>} ? I : unknown;\ntype TemporalInstanceOrNever<K extends string> = typeof globalThis extends {Temporal: Record<K, {prototype: infer I}>}\n ? I\n : never;\n\ntype TInstant = TemporalInstanceOf<'Instant'>;\ntype TZonedDateTime = TemporalInstanceOf<'ZonedDateTime'>;\ntype TPlainDate = TemporalInstanceOf<'PlainDate'>;\ntype TPlainTime = TemporalInstanceOf<'PlainTime'>;\ntype TPlainDateTime = TemporalInstanceOf<'PlainDateTime'>;\ntype TPlainYearMonth = TemporalInstanceOf<'PlainYearMonth'>;\ntype TPlainMonthDay = TemporalInstanceOf<'PlainMonthDay'>;\ntype TDuration = TemporalInstanceOf<'Duration'>;\n\nexport type Instant<P extends MinMax = MinMax> = TInstant & {\n readonly [__rtFormatName]?: 'temporalInstant';\n readonly [__rtFormatParams]?: P;\n};\n\nexport type ZonedDateTime<P extends MinMax = MinMax> = TZonedDateTime & {\n readonly [__rtFormatName]?: 'temporalZonedDateTime';\n readonly [__rtFormatParams]?: P;\n};\n\nexport type PlainDate<P extends MinMax = MinMax> = TPlainDate & {\n readonly [__rtFormatName]?: 'temporalPlainDate';\n readonly [__rtFormatParams]?: P;\n};\n\nexport type PlainTime<P extends MinMax = MinMax> = TPlainTime & {\n readonly [__rtFormatName]?: 'temporalPlainTime';\n readonly [__rtFormatParams]?: P;\n};\n\nexport type PlainDateTime<P extends MinMax = MinMax> = TPlainDateTime & {\n readonly [__rtFormatName]?: 'temporalPlainDateTime';\n readonly [__rtFormatParams]?: P;\n};\n\nexport type PlainYearMonth<P extends MinMax = MinMax> = TPlainYearMonth & {\n readonly [__rtFormatName]?: 'temporalPlainYearMonth';\n readonly [__rtFormatParams]?: P;\n};\n\n// The type a no-params builder call (`temporal.instant()`) returns, so it converges with the\n// type-first `Temporal.Instant` id instead of carrying a `FormatTemporal*` brand for empty params.\n// Kept beside the branded aliases so the Temporal-lib coupling stays in this module (define.ts\n// indexes this map by authoring tag and never names `Temporal.*` directly).\nexport interface TemporalBaseByFormatName {\n temporalInstant: TInstant;\n temporalZonedDateTime: TZonedDateTime;\n temporalPlainDate: TPlainDate;\n temporalPlainTime: TPlainTime;\n temporalPlainDateTime: TPlainDateTime;\n temporalPlainYearMonth: TPlainYearMonth;\n // PlainMonthDay / Duration have no min/max ordering, so they appear ONLY here: no `FormatTemporal*`\n // brand, no `LeafType` / `TemporalFormatByTag` row, and no-param-only value-first builders.\n temporalPlainMonthDay: TPlainMonthDay;\n temporalDuration: TDuration;\n}\n\n// The orderable subset as a map, so `keyof` drives the door's accepted `rtFormat` names.\nexport interface TemporalFormatParamsByName {\n temporalInstant: MinMax;\n temporalZonedDateTime: MinMax;\n temporalPlainDate: MinMax;\n temporalPlainTime: MinMax;\n temporalPlainDateTime: MinMax;\n temporalPlainYearMonth: MinMax;\n}\n\n// ─────────────────────── DataOnly augmentation ──────────────────────\n// Opts the 8 TC39 Temporal types into `DataOnly`'s KEEP set: the RT validates Temporal by\n// `instanceof` / native identity, NOT by structural projection. The augmentation lives HERE, in the\n// lib-coupled `formats/temporal` subpath, so core `runtypes/dataOnly.ts` never forces the Temporal lib\n// on non-Temporal consumers. Only the VALUE union `DataOnlyNativeExtra[keyof …]` is read by\n// `DataOnly`; the keys are arbitrary labels.\n// ⚠️ These members MUST use the `never`-falling guard, not the `unknown` one: in DataOnly's union\n// keep-list an `unknown` member absorbs the whole union and collapses `DataOnly<T>` to the identity\n// for every consumer without the Temporal lib. Pinned by test/types/dataonlyTemporalPosture.test.ts.\ndeclare module '../../runtypes/dataOnly.ts' {\n interface DataOnlyNativeExtra {\n temporalInstant: TemporalInstanceOrNever<'Instant'>;\n temporalZonedDateTime: TemporalInstanceOrNever<'ZonedDateTime'>;\n temporalPlainDate: TemporalInstanceOrNever<'PlainDate'>;\n temporalPlainTime: TemporalInstanceOrNever<'PlainTime'>;\n temporalPlainDateTime: TemporalInstanceOrNever<'PlainDateTime'>;\n temporalPlainYearMonth: TemporalInstanceOrNever<'PlainYearMonth'>;\n temporalPlainMonthDay: TemporalInstanceOrNever<'PlainMonthDay'>;\n temporalDuration: TemporalInstanceOrNever<'Duration'>;\n }\n}\n\n// ─────────────────────────── Temporal builders ──────────────────────\n//\n// Value-first builders for the `@mionjs/run-types/formats/temporal` subpath, flat so a format's TYPE\n// (`TFT.Instant`) and its BUILDER (`TFT.instant()`) live together. Co-located here, not under the root\n// `formats` surface, so the Temporal-lib coupling stays in this one module; each converges on the same\n// structural id as the type-first `createValidateFn<Temporal.X>()` surface.\n\n// Shared factory for the 6 orderable temporal builders, with the same no-params/plain ↔\n// params/branded overload split as the scalar leaves.\nfunction temporalBuilder<Tag extends keyof TemporalFormatByTag<MinMax>>(tag: Tag): TemporalBuilderFn<Tag> {\n const build = (\n formatParamsOrId?: MinMax | InjectRunTypeId<TemporalBaseByTag[Tag]>,\n id?: InjectRunTypeId<TemporalBaseByTag[Tag]>\n ): RunType<TemporalBaseByTag[Tag]> => {\n const formatParams = typeof formatParamsOrId === 'object' ? formatParamsOrId : {};\n const injectedId = typeof formatParamsOrId === 'string' ? formatParamsOrId : id;\n return builderResult(injectedId, {type: tag, formatParams});\n };\n return build as TemporalBuilderFn<Tag>;\n}\n\n/** A no-ordering temporal builder (`plainMonthDay` / `duration`): no min/max semantics, so only the\n * no-params overload, returning the raw instance type the type-first form converges with. **/\nfunction temporalInstanceBuilder<Tag extends 'temporal.plainMonthDay' | 'temporal.duration'>(\n tag: Tag\n): TemporalInstanceBuilderFn<Tag> {\n return ((id?: InjectRunTypeId<TemporalBaseByTag[Tag]>) =>\n builderResult(id, {type: tag, formatParams: {}})) as TemporalInstanceBuilderFn<Tag>;\n}\n\n/** Temporal field builder — `TFT.instant()` / `TFT.instant({min: '…'})`. **/\nexport const instant = temporalBuilder('temporal.instant');\n/** Temporal field builder — `TFT.zonedDateTime()`. **/\nexport const zonedDateTime = temporalBuilder('temporal.zonedDateTime');\n/** Temporal field builder — `TFT.plainDate()`. **/\nexport const plainDate = temporalBuilder('temporal.plainDate');\n/** Temporal field builder — `TFT.plainTime()`. **/\nexport const plainTime = temporalBuilder('temporal.plainTime');\n/** Temporal field builder — `TFT.plainDateTime()`. **/\nexport const plainDateTime = temporalBuilder('temporal.plainDateTime');\n/** Temporal field builder — `TFT.plainYearMonth()`. **/\nexport const plainYearMonth = temporalBuilder('temporal.plainYearMonth');\n/** Temporal field builder — `TFT.plainMonthDay()` (no ordering). **/\nexport const plainMonthDay = temporalInstanceBuilder('temporal.plainMonthDay');\n/** Temporal field builder — `TFT.duration()` (no ordering). **/\nexport const duration = temporalInstanceBuilder('temporal.duration');\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/formats/index.ts"],"names":[],"mappings":"AAEA,OAAO,qCAAqC,CAAC;AAE7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,iCAAiC,CAAC;AAmCzC,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,KAAK,EACL,YAAY,EACZ,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,IAAI,EACJ,MAAM,EACN,MAAM,EACN,EAAE,EACF,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,YAAY,EACZ,GAAG,EACH,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,aAAa,EACb,cAAc,EACd,WAAW,EACX,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,UAAU,EACV,SAAS,EACT,aAAa,EACb,aAAa,EACb,GAAG,EACH,OAAO,EACP,OAAO,EACP,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EACL,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,GACP,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAC,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/formats/index.ts"],"names":[],"mappings":"AAEA,OAAO,qCAAqC,CAAC;AAE7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,iCAAiC,CAAC;AAmCzC,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,KAAK,EACL,YAAY,EACZ,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,IAAI,EACJ,MAAM,EACN,MAAM,EACN,EAAE,EACF,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,YAAY,EACZ,GAAG,EACH,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,aAAa,EACb,cAAc,EACd,WAAW,EACX,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,UAAU,EACV,SAAS,EACT,aAAa,EACb,aAAa,EACb,GAAG,EACH,OAAO,EACP,OAAO,EACP,UAAU,EACV,UAAU,EACV,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EACL,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,GACP,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAC,MAAM,oBAAoB,CAAC","sourcesContent":["// Formats are JS-only types; Go emits their functions, keyed off the FormatAnnotation's format name. The side-effect\n// imports below MUST evaluate first: emitted code looks a pure fn up by HASH, and a missing one accepts everything.\nimport './string/string-formats-pure-fns.ts';\n// Split out of the string pure fns: the card format carries more machinery than the rest of the family.\nimport './string/credit-card-pure-fns.ts';\nimport './datetime/dateTime-pure-fns.ts';\n// The per-kind mock fns are NOT imported here: createMockData.ts registers them, so only a bundle\n// that mocks carries them.\n\n// Kept as `export type *`: the suite exporters' FORMATS_MODULE overlay keys off these lines.\nexport type * from './string/stringFormats.ts';\n// The credit-card type, params and builder live beside the pure fns that back them.\nexport type * from './string/credit-card-pure-fns.ts';\nexport type * from './datetime/dateTimeParams.ts';\nexport type * from './datetime/stringDateTimeFormats.ts';\nexport type * from './datetime/dateFormats.ts';\nexport type * from './numberFormats.ts';\nexport type * from './bigintFormats.ts';\nexport type * from './refineFormat.ts';\n// The named brand carriers, on the subpath the emitted declarations reference; see the note on\n// their declaration in ../runtypes/typeFormat.ts.\nexport type {FormatBrand, NominalBrand} from '../runtypes/typeFormat.ts';\n// The type-first spelling of the collection keywords; the value-first spelling is the trailing\n// params bag on `RT.array` / `RT.object` / `RT.record` / `RT.set` / `RT.map`.\nexport type {\n FormattedArray,\n FormattedObject,\n FormattedSet,\n FormattedMap,\n FormattedCollectionParams,\n FormattedMapParams,\n FormattedObjectParams,\n FormattedCollectionParamsValueFirst,\n FormattedMapParamsValueFirst,\n FormattedObjectParamsValueFirst,\n StructuralBrand,\n} from './structural.ts';\n\n// Temporal builders are NOT re-exported here: they live on the `@mionjs/run-types/formats/temporal`\n// subpath, so non-Temporal consumers never pull in the Temporal lib.\nexport {string, number, currency, bigInt, date, brand} from './scalars.ts';\nexport {\n alpha,\n alphaNumeric,\n numeric,\n base64,\n base32,\n base16,\n jsonContent,\n jsonContentBase64,\n lowercase,\n uppercase,\n capitalize,\n transform,\n uuid,\n uuidv4,\n uuidv7,\n ip,\n ipv4,\n ipv6,\n ipWithPort,\n ipv4WithPort,\n ipv6WithPort,\n uri,\n uriReference,\n iri,\n iriReference,\n uriTemplate,\n hostname,\n idnHostname,\n stringDuration,\n regexString,\n jsonPointer,\n relativeJsonPointer,\n domain,\n domainUnicode,\n domainPunycode,\n domainParts,\n email,\n emailAddress,\n idnEmail,\n emailPunycode,\n emailParts,\n stringUrl,\n stringUrlHttp,\n stringUrlFile,\n url,\n urlHttp,\n urlFile,\n stringDate,\n stringTime,\n stringDateTime,\n} from './string/stringFormats.ts';\nexport {creditCard, CARD_NETWORKS} from './string/credit-card-pure-fns.ts';\nexport {\n integer,\n float,\n positive,\n negative,\n positiveInt,\n negativeInt,\n int8,\n int16,\n int32,\n uint8,\n uint16,\n uint32,\n} from './numberFormats.ts';\nexport {bigPositive, bigNegative, bigPositiveInt, bigNegativeInt, bigInt64, bigUInt64} from './bigintFormats.ts';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"numberFormats.js","sourceRoot":"","sources":["../../src/formats/numberFormats.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAiEzD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAU,QAAQ,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAW,QAAQ,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAW,QAAQ,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,QAAQ,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,QAAQ,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,IAAI,GAAG,aAAa,CAAO,QAAQ,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,MAAM,GAAG,aAAa,CAAS,QAAQ,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,MAAM,GAAG,aAAa,CAAS,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"numberFormats.js","sourceRoot":"","sources":["../../src/formats/numberFormats.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAiEzD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAU,QAAQ,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAW,QAAQ,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAW,QAAQ,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,QAAQ,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,QAAQ,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,IAAI,GAAG,aAAa,CAAO,QAAQ,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAQ,QAAQ,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,MAAM,GAAG,aAAa,CAAS,QAAQ,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,MAAM,GAAG,aAAa,CAAS,QAAQ,CAAC,CAAC","sourcesContent":["// TYPE aliases only, their functions are emitted elsewhere. `TypeFormat` is a value import (not `import type`)\n// so each brand alias's reflection metadata stays reachable for tsgo.\n\nimport {TypeFormat} from '../runtypes/typeFormat.ts';\nimport {presetBuilder} from '../runtypes/builderCore.ts';\n\n// ─────────────────────────── NumberFormat ───────────────────────────\n\n// Cross-param invariants (integer⊕float, min⊕gt, max⊕lt, multipleOf rules) are validated build-time\n// in Go: a lower bound is inclusive (`min`) OR exclusive (`gt`), never both, likewise the upper bound.\nexport interface NumberParams {\n integer?: boolean;\n /** Steers mocks toward fractional samples, NEVER a failable constraint (2.0 is a float); exclusive with `integer`. */\n float?: boolean;\n min?: number;\n max?: number;\n lt?: number;\n gt?: number;\n multipleOf?: number;\n /** Tolerance relative to `value / multipleOf` for a FRACTIONAL step (floats can't hold 0.01). Default 4 * EPSILON, in (0, 1). */\n multipleOfTolerance?: number;\n /** JSON Schema alias of `min` (inclusive lower bound). Normalised to `min`. */\n minimum?: number;\n /** JSON Schema alias of `max` (inclusive upper bound). Normalised to `max`. */\n maximum?: number;\n /** JSON Schema alias of `gt` (exclusive lower bound). Normalised to `gt`. */\n exclusiveMinimum?: number;\n /** JSON Schema alias of `lt` (exclusive upper bound). Normalised to `lt`. */\n exclusiveMaximum?: number;\n /** PURE PRESENTATION METADATA: no failable constraint, so validation, JSON round trip and mocking ignore it, no `rt$errors` key.\n * Echoed onto the field's errors so `createFriendlyTextI18n` renders bounds with its `currency` renderer option.\n * WHICH currency is runtime data, deliberately never a type param. */\n isCurrency?: boolean;\n}\n\n// The branded number alias users annotate with, e.g. `Number<{min: 0; max: 100}>`.\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport type Number<P extends NumberParams = {}, BrandName extends string = never> = TypeFormat<\n number,\n 'numberFormat',\n P,\n BrandName\n>;\n\n// A PARAM PRESET over the plain number format (like Integer / Int8), merging `isCurrency: true` into\n// the user's params: no distinct format name, no special Go functionality.\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport type Currency<P extends NumberParams = {}, BrandName extends string = never> = Number<P & {isCurrency: true}, BrandName>;\n\nexport type Integer = Number<{integer: true}>;\nexport type Float = Number<{float: true}>;\nexport type Positive = Number<{min: 0}>;\nexport type Negative = Number<{max: 0}>;\nexport type PositiveInt = Number<{min: 0; integer: true}>;\nexport type NegativeInt = Number<{max: 0; integer: true}>;\nexport type Int8 = Number<{integer: true; min: -128; max: 127}>;\nexport type Int16 = Number<{integer: true; min: -32768; max: 32767}>;\nexport type Int32 = Number<{integer: true; min: -2147483648; max: 2147483647}>;\nexport type UInt8 = Number<{integer: true; min: 0; max: 255}>;\nexport type UInt16 = Number<{integer: true; min: 0; max: 65535}>;\nexport type UInt32 = Number<{integer: true; min: 0; max: 4294967295}>;\n\n// ───────────────────── Predefined number builders ───────────────────\n//\n// Each builder carries the CONCRETE alias above, so the Go scanner reflects the SAME branded type off\n// its `InjectRunTypeId<…>` brand as the type-first `createValidateFn<Int8>()` and the two converge on\n// one structural id. For ad-hoc constraints use `TF.number({min, max, …})`.\n\n/** Integer (`Integer`). **/\nexport const integer = presetBuilder<Integer>('number');\n/** Float-natured number (`Float`): fractional mocks, float64 packing; whole values still validate. **/\nexport const float = presetBuilder<Float>('number');\n/** ≥ 0 (`Positive`). **/\nexport const positive = presetBuilder<Positive>('number');\n/** ≤ 0 (`Negative`). **/\nexport const negative = presetBuilder<Negative>('number');\n/** Integer ≥ 0 (`PositiveInt`). **/\nexport const positiveInt = presetBuilder<PositiveInt>('number');\n/** Integer ≤ 0 (`NegativeInt`). **/\nexport const negativeInt = presetBuilder<NegativeInt>('number');\n/** Signed 8-bit integer (`Int8`). **/\nexport const int8 = presetBuilder<Int8>('number');\n/** Signed 16-bit integer (`Int16`). **/\nexport const int16 = presetBuilder<Int16>('number');\n/** Signed 32-bit integer (`Int32`). **/\nexport const int32 = presetBuilder<Int32>('number');\n/** Unsigned 8-bit integer (`UInt8`). **/\nexport const uint8 = presetBuilder<UInt8>('number');\n/** Unsigned 16-bit integer (`UInt16`). **/\nexport const uint16 = presetBuilder<UInt16>('number');\n/** Unsigned 32-bit integer (`UInt32`). **/\nexport const uint32 = presetBuilder<UInt32>('number');\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"refineFormat.js","sourceRoot":"","sources":["../../src/formats/refineFormat.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"refineFormat.js","sourceRoot":"","sources":["../../src/formats/refineFormat.ts"],"names":[],"mappings":"","sourcesContent":["// Type-level format refinement: tighten a format-carrying type by merging extra params into the ones\n// it already carries. The @mionjs/drizzle-orm-*-core packages build refineTableType on top of these.\n\nimport type {FormatNameOf, FormatParamsOf, TypeFormat, TypeFormatBase} from '../runtypes/typeFormat.ts';\nimport type {Mutable} from '../runtypes/types.ts';\nimport type {IPParams, StringParams} from './string/stringFormats.ts';\nimport type {NumberParams} from '../formats/numberFormats.ts';\nimport type {BigIntParams} from '../formats/bigintFormats.ts';\nimport type {NativeDateParams} from './datetime/dateFormats.ts';\nimport type {DateParams, DateTimeParams, TimeParams} from './datetime/stringDateTimeFormats.ts';\n\ntype Prettify<T> = {[K in keyof T]: T[K]} & {};\n\n/** Format family -> the params a refinement may add. A type carrying no family (or one missing here)\n * refines to `never`, so ANY refinement on it is a compile error, never a silent bypass. */\nexport interface RefinableParamsByFamily {\n stringFormat: Partial<StringParams>;\n numberFormat: Partial<NumberParams>;\n bigintFormat: Partial<BigIntParams>;\n nativeDate: Partial<NativeDateParams>;\n date: Partial<DateParams>;\n time: Partial<TimeParams>;\n dateTime: Partial<DateTimeParams>;\n ip: Partial<IPParams>;\n}\n\n/** The params a refinement may add to `T`, or `never` when `T` carries no refinable format. */\nexport type RefinableParamsOf<T> =\n FormatNameOf<T> extends keyof RefinableParamsByFamily ? RefinableParamsByFamily[FormatNameOf<T>] : never;\n\n/** The primitive base `T`'s format rides on (`FormatBaseOf<Email>` is `string`). */\nexport type FormatBaseOf<T> = Extract<\n T extends string\n ? string\n : T extends number\n ? number\n : T extends bigint\n ? bigint\n : T extends globalThis.Date\n ? globalThis.Date\n : never,\n TypeFormatBase\n>;\n\n/** `T` rebuilt with `P` MERGED into its captured format params (`P` wins on a shared key). Base and\n * family are preserved, so the value type can never change, only the params tighten. */\nexport type MergeFormat<T, P> = TypeFormat<\n FormatBaseOf<T>,\n FormatNameOf<T>,\n Prettify<Omit<FormatParamsOf<T>, keyof Mutable<P>> & Mutable<P>>\n>;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../../src/formats/scalars.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,aAAa,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,4BAA4B,CAAC;AAUhF,OAAO,EAAC,KAAK,EAAC,CAAC;AAgBf,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAeD,MAAM,UAAU,QAAQ,CACtB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAC,GAAG,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC;IACzH,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,IAAI,CAClB,gBAA2D,EAC3D,SAAoD,EACpD,EAA0B;IAE1B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAC,CAAC,CAAC;AACtG,CAAC"}
1
+ {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../../src/formats/scalars.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,aAAa,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,4BAA4B,CAAC;AAUhF,OAAO,EAAC,KAAK,EAAC,CAAC;AAgBf,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAeD,MAAM,UAAU,QAAQ,CACtB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAC,GAAG,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC;IACzH,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,MAAM,CACpB,gBAAyD,EACzD,SAAsD,EACtD,EAA4B;IAE5B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;AACxG,CAAC;AAaD,MAAM,UAAU,IAAI,CAClB,gBAA2D,EAC3D,SAAoD,EACpD,EAA0B;IAE1B,MAAM,YAAY,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,aAAa,CAAC,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAC,CAAC,CAAC;AACtG,CAAC","sourcesContent":["// Value-first SCALAR LEAF builders, living beside the format TYPE aliases they converge with: a\n// no-params call lands on the SAME structural id as the type-first plain type and a marker-form\n// `createValidateFn<string>()`. One impl resolves the injected entry tuple as the TRAILING arg\n// (`lastInjectedId`) at slot 0, 1 or 2, and the Go scanner derives the slot from the resolved\n// overload's signature. The brand rides slot 1 as a `BrandArg` OBJECT so it never collides with the\n// id string, and the `const` type parameters keep `{maxLength: 50}` as `50` and the brand `'Id'` as a\n// string literal, so both survive into the reflected type.\n\nimport {builderResult, lastInjectedId, brand} from '../runtypes/builderCore.ts';\nimport type {RunType} from '../runtypes/types.ts';\nimport type {InjectRunTypeId, CompTimeArgs} from '../markers.ts';\nimport type {LeafType, BrandArg, ExactParams} from '../runtypes/builderTypes.ts';\nimport type {StringParams, StringParamsValueFirst} from './string/stringFormats.ts';\nimport type {NumberParams, Currency} from './numberFormats.ts';\nimport type {BigIntParams} from './bigintFormats.ts';\nimport type {NativeDateParams} from './datetime/dateFormats.ts';\n\n// Re-exported from the shared builder core so the nominal-brand tag sits beside the builders it tags.\nexport {brand};\n\n/** A string field builder. Params are `StringParamsValueFirst`: `pattern` is the inline\n * `{source, flags?, mockSamples, …}` literal ONLY, never the opaque `FormatPattern` value (whose\n * source/flags erase to `string`), so the reflected `T` keeps the pattern literals and the\n * value-first id stays faithful. **/\nexport function string(id?: InjectRunTypeId<string>): RunType<string>;\nexport function string<const P extends StringParamsValueFirst>(\n formatParams: CompTimeArgs<ExactParams<P, StringParamsValueFirst>>,\n id?: InjectRunTypeId<LeafType<'stringFormat', P>>\n): RunType<LeafType<'stringFormat', P>>;\nexport function string<const P extends StringParamsValueFirst, const B extends string>(\n formatParams: CompTimeArgs<ExactParams<P, StringParamsValueFirst>>,\n brandTag: BrandArg<B>,\n id?: InjectRunTypeId<LeafType<'stringFormat', P, B>>\n): RunType<LeafType<'stringFormat', P, B>>;\nexport function string(\n formatParamsOrId?: StringParams | InjectRunTypeId<string>,\n brandOrId?: BrandArg<string> | InjectRunTypeId<string>,\n id?: InjectRunTypeId<string>\n): RunType<string> {\n const formatParams = typeof formatParamsOrId === 'object' ? formatParamsOrId : {};\n return builderResult(lastInjectedId(formatParamsOrId, brandOrId, id), {type: 'string', formatParams});\n}\n\n/** A number field builder. **/\nexport function number(id?: InjectRunTypeId<number>): RunType<number>;\nexport function number<const P extends NumberParams>(\n formatParams: CompTimeArgs<ExactParams<P, NumberParams>>,\n id?: InjectRunTypeId<LeafType<'numberFormat', P>>\n): RunType<LeafType<'numberFormat', P>>;\nexport function number<const P extends NumberParams, const B extends string>(\n formatParams: CompTimeArgs<ExactParams<P, NumberParams>>,\n brandTag: BrandArg<B>,\n id?: InjectRunTypeId<LeafType<'numberFormat', P, B>>\n): RunType<LeafType<'numberFormat', P, B>>;\nexport function number(\n formatParamsOrId?: NumberParams | InjectRunTypeId<number>,\n brandOrId?: BrandArg<string> | InjectRunTypeId<number>,\n id?: InjectRunTypeId<number>\n): RunType<number> {\n const formatParams = typeof formatParamsOrId === 'object' ? formatParamsOrId : {};\n return builderResult(lastInjectedId(formatParamsOrId, brandOrId, id), {type: 'number', formatParams});\n}\n\n/** A currency (monetary amount) field builder: `currency()` ≡ `number({isCurrency: true})`, so unlike\n * `number()` the no-params call still carries the mark. The currency UNIT is never a param, pass it\n * to the renderer (`createFriendlyTextI18n`'s `currency` option) instead. **/\nexport function currency(id?: InjectRunTypeId<Currency>): RunType<Currency>;\nexport function currency<const P extends NumberParams>(\n formatParams: CompTimeArgs<ExactParams<P, NumberParams>>,\n id?: InjectRunTypeId<LeafType<'numberFormat', P & {isCurrency: true}>>\n): RunType<LeafType<'numberFormat', P & {isCurrency: true}>>;\nexport function currency<const P extends NumberParams, const B extends string>(\n formatParams: CompTimeArgs<ExactParams<P, NumberParams>>,\n brandTag: BrandArg<B>,\n id?: InjectRunTypeId<LeafType<'numberFormat', P & {isCurrency: true}, B>>\n): RunType<LeafType<'numberFormat', P & {isCurrency: true}, B>>;\nexport function currency(\n formatParamsOrId?: NumberParams | InjectRunTypeId<number>,\n brandOrId?: BrandArg<string> | InjectRunTypeId<number>,\n id?: InjectRunTypeId<number>\n): RunType<number> {\n const formatParams = typeof formatParamsOrId === 'object' ? {...formatParamsOrId, isCurrency: true} : {isCurrency: true};\n return builderResult(lastInjectedId(formatParamsOrId, brandOrId, id), {type: 'number', formatParams});\n}\n\n/** A bigint field builder. **/\nexport function bigInt(id?: InjectRunTypeId<bigint>): RunType<bigint>;\nexport function bigInt<const P extends BigIntParams>(\n formatParams: CompTimeArgs<ExactParams<P, BigIntParams>>,\n id?: InjectRunTypeId<LeafType<'bigintFormat', P>>\n): RunType<LeafType<'bigintFormat', P>>;\nexport function bigInt<const P extends BigIntParams, const B extends string>(\n formatParams: CompTimeArgs<ExactParams<P, BigIntParams>>,\n brandTag: BrandArg<B>,\n id?: InjectRunTypeId<LeafType<'bigintFormat', P, B>>\n): RunType<LeafType<'bigintFormat', P, B>>;\nexport function bigInt(\n formatParamsOrId?: BigIntParams | InjectRunTypeId<bigint>,\n brandOrId?: BrandArg<string> | InjectRunTypeId<bigint>,\n id?: InjectRunTypeId<bigint>\n): RunType<bigint> {\n const formatParams = typeof formatParamsOrId === 'object' ? formatParamsOrId : {};\n return builderResult(lastInjectedId(formatParamsOrId, brandOrId, id), {type: 'bigint', formatParams});\n}\n\n/** A native-`Date` field builder. **/\nexport function date(id?: InjectRunTypeId<Date>): RunType<Date>;\nexport function date<const P extends NativeDateParams>(\n formatParams: CompTimeArgs<ExactParams<P, NativeDateParams>>,\n id?: InjectRunTypeId<LeafType<'nativeDate', P>>\n): RunType<LeafType<'nativeDate', P>>;\nexport function date<const P extends NativeDateParams, const B extends string>(\n formatParams: CompTimeArgs<ExactParams<P, NativeDateParams>>,\n brandTag: BrandArg<B>,\n id?: InjectRunTypeId<LeafType<'nativeDate', P, B>>\n): RunType<LeafType<'nativeDate', P, B>>;\nexport function date(\n formatParamsOrId?: NativeDateParams | InjectRunTypeId<Date>,\n brandOrId?: BrandArg<string> | InjectRunTypeId<Date>,\n id?: InjectRunTypeId<Date>\n): RunType<Date> {\n const formatParams = typeof formatParamsOrId === 'object' ? formatParamsOrId : {};\n return builderResult(lastInjectedId(formatParamsOrId, brandOrId, id), {type: 'date', formatParams});\n}\n"]}
@@ -17,10 +17,10 @@ export interface CardNetworkRule {
17
17
  lengths: readonly number[];
18
18
  }
19
19
  export type CardNetworkRules = Readonly<Record<string, CardNetworkRule>>;
20
- export declare const luhnSum: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_VJiknJ2exR2oMF">;
21
- export declare const isCreditCard: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_18wDCH5CXZoQKV">;
22
- export declare const cardNetworkRules: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_nsU8QeJCuCF8Kr">;
23
- export declare const matchesCardNetwork: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_A3KjzpjelkcBST">;
20
+ export declare const luhnSum: import("../../runtypes/pureFn.ts").PureFnId<"_rt:VJiknJ2exR">;
21
+ export declare const isCreditCard: import("../../runtypes/pureFn.ts").PureFnId<"_rt:GaLOTE4b_F">;
22
+ export declare const cardNetworkRules: import("../../runtypes/pureFn.ts").PureFnId<"_rt:nsU8QeJCuC">;
23
+ export declare const matchesCardNetwork: import("../../runtypes/pureFn.ts").PureFnId<"_rt:PZzwu-J2YB">;
24
24
  export declare function getCardNetworkRules(): CardNetworkRules;
25
25
  export declare function luhnCheckDigit(body: string): string;
26
26
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"credit-card-pure-fns.js","sourceRoot":"","sources":["../../../src/formats/string/credit-card-pure-fns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credit-card-pure-fns.js","sourceRoot":"","sources":["../../../src/formats/string/credit-card-pure-fns.ts"],"names":[],"mappings":"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","sourcesContent":["// The WHOLE credit-card format in one file: the public type and builder, the pure fns behind them,\n// the network table, and the two doors ordinary code uses to reach those. Split out of the shared\n// string-format files because the card format carries more machinery than any other string format,\n// and the shape to copy for the next format that outgrows them: one module, re-exported from\n// `src/formats/index.ts`, which also side-effect imports it so the registrations happen before any\n// user code touches it. The Go emitter records this path as the pure fns' canonical source\n// (creditCardPureFnFilePath in internal/cachegen/typefunctions/formats/string/creditcard.go), so keep\n// the two in sync if either moves.\n\nimport {registerPureFnFactory} from '../../runtypes/pureFn.ts';\nimport {luhnSumId, isCreditCardId, cardNetworkRulesId, matchesCardNetworkId} from '../../runtypes/pure-fn-ids.generated.ts';\nimport {getRTUtils} from '../../runtypes/rtUtils.ts';\nimport type {RTUtils} from '../../runtypes/rtUtils.ts';\nimport {presetFormatBuilder, type CreditCardTransformParams, type Override, type PresetFormat} from './stringFormats.ts';\n\n// ───────────────────────────── Credit card ──────────────────────────\n\n/** Every card network `CreditCard` knows, as a runtime list: the `CardNetwork` union derives from it,\n * so the two can never disagree, and the mock generator picks from this rather than its own list. **/\nexport const CARD_NETWORKS = ['visa', 'mastercard', 'amex', 'discover', 'jcb', 'diners', 'unionpay', 'maestro'] as const;\n\n/** A card network `CreditCard` can pin. */\nexport type CardNetwork = (typeof CARD_NETWORKS)[number];\n\n/** The failure modes `CreditCard` reports in `TypeFormatError.errorType`: `'format'` (not shaped like\n * a card number), `'checksum'` (right shape, the digits do not add up: the mistyped-digit case) or\n * `'network'` (a good card, not one this field takes; only with `networks`). Safe to switch on. **/\nexport type CreditCardErrorType = 'format' | 'checksum' | 'network';\n\n/** Params for `CreditCard`; a failing value reports WHICH way it failed in the error's `errorType`. **/\nexport interface CreditCardParams {\n /** The networks the field accepts. Omitted means any network, and the network table then never\n * reaches the emitted code at all: the check is digits plus the Luhn checksum. */\n networks?: readonly CardNetwork[];\n /** The characters allowed BETWEEN digits, as one string, `' -'` by default: `4111 1111 1111 1111`\n * and `4111-1111-1111-1111` both pass out of the box. A leading or trailing separator, or two in a\n * row, never passes. Pass `''` for digits and nothing else. Accepting the grouping does not rewrite\n * it: `transform: {stripSeparators: true}` does. **/\n separators?: string;\n /** Value rewrite (`{stripSeparators: true}` gives bare digits back), OFF by default and deliberately\n * separate from `separators`: accepting the grouping someone typed and rewriting it are two\n * decisions. Applied only by `createFormatTransformFn` and mion's `sanitizeParams`, never inside\n * validate or decode. **/\n transform?: CreditCardTransformParams;\n}\n// No `mockSamples`, unlike the pattern-backed formats: a regex cannot be reversed, so those need a\n// declared pool, while a card number can be GENERATED fresh per draw (mockCreditCard, plus the\n// `testCreditCards` mock option for the well-known sandbox numbers).\n\n// Spaces and dashes are how a card number is written, printed and typed, so accepting them is the\n// useful default rather than an opt-in. `TF.CreditCard<{separators: ''}>` is the digits-only field.\ntype DEFAULT_CREDIT_CARD_PARAMS = {separators: ' -'};\n\n/** A payment card number: 12 to 19 digits whose Luhn checksum holds, which catches a single mistyped\n * digit. Spaces and dashes between digits are accepted by default; `networks` narrows the issuers. **/\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport type CreditCard<P extends Override<CreditCardParams> = {}> = PresetFormat<'creditCard', DEFAULT_CREDIT_CARD_PARAMS, P>;\n\n/** Payment card number (`CreditCard`); `networks` pins the issuers, `separators` accepts grouping. **/\nexport const creditCard = presetFormatBuilder<'creditCard', DEFAULT_CREDIT_CARD_PARAMS, Override<CreditCardParams>>('creditCard');\n\n// Split in TWO on purpose, with NO `utl.getPureFn` edge between them: the Go emitter references\n// `matchesCardNetwork` only when the format declares `networks`, so a bare `CreditCard` never drags\n// the network table into the emitted cache, and a dependency edge would ship both bodies to every call\n// site (the extractor records transitive deps). The price is that each strips `separators` itself.\n\n/** One network's issuing rules: the first-digit RANGES it uses (both bounds of a range carry the same\n * number of digits) and the card lengths it issues. **/\nexport interface CardNetworkRule {\n prefixes: readonly (readonly [string, string])[];\n lengths: readonly number[];\n}\n/** The whole table, keyed by network name. Exported so the mock generator can type its\n * `getPureFn(cardNetworkRules)` lookup; the VALUE stays the pure fn's, so there is one copy. **/\nexport type CardNetworkRules = Readonly<Record<string, CardNetworkRule>>;\n\n// The Luhn doubling rule in ONE place; it skips anything that is not a digit, so a grouped number sums\n// like a bare one. Shared by the VALIDATOR (is the sum a multiple of 10) and the MOCK GENERATOR (which\n// final digit would make it one), because two copies of a doubling loop drift.\nexport const luhnSum = registerPureFnFactory(function () {\n return function _luhn_sum(value: string): number {\n let sum = 0;\n let double = false;\n for (let i = value.length - 1; i >= 0; i--) {\n const charCode = value.charCodeAt(i);\n if (charCode < 48 || charCode > 57) continue;\n let digit = charCode - 48;\n if (double) {\n digit *= 2;\n if (digit > 9) digit -= 9;\n }\n sum += digit;\n double = !double;\n }\n return sum;\n };\n}, luhnSumId);\n\n// The base card-number check: 12 to 19 digits whose Luhn checksum is a multiple of 10, which catches a\n// mistyped digit where a length + character-class test does not. Returns the FAILURE MODE rather than\n// a boolean ('' good card, 'format' not shaped like one, 'checksum' shaped but not adding up), which\n// feeds the `type` field of the emitted format error; validate compares against '' and pays nothing\n// for it. The walk here settles SHAPE only, the checksum is luhnSum's, shared with the mock generator.\nexport const isCreditCard = registerPureFnFactory(function (utl: RTUtils) {\n const luhnSumFn = utl.getPureFn(luhnSum) as (value: string) => number;\n return function _is_credit_card(value: string, params: CreditCardParams): string {\n if (typeof value !== 'string' || value === '') return 'format';\n const separators = params.separators;\n let count = 0;\n // A separator only ever sits BETWEEN digits, so the character to the right of the cursor must be a\n // digit whenever a separator is consumed, which rejects a leading / trailing one and two in a row.\n let expectDigit = true;\n for (let i = value.length - 1; i >= 0; i--) {\n const charCode = value.charCodeAt(i);\n if (charCode >= 48 && charCode <= 57) {\n count++;\n expectDigit = false;\n continue;\n }\n if (expectDigit) return 'format';\n if (separators === undefined || separators.indexOf(value[i]) === -1) return 'format';\n expectDigit = true;\n }\n if (expectDigit) return 'format';\n if (count < 12 || count > 19) return 'format';\n return luhnSumFn(value) % 10 === 0 ? '' : 'checksum';\n };\n}, isCreditCardId);\n\n// The per-network prefix and length table, its own pure fn so the VALIDATOR and the MOCK GENERATOR\n// share one copy: a mock that drifted from the validator would silently generate cards its own format\n// rejects. It has to be a pure fn rather than a plain module export, since factory bodies are inlined\n// WITHOUT their lexical environment and a factory referencing an imported const fails the build\n// (purefn-reads-outer-variable); `utl.getPureFn` is the one way out, and the mock looks it up through `getRTUtils()`.\n// The top level is frozen because two callers share the object.\nexport const cardNetworkRules = registerPureFnFactory(function () {\n const RULES: CardNetworkRules = {\n visa: {prefixes: [['4', '4']], lengths: [13, 16, 19]},\n mastercard: {\n prefixes: [\n ['51', '55'],\n ['2221', '2720'],\n ],\n lengths: [16],\n },\n amex: {\n prefixes: [\n ['34', '34'],\n ['37', '37'],\n ],\n lengths: [15],\n },\n discover: {\n prefixes: [\n ['6011', '6011'],\n ['644', '649'],\n ['65', '65'],\n ['622126', '622925'],\n ],\n lengths: [16, 19],\n },\n jcb: {prefixes: [['3528', '3589']], lengths: [16, 17, 18, 19]},\n diners: {\n prefixes: [\n ['300', '305'],\n ['3095', '3095'],\n ['36', '36'],\n ['38', '39'],\n ],\n lengths: [14, 15, 16, 17, 18, 19],\n },\n unionpay: {prefixes: [['62', '62']], lengths: [16, 17, 18, 19]},\n maestro: {\n prefixes: [\n ['5018', '5018'],\n ['5020', '5020'],\n ['5038', '5038'],\n ['5893', '5893'],\n ['6304', '6304'],\n ['6759', '6759'],\n ['6761', '6763'],\n ],\n lengths: [12, 13, 14, 15, 16, 17, 18, 19],\n },\n };\n Object.freeze(RULES);\n return function _card_network_rules(): CardNetworkRules {\n return RULES;\n };\n}, cardNetworkRulesId);\n\n// Passes when the number belongs to ANY of the declared networks. Both bounds of a prefix range carry\n// the same number of digits, so a plain string comparison of the equal-length head decides membership\n// without parsing a number. Runs AFTER isCreditCard in the emitted `&&` chain, so the value is already\n// known to be digits (plus separators) of a valid length.\nexport const matchesCardNetwork = registerPureFnFactory(function (utl: RTUtils) {\n const NETWORK_RULES = (utl.getPureFn(cardNetworkRules) as () => CardNetworkRules)();\n return function _matches_card_network(value: string, params: CreditCardParams): boolean {\n const networks = params.networks;\n if (networks === undefined || networks.length === 0) return false;\n const separators = params.separators;\n let digits = value;\n if (separators !== undefined) {\n digits = '';\n for (let i = 0; i < value.length; i++) {\n if (separators.indexOf(value[i]) === -1) digits += value[i];\n }\n }\n for (const network of networks) {\n const rule = NETWORK_RULES[network];\n if (rule === undefined) continue;\n if (rule.lengths.indexOf(digits.length) === -1) continue;\n for (const [low, high] of rule.prefixes) {\n const head = digits.slice(0, low.length);\n if (head >= low && head <= high) return true;\n }\n }\n return false;\n };\n}, matchesCardNetworkId);\n\n// ####### Doors for code OUTSIDE a pure-fn factory (the mock generator) #######\n// A factory body is inlined without its lexical environment, so a factory can only reach a sibling\n// through `utl.getPureFn`. Ordinary code has no such limit, but the keys live here once, behind typed\n// functions, instead of a string key and a cast at every call site.\n// Lazy on purpose: an importer may load before the registrations above run.\n\n/** The per-network prefix and length table the validator checks against. **/\nexport function getCardNetworkRules(): CardNetworkRules {\n return (getRTUtils().getPureFn(cardNetworkRules) as () => CardNetworkRules)();\n}\n\n/** The digit that, appended to `body`, makes it a valid card number. The placeholder `0` puts the\n * body's digits in the SAME doubling positions the validator will see and adds nothing to the sum,\n * so this is the exact inverse of the validator's own check. **/\nexport function luhnCheckDigit(body: string): string {\n const luhnSumFn = getRTUtils().getPureFn(luhnSum) as (value: string) => number;\n return String((10 - (luhnSumFn(body + '0') % 10)) % 10);\n}\n"]}
@@ -1,13 +1,13 @@
1
- export declare const isUUID: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_AgOXcprpjsrTKk">;
2
- export declare const codePointLength: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_Z2sc5xQPKB0oav">;
3
- export declare const isEcmaRegex: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_Qd_9GJQlOCVqDe">;
4
- export declare const punycodeDecode: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_GA20s6bj41GC1A">;
5
- export declare const punycodeEncode: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_5oCqd7YyfA9rEw">;
6
- export declare const isIdnaLabel: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_E29ul2pUOyD_Ay">;
7
- export declare const satisfiesBidi: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_vLId7t0J8HNWlN">;
8
- export declare const isIdnHostname: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_rgWveqNi_HeFF8">;
9
- export declare const isEmailAddress: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_LqTR2O-h6MYq9J">;
10
- export declare const isLocalHost: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_EG8OkOOSnT9bZn">;
11
- export declare const isIPV4: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf__3Pmrr5aNmyNi4">;
12
- export declare const isIPV6: import("../../runtypes/pureFn.ts").PureFnId<"@mionjs/run-types#pf_ndkQPoji6DFHx2">;
1
+ export declare const isUUID: import("../../runtypes/pureFn.ts").PureFnId<"_rt:cK87_2eKQW">;
2
+ export declare const codePointLength: import("../../runtypes/pureFn.ts").PureFnId<"_rt:Z2sc5xQPKB">;
3
+ export declare const isEcmaRegex: import("../../runtypes/pureFn.ts").PureFnId<"_rt:Qd_9GJQlOC">;
4
+ export declare const punycodeDecode: import("../../runtypes/pureFn.ts").PureFnId<"_rt:GA20s6bj41">;
5
+ export declare const punycodeEncode: import("../../runtypes/pureFn.ts").PureFnId<"_rt:5oCqd7YyfA">;
6
+ export declare const isIdnaLabel: import("../../runtypes/pureFn.ts").PureFnId<"_rt:u0Mw9bizvB">;
7
+ export declare const satisfiesBidi: import("../../runtypes/pureFn.ts").PureFnId<"_rt:ICDNQUtC8e">;
8
+ export declare const isIdnHostname: import("../../runtypes/pureFn.ts").PureFnId<"_rt:zaCgqTB_lJ">;
9
+ export declare const isEmailAddress: import("../../runtypes/pureFn.ts").PureFnId<"_rt:gNpMnJMAUE">;
10
+ export declare const isLocalHost: import("../../runtypes/pureFn.ts").PureFnId<"_rt:wSBaXrUNw9">;
11
+ export declare const isIPV4: import("../../runtypes/pureFn.ts").PureFnId<"_rt:0yJQ37XnmN">;
12
+ export declare const isIPV6: import("../../runtypes/pureFn.ts").PureFnId<"_rt:t3CflNaUUJ">;
13
13
  //# sourceMappingURL=string-formats-pure-fns.d.ts.map
@@ -16,6 +16,13 @@ export const isUUID = registerPureFnFactory(null /** isUUIDId hollowed — body
16
16
 
17
17
 
18
18
 
19
+
20
+
21
+
22
+
23
+
24
+
25
+
19
26
 
20
27
 
21
28
 
@@ -418,6 +425,7 @@ export const isIPV4 = registerPureFnFactory(null /** isIPV4Id hollowed — body
418
425
 
419
426
 
420
427
 
428
+
421
429
 
422
430
 
423
431
  */);
@@ -509,6 +517,7 @@ export const isIPV6 = registerPureFnFactory(null /** isIPV6Id hollowed — body
509
517
 
510
518
 
511
519
 
520
+
512
521
 
513
522
 
514
523
  */);