@relative-ci/core 5.4.0 → 6.0.0-beta.4

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 (537) hide show
  1. package/lib/cjs/__/@actions/github/lib/context.js.map +1 -1
  2. package/lib/cjs/__/@actions/github/lib/github.js.map +1 -1
  3. package/lib/cjs/__/@actions/github/lib/internal/utils.js.map +1 -1
  4. package/lib/cjs/__/@actions/github/lib/utils.js.map +1 -1
  5. package/lib/cjs/__/@actions/http-client/lib/index.js +1 -1
  6. package/lib/cjs/__/@actions/http-client/lib/index.js.map +1 -1
  7. package/lib/cjs/__/@actions/http-client/lib/proxy.js.map +1 -1
  8. package/lib/cjs/__/@octokit/auth-token/dist-bundle/index.js.map +1 -1
  9. package/lib/cjs/__/@octokit/core/dist-src/index.js.map +1 -1
  10. package/lib/cjs/__/@octokit/core/dist-src/version.js +1 -1
  11. package/lib/cjs/__/@octokit/core/dist-src/version.js.map +1 -1
  12. package/lib/cjs/__/@octokit/endpoint/dist-bundle/index.js.map +1 -1
  13. package/lib/cjs/__/@octokit/graphql/dist-bundle/index.js +4 -0
  14. package/lib/cjs/__/@octokit/graphql/dist-bundle/index.js.map +1 -1
  15. package/lib/cjs/__/@octokit/plugin-paginate-rest/dist-bundle/index.js.map +1 -1
  16. package/lib/cjs/__/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js.map +1 -1
  17. package/lib/cjs/__/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js.map +1 -1
  18. package/lib/cjs/__/@octokit/plugin-rest-endpoint-methods/dist-src/index.js.map +1 -1
  19. package/lib/cjs/__/@octokit/plugin-rest-endpoint-methods/dist-src/version.js.map +1 -1
  20. package/lib/cjs/__/@octokit/request/dist-bundle/index.js +11 -7
  21. package/lib/cjs/__/@octokit/request/dist-bundle/index.js.map +1 -1
  22. package/lib/cjs/__/@octokit/request-error/dist-src/index.js.map +1 -1
  23. package/lib/cjs/__/before-after-hook/index.js.map +1 -1
  24. package/lib/cjs/__/before-after-hook/lib/add.js.map +1 -1
  25. package/lib/cjs/__/before-after-hook/lib/register.js.map +1 -1
  26. package/lib/cjs/__/before-after-hook/lib/remove.js.map +1 -1
  27. package/lib/cjs/__/content-type/dist/index.js +129 -0
  28. package/lib/cjs/__/content-type/dist/index.js.map +1 -0
  29. package/lib/cjs/__/cross-spawn/index.js +1 -1
  30. package/lib/cjs/__/cross-spawn/index.js.map +1 -1
  31. package/lib/cjs/__/cross-spawn/lib/enoent.js.map +1 -1
  32. package/lib/cjs/__/cross-spawn/lib/parse.js.map +1 -1
  33. package/lib/cjs/__/cross-spawn/lib/util/escape.js.map +1 -1
  34. package/lib/cjs/__/cross-spawn/lib/util/readShebang.js.map +1 -1
  35. package/lib/cjs/__/cross-spawn/lib/util/resolveCommand.js.map +1 -1
  36. package/lib/cjs/__/env-ci/index.js.map +1 -1
  37. package/lib/cjs/__/env-ci/lib/git.js.map +1 -1
  38. package/lib/cjs/__/env-ci/lib/utils.js.map +1 -1
  39. package/lib/cjs/__/env-ci/services/appveyor.js.map +1 -1
  40. package/lib/cjs/__/env-ci/services/azure-pipelines.js.map +1 -1
  41. package/lib/cjs/__/env-ci/services/bamboo.js.map +1 -1
  42. package/lib/cjs/__/env-ci/services/bitbucket.js.map +1 -1
  43. package/lib/cjs/__/env-ci/services/bitrise.js.map +1 -1
  44. package/lib/cjs/__/env-ci/services/buddy.js.map +1 -1
  45. package/lib/cjs/__/env-ci/services/buildkite.js.map +1 -1
  46. package/lib/cjs/__/env-ci/services/circleci.js.map +1 -1
  47. package/lib/cjs/__/env-ci/services/cirrus.js.map +1 -1
  48. package/lib/cjs/__/env-ci/services/cloudflare-pages.js.map +1 -1
  49. package/lib/cjs/__/env-ci/services/codebuild.js.map +1 -1
  50. package/lib/cjs/__/env-ci/services/codefresh.js.map +1 -1
  51. package/lib/cjs/__/env-ci/services/codeship.js.map +1 -1
  52. package/lib/cjs/__/env-ci/services/drone.js.map +1 -1
  53. package/lib/cjs/__/env-ci/services/git.js.map +1 -1
  54. package/lib/cjs/__/env-ci/services/github.js.map +1 -1
  55. package/lib/cjs/__/env-ci/services/gitlab.js.map +1 -1
  56. package/lib/cjs/__/env-ci/services/jenkins.js.map +1 -1
  57. package/lib/cjs/__/env-ci/services/jetbrains-space.js.map +1 -1
  58. package/lib/cjs/__/env-ci/services/netlify.js.map +1 -1
  59. package/lib/cjs/__/env-ci/services/puppet.js.map +1 -1
  60. package/lib/cjs/__/env-ci/services/sail.js.map +1 -1
  61. package/lib/cjs/__/env-ci/services/screwdriver.js.map +1 -1
  62. package/lib/cjs/__/env-ci/services/scrutinizer.js.map +1 -1
  63. package/lib/cjs/__/env-ci/services/semaphore.js.map +1 -1
  64. package/lib/cjs/__/env-ci/services/shippable.js.map +1 -1
  65. package/lib/cjs/__/env-ci/services/teamcity.js.map +1 -1
  66. package/lib/cjs/__/env-ci/services/travis.js.map +1 -1
  67. package/lib/cjs/__/env-ci/services/vela.js.map +1 -1
  68. package/lib/cjs/__/env-ci/services/vercel.js.map +1 -1
  69. package/lib/cjs/__/env-ci/services/wercker.js.map +1 -1
  70. package/lib/cjs/__/env-ci/services/woodpecker.js.map +1 -1
  71. package/lib/cjs/__/execa/index.js.map +1 -1
  72. package/lib/cjs/__/execa/lib/command.js.map +1 -1
  73. package/lib/cjs/__/execa/lib/error.js.map +1 -1
  74. package/lib/cjs/__/execa/lib/promise.js.map +1 -1
  75. package/lib/cjs/__/execa/lib/stdio.js.map +1 -1
  76. package/lib/cjs/__/execa/lib/stream.js.map +1 -1
  77. package/lib/cjs/__/execa/lib/verbose.js.map +1 -1
  78. package/lib/cjs/__/get-stream/source/array-buffer.js.map +1 -1
  79. package/lib/cjs/__/human-signals/build/src/core.js.map +1 -1
  80. package/lib/cjs/__/human-signals/build/src/main.js.map +1 -1
  81. package/lib/cjs/__/human-signals/build/src/realtime.js.map +1 -1
  82. package/lib/cjs/__/human-signals/build/src/signals.js.map +1 -1
  83. package/lib/cjs/__/is-stream/index.js.map +1 -1
  84. package/lib/cjs/__/isexe/index.js.map +1 -1
  85. package/lib/cjs/__/isexe/mode.js.map +1 -1
  86. package/lib/cjs/__/isexe/windows.js.map +1 -1
  87. package/lib/cjs/__/java-properties/dist-node/index.js.map +1 -1
  88. package/lib/cjs/__/json-with-bigint/json-with-bigint.js +420 -61
  89. package/lib/cjs/__/json-with-bigint/json-with-bigint.js.map +1 -1
  90. package/lib/cjs/__/merge-stream/index.js.map +1 -1
  91. package/lib/cjs/__/npm-run-path/__/path-key/index.js.map +1 -1
  92. package/lib/cjs/__/npm-run-path/index.js.map +1 -1
  93. package/lib/cjs/__/path-key/index.js +1 -1
  94. package/lib/cjs/__/path-key/index.js.map +1 -1
  95. package/lib/cjs/__/shebang-command/index.js.map +1 -1
  96. package/lib/cjs/__/shebang-regex/index.js.map +1 -1
  97. package/lib/cjs/__/signal-exit/dist/mjs/index.js.map +1 -1
  98. package/lib/cjs/__/signal-exit/dist/mjs/signals.js.map +1 -1
  99. package/lib/cjs/__/strip-final-newline/index.js.map +1 -1
  100. package/lib/cjs/__/tunnel/index.js.map +1 -1
  101. package/lib/cjs/__/tunnel/lib/tunnel.js.map +1 -1
  102. package/lib/cjs/__/undici/index.js +1 -1
  103. package/lib/cjs/__/undici/index.js.map +1 -1
  104. package/lib/cjs/__/undici/lib/api/abort-signal.js.map +1 -1
  105. package/lib/cjs/__/undici/lib/api/api-connect.js.map +1 -1
  106. package/lib/cjs/__/undici/lib/api/api-pipeline.js.map +1 -1
  107. package/lib/cjs/__/undici/lib/api/api-request.js.map +1 -1
  108. package/lib/cjs/__/undici/lib/api/api-stream.js.map +1 -1
  109. package/lib/cjs/__/undici/lib/api/api-upgrade.js.map +1 -1
  110. package/lib/cjs/__/undici/lib/api/index.js +1 -1
  111. package/lib/cjs/__/undici/lib/api/index.js.map +1 -1
  112. package/lib/cjs/__/undici/lib/api/readable.js.map +1 -1
  113. package/lib/cjs/__/undici/lib/api/util.js.map +1 -1
  114. package/lib/cjs/__/undici/lib/core/connect.js.map +1 -1
  115. package/lib/cjs/__/undici/lib/core/constants.js.map +1 -1
  116. package/lib/cjs/__/undici/lib/core/diagnostics.js.map +1 -1
  117. package/lib/cjs/__/undici/lib/core/errors.js.map +1 -1
  118. package/lib/cjs/__/undici/lib/core/request.js +12 -1
  119. package/lib/cjs/__/undici/lib/core/request.js.map +1 -1
  120. package/lib/cjs/__/undici/lib/core/symbols.js.map +1 -1
  121. package/lib/cjs/__/undici/lib/core/tree.js.map +1 -1
  122. package/lib/cjs/__/undici/lib/core/util.js.map +1 -1
  123. package/lib/cjs/__/undici/lib/dispatcher/agent.js +0 -1
  124. package/lib/cjs/__/undici/lib/dispatcher/agent.js.map +1 -1
  125. package/lib/cjs/__/undici/lib/dispatcher/balanced-pool.js.map +1 -1
  126. package/lib/cjs/__/undici/lib/dispatcher/client-h1.js +159 -25
  127. package/lib/cjs/__/undici/lib/dispatcher/client-h1.js.map +1 -1
  128. package/lib/cjs/__/undici/lib/dispatcher/client-h2.js.map +1 -1
  129. package/lib/cjs/__/undici/lib/dispatcher/client.js.map +1 -1
  130. package/lib/cjs/__/undici/lib/dispatcher/dispatcher-base.js +1 -0
  131. package/lib/cjs/__/undici/lib/dispatcher/dispatcher-base.js.map +1 -1
  132. package/lib/cjs/__/undici/lib/dispatcher/dispatcher.js.map +1 -1
  133. package/lib/cjs/__/undici/lib/dispatcher/env-http-proxy-agent.js.map +1 -1
  134. package/lib/cjs/__/undici/lib/dispatcher/fixed-queue.js.map +1 -1
  135. package/lib/cjs/__/undici/lib/dispatcher/pool-base.js.map +1 -1
  136. package/lib/cjs/__/undici/lib/dispatcher/pool-stats.js.map +1 -1
  137. package/lib/cjs/__/undici/lib/dispatcher/pool.js.map +1 -1
  138. package/lib/cjs/__/undici/lib/dispatcher/proxy-agent.js.map +1 -1
  139. package/lib/cjs/__/undici/lib/dispatcher/retry-agent.js.map +1 -1
  140. package/lib/cjs/__/undici/lib/global.js.map +1 -1
  141. package/lib/cjs/__/undici/lib/handler/decorator-handler.js.map +1 -1
  142. package/lib/cjs/__/undici/lib/handler/redirect-handler.js.map +1 -1
  143. package/lib/cjs/__/undici/lib/handler/retry-handler.js +63 -3
  144. package/lib/cjs/__/undici/lib/handler/retry-handler.js.map +1 -1
  145. package/lib/cjs/__/undici/lib/interceptor/dns.js.map +1 -1
  146. package/lib/cjs/__/undici/lib/interceptor/dump.js.map +1 -1
  147. package/lib/cjs/__/undici/lib/interceptor/redirect-interceptor.js.map +1 -1
  148. package/lib/cjs/__/undici/lib/interceptor/redirect.js.map +1 -1
  149. package/lib/cjs/__/undici/lib/interceptor/retry.js.map +1 -1
  150. package/lib/cjs/__/undici/lib/llhttp/constants.js.map +1 -1
  151. package/lib/cjs/__/undici/lib/llhttp/llhttp-wasm.js.map +1 -1
  152. package/lib/cjs/__/undici/lib/llhttp/llhttp_simd-wasm.js.map +1 -1
  153. package/lib/cjs/__/undici/lib/llhttp/utils.js.map +1 -1
  154. package/lib/cjs/__/undici/lib/mock/mock-agent.js.map +1 -1
  155. package/lib/cjs/__/undici/lib/mock/mock-client.js.map +1 -1
  156. package/lib/cjs/__/undici/lib/mock/mock-errors.js.map +1 -1
  157. package/lib/cjs/__/undici/lib/mock/mock-interceptor.js.map +1 -1
  158. package/lib/cjs/__/undici/lib/mock/mock-pool.js.map +1 -1
  159. package/lib/cjs/__/undici/lib/mock/mock-symbols.js.map +1 -1
  160. package/lib/cjs/__/undici/lib/mock/mock-utils.js.map +1 -1
  161. package/lib/cjs/__/undici/lib/mock/pending-interceptors-formatter.js.map +1 -1
  162. package/lib/cjs/__/undici/lib/mock/pluralizer.js.map +1 -1
  163. package/lib/cjs/__/undici/lib/util/timers.js.map +1 -1
  164. package/lib/cjs/__/undici/lib/web/cache/cache.js.map +1 -1
  165. package/lib/cjs/__/undici/lib/web/cache/cachestorage.js.map +1 -1
  166. package/lib/cjs/__/undici/lib/web/cache/symbols.js.map +1 -1
  167. package/lib/cjs/__/undici/lib/web/cache/util.js.map +1 -1
  168. package/lib/cjs/__/undici/lib/web/cookies/constants.js.map +1 -1
  169. package/lib/cjs/__/undici/lib/web/cookies/index.js.map +1 -1
  170. package/lib/cjs/__/undici/lib/web/cookies/parse.js +16 -23
  171. package/lib/cjs/__/undici/lib/web/cookies/parse.js.map +1 -1
  172. package/lib/cjs/__/undici/lib/web/cookies/util.js +79 -9
  173. package/lib/cjs/__/undici/lib/web/cookies/util.js.map +1 -1
  174. package/lib/cjs/__/undici/lib/web/eventsource/eventsource-stream.js +246 -151
  175. package/lib/cjs/__/undici/lib/web/eventsource/eventsource-stream.js.map +1 -1
  176. package/lib/cjs/__/undici/lib/web/eventsource/eventsource.js.map +1 -1
  177. package/lib/cjs/__/undici/lib/web/eventsource/util.js.map +1 -1
  178. package/lib/cjs/__/undici/lib/web/fetch/body.js.map +1 -1
  179. package/lib/cjs/__/undici/lib/web/fetch/constants.js.map +1 -1
  180. package/lib/cjs/__/undici/lib/web/fetch/data-url.js.map +1 -1
  181. package/lib/cjs/__/undici/lib/web/fetch/dispatcher-weakref.js.map +1 -1
  182. package/lib/cjs/__/undici/lib/web/fetch/file.js.map +1 -1
  183. package/lib/cjs/__/undici/lib/web/fetch/formdata-parser.js.map +1 -1
  184. package/lib/cjs/__/undici/lib/web/fetch/formdata.js.map +1 -1
  185. package/lib/cjs/__/undici/lib/web/fetch/global.js.map +1 -1
  186. package/lib/cjs/__/undici/lib/web/fetch/headers.js.map +1 -1
  187. package/lib/cjs/__/undici/lib/web/fetch/index.js.map +1 -1
  188. package/lib/cjs/__/undici/lib/web/fetch/request.js.map +1 -1
  189. package/lib/cjs/__/undici/lib/web/fetch/response.js.map +1 -1
  190. package/lib/cjs/__/undici/lib/web/fetch/symbols.js.map +1 -1
  191. package/lib/cjs/__/undici/lib/web/fetch/util.js.map +1 -1
  192. package/lib/cjs/__/undici/lib/web/fetch/webidl.js.map +1 -1
  193. package/lib/cjs/__/undici/lib/web/fileapi/encoding.js.map +1 -1
  194. package/lib/cjs/__/undici/lib/web/fileapi/filereader.js.map +1 -1
  195. package/lib/cjs/__/undici/lib/web/fileapi/progressevent.js.map +1 -1
  196. package/lib/cjs/__/undici/lib/web/fileapi/symbols.js.map +1 -1
  197. package/lib/cjs/__/undici/lib/web/fileapi/util.js.map +1 -1
  198. package/lib/cjs/__/undici/lib/web/websocket/connection.js +1 -1
  199. package/lib/cjs/__/undici/lib/web/websocket/connection.js.map +1 -1
  200. package/lib/cjs/__/undici/lib/web/websocket/constants.js.map +1 -1
  201. package/lib/cjs/__/undici/lib/web/websocket/events.js.map +1 -1
  202. package/lib/cjs/__/undici/lib/web/websocket/frame.js.map +1 -1
  203. package/lib/cjs/__/undici/lib/web/websocket/permessage-deflate.js +5 -0
  204. package/lib/cjs/__/undici/lib/web/websocket/permessage-deflate.js.map +1 -1
  205. package/lib/cjs/__/undici/lib/web/websocket/receiver.js +31 -8
  206. package/lib/cjs/__/undici/lib/web/websocket/receiver.js.map +1 -1
  207. package/lib/cjs/__/undici/lib/web/websocket/sender.js.map +1 -1
  208. package/lib/cjs/__/undici/lib/web/websocket/symbols.js.map +1 -1
  209. package/lib/cjs/__/undici/lib/web/websocket/util.js.map +1 -1
  210. package/lib/cjs/__/undici/lib/web/websocket/websocket.js +4 -1
  211. package/lib/cjs/__/undici/lib/web/websocket/websocket.js.map +1 -1
  212. package/lib/cjs/__/universal-user-agent/index.js.map +1 -1
  213. package/lib/cjs/__/which/which.js.map +1 -1
  214. package/lib/cjs/_virtual/_commonjsHelpers.js +1 -1
  215. package/lib/cjs/_virtual/_commonjsHelpers.js.map +1 -1
  216. package/lib/cjs/_virtual/api-request.js.map +1 -1
  217. package/lib/cjs/_virtual/constants.js.map +1 -1
  218. package/lib/cjs/_virtual/context.js.map +1 -1
  219. package/lib/cjs/_virtual/escape.js.map +1 -1
  220. package/lib/cjs/_virtual/github.js.map +1 -1
  221. package/lib/cjs/_virtual/github2.js.map +1 -1
  222. package/lib/cjs/_virtual/index.js.map +1 -1
  223. package/lib/cjs/_virtual/index10.js +2 -2
  224. package/lib/cjs/_virtual/index10.js.map +1 -1
  225. package/lib/cjs/_virtual/index11.js +2 -2
  226. package/lib/cjs/_virtual/index11.js.map +1 -1
  227. package/lib/cjs/_virtual/index12.js +2 -2
  228. package/lib/cjs/_virtual/index12.js.map +1 -1
  229. package/lib/cjs/_virtual/index2.js.map +1 -1
  230. package/lib/cjs/_virtual/index3.js.map +1 -1
  231. package/lib/cjs/_virtual/index4.js.map +1 -1
  232. package/lib/cjs/_virtual/index5.js.map +1 -1
  233. package/lib/cjs/_virtual/index6.js.map +1 -1
  234. package/lib/cjs/_virtual/index7.js.map +1 -1
  235. package/lib/cjs/_virtual/index8.js +2 -2
  236. package/lib/cjs/_virtual/index8.js.map +1 -1
  237. package/lib/cjs/_virtual/index9.js +2 -4
  238. package/lib/cjs/_virtual/index9.js.map +1 -1
  239. package/lib/cjs/_virtual/mock-interceptor.js.map +1 -1
  240. package/lib/cjs/_virtual/proxy.js.map +1 -1
  241. package/lib/cjs/_virtual/tunnel.js.map +1 -1
  242. package/lib/cjs/_virtual/utils.js.map +1 -1
  243. package/lib/cjs/_virtual/utils2.js.map +1 -1
  244. package/lib/cjs/_virtual/utils3.js.map +1 -1
  245. package/lib/cjs/artifacts/filter-artifacts.js.map +1 -1
  246. package/lib/cjs/artifacts/validate-webpack-stats.js.map +1 -1
  247. package/lib/cjs/constants.js.map +1 -1
  248. package/lib/cjs/env/agent-env.js.map +1 -1
  249. package/lib/cjs/env/ci-env.js.map +1 -1
  250. package/lib/cjs/env/git/commit-message.js.map +1 -1
  251. package/lib/cjs/env/git/slug.js.map +1 -1
  252. package/lib/cjs/env/load.js +1 -1
  253. package/lib/cjs/env/load.js.map +1 -1
  254. package/lib/cjs/env/service/github.js.map +1 -1
  255. package/lib/cjs/ingest/ingest.js.map +1 -1
  256. package/lib/cjs/locales/en.js.map +1 -1
  257. package/lib/cjs/process.env.js.map +1 -1
  258. package/lib/cjs/utils/debug.js.map +1 -1
  259. package/lib/cjs/utils/file-size.js.map +1 -1
  260. package/lib/cjs/utils/log-response.js.map +1 -1
  261. package/lib/cjs/utils/logger.js.map +1 -1
  262. package/lib/cjs/utils/mask-object-property.js.map +1 -1
  263. package/lib/cjs/utils/round.js.map +1 -1
  264. package/lib/esm/__/@actions/github/lib/context.js.map +1 -1
  265. package/lib/esm/__/@actions/github/lib/github.js.map +1 -1
  266. package/lib/esm/__/@actions/github/lib/internal/utils.js.map +1 -1
  267. package/lib/esm/__/@actions/github/lib/utils.js.map +1 -1
  268. package/lib/esm/__/@actions/http-client/lib/index.js +1 -1
  269. package/lib/esm/__/@actions/http-client/lib/index.js.map +1 -1
  270. package/lib/esm/__/@actions/http-client/lib/proxy.js.map +1 -1
  271. package/lib/esm/__/@octokit/auth-token/dist-bundle/index.js.map +1 -1
  272. package/lib/esm/__/@octokit/core/dist-src/index.js.map +1 -1
  273. package/lib/esm/__/@octokit/core/dist-src/version.js +1 -1
  274. package/lib/esm/__/@octokit/core/dist-src/version.js.map +1 -1
  275. package/lib/esm/__/@octokit/endpoint/dist-bundle/index.js.map +1 -1
  276. package/lib/esm/__/@octokit/graphql/dist-bundle/index.js +4 -0
  277. package/lib/esm/__/@octokit/graphql/dist-bundle/index.js.map +1 -1
  278. package/lib/esm/__/@octokit/plugin-paginate-rest/dist-bundle/index.js.map +1 -1
  279. package/lib/esm/__/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js.map +1 -1
  280. package/lib/esm/__/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js.map +1 -1
  281. package/lib/esm/__/@octokit/plugin-rest-endpoint-methods/dist-src/index.js.map +1 -1
  282. package/lib/esm/__/@octokit/plugin-rest-endpoint-methods/dist-src/version.js.map +1 -1
  283. package/lib/esm/__/@octokit/request/dist-bundle/index.js +11 -7
  284. package/lib/esm/__/@octokit/request/dist-bundle/index.js.map +1 -1
  285. package/lib/esm/__/@octokit/request-error/dist-src/index.js.map +1 -1
  286. package/lib/esm/__/before-after-hook/index.js.map +1 -1
  287. package/lib/esm/__/before-after-hook/lib/add.js.map +1 -1
  288. package/lib/esm/__/before-after-hook/lib/register.js.map +1 -1
  289. package/lib/esm/__/before-after-hook/lib/remove.js.map +1 -1
  290. package/lib/esm/__/content-type/dist/index.js +127 -0
  291. package/lib/esm/__/content-type/dist/index.js.map +1 -0
  292. package/lib/esm/__/cross-spawn/index.js +1 -1
  293. package/lib/esm/__/cross-spawn/index.js.map +1 -1
  294. package/lib/esm/__/cross-spawn/lib/enoent.js.map +1 -1
  295. package/lib/esm/__/cross-spawn/lib/parse.js.map +1 -1
  296. package/lib/esm/__/cross-spawn/lib/util/escape.js.map +1 -1
  297. package/lib/esm/__/cross-spawn/lib/util/readShebang.js.map +1 -1
  298. package/lib/esm/__/cross-spawn/lib/util/resolveCommand.js.map +1 -1
  299. package/lib/esm/__/env-ci/index.js.map +1 -1
  300. package/lib/esm/__/env-ci/lib/git.js.map +1 -1
  301. package/lib/esm/__/env-ci/lib/utils.js.map +1 -1
  302. package/lib/esm/__/env-ci/services/appveyor.js.map +1 -1
  303. package/lib/esm/__/env-ci/services/azure-pipelines.js.map +1 -1
  304. package/lib/esm/__/env-ci/services/bamboo.js.map +1 -1
  305. package/lib/esm/__/env-ci/services/bitbucket.js.map +1 -1
  306. package/lib/esm/__/env-ci/services/bitrise.js.map +1 -1
  307. package/lib/esm/__/env-ci/services/buddy.js.map +1 -1
  308. package/lib/esm/__/env-ci/services/buildkite.js.map +1 -1
  309. package/lib/esm/__/env-ci/services/circleci.js.map +1 -1
  310. package/lib/esm/__/env-ci/services/cirrus.js.map +1 -1
  311. package/lib/esm/__/env-ci/services/cloudflare-pages.js.map +1 -1
  312. package/lib/esm/__/env-ci/services/codebuild.js.map +1 -1
  313. package/lib/esm/__/env-ci/services/codefresh.js.map +1 -1
  314. package/lib/esm/__/env-ci/services/codeship.js.map +1 -1
  315. package/lib/esm/__/env-ci/services/drone.js.map +1 -1
  316. package/lib/esm/__/env-ci/services/git.js.map +1 -1
  317. package/lib/esm/__/env-ci/services/github.js.map +1 -1
  318. package/lib/esm/__/env-ci/services/gitlab.js.map +1 -1
  319. package/lib/esm/__/env-ci/services/jenkins.js.map +1 -1
  320. package/lib/esm/__/env-ci/services/jetbrains-space.js.map +1 -1
  321. package/lib/esm/__/env-ci/services/netlify.js.map +1 -1
  322. package/lib/esm/__/env-ci/services/puppet.js.map +1 -1
  323. package/lib/esm/__/env-ci/services/sail.js.map +1 -1
  324. package/lib/esm/__/env-ci/services/screwdriver.js.map +1 -1
  325. package/lib/esm/__/env-ci/services/scrutinizer.js.map +1 -1
  326. package/lib/esm/__/env-ci/services/semaphore.js.map +1 -1
  327. package/lib/esm/__/env-ci/services/shippable.js.map +1 -1
  328. package/lib/esm/__/env-ci/services/teamcity.js.map +1 -1
  329. package/lib/esm/__/env-ci/services/travis.js.map +1 -1
  330. package/lib/esm/__/env-ci/services/vela.js.map +1 -1
  331. package/lib/esm/__/env-ci/services/vercel.js.map +1 -1
  332. package/lib/esm/__/env-ci/services/wercker.js.map +1 -1
  333. package/lib/esm/__/env-ci/services/woodpecker.js.map +1 -1
  334. package/lib/esm/__/execa/index.js.map +1 -1
  335. package/lib/esm/__/execa/lib/command.js.map +1 -1
  336. package/lib/esm/__/execa/lib/error.js.map +1 -1
  337. package/lib/esm/__/execa/lib/stdio.js.map +1 -1
  338. package/lib/esm/__/execa/lib/stream.js.map +1 -1
  339. package/lib/esm/__/execa/lib/verbose.js.map +1 -1
  340. package/lib/esm/__/human-signals/build/src/core.js.map +1 -1
  341. package/lib/esm/__/human-signals/build/src/main.js.map +1 -1
  342. package/lib/esm/__/human-signals/build/src/realtime.js.map +1 -1
  343. package/lib/esm/__/human-signals/build/src/signals.js.map +1 -1
  344. package/lib/esm/__/is-stream/index.js.map +1 -1
  345. package/lib/esm/__/isexe/index.js.map +1 -1
  346. package/lib/esm/__/isexe/mode.js.map +1 -1
  347. package/lib/esm/__/isexe/windows.js.map +1 -1
  348. package/lib/esm/__/java-properties/dist-node/index.js.map +1 -1
  349. package/lib/esm/__/json-with-bigint/json-with-bigint.js +420 -61
  350. package/lib/esm/__/json-with-bigint/json-with-bigint.js.map +1 -1
  351. package/lib/esm/__/merge-stream/index.js.map +1 -1
  352. package/lib/esm/__/npm-run-path/__/path-key/index.js.map +1 -1
  353. package/lib/esm/__/npm-run-path/index.js.map +1 -1
  354. package/lib/esm/__/path-key/index.js +1 -1
  355. package/lib/esm/__/path-key/index.js.map +1 -1
  356. package/lib/esm/__/shebang-command/index.js.map +1 -1
  357. package/lib/esm/__/shebang-regex/index.js.map +1 -1
  358. package/lib/esm/__/signal-exit/dist/mjs/index.js.map +1 -1
  359. package/lib/esm/__/signal-exit/dist/mjs/signals.js.map +1 -1
  360. package/lib/esm/__/strip-final-newline/index.js.map +1 -1
  361. package/lib/esm/__/tunnel/index.js.map +1 -1
  362. package/lib/esm/__/tunnel/lib/tunnel.js.map +1 -1
  363. package/lib/esm/__/undici/index.js +1 -1
  364. package/lib/esm/__/undici/index.js.map +1 -1
  365. package/lib/esm/__/undici/lib/api/abort-signal.js.map +1 -1
  366. package/lib/esm/__/undici/lib/api/api-connect.js.map +1 -1
  367. package/lib/esm/__/undici/lib/api/api-pipeline.js.map +1 -1
  368. package/lib/esm/__/undici/lib/api/api-request.js.map +1 -1
  369. package/lib/esm/__/undici/lib/api/api-stream.js.map +1 -1
  370. package/lib/esm/__/undici/lib/api/api-upgrade.js.map +1 -1
  371. package/lib/esm/__/undici/lib/api/index.js +1 -1
  372. package/lib/esm/__/undici/lib/api/index.js.map +1 -1
  373. package/lib/esm/__/undici/lib/api/readable.js.map +1 -1
  374. package/lib/esm/__/undici/lib/api/util.js.map +1 -1
  375. package/lib/esm/__/undici/lib/core/connect.js.map +1 -1
  376. package/lib/esm/__/undici/lib/core/constants.js.map +1 -1
  377. package/lib/esm/__/undici/lib/core/diagnostics.js.map +1 -1
  378. package/lib/esm/__/undici/lib/core/errors.js.map +1 -1
  379. package/lib/esm/__/undici/lib/core/request.js +12 -1
  380. package/lib/esm/__/undici/lib/core/request.js.map +1 -1
  381. package/lib/esm/__/undici/lib/core/symbols.js.map +1 -1
  382. package/lib/esm/__/undici/lib/core/tree.js.map +1 -1
  383. package/lib/esm/__/undici/lib/core/util.js.map +1 -1
  384. package/lib/esm/__/undici/lib/dispatcher/agent.js +0 -1
  385. package/lib/esm/__/undici/lib/dispatcher/agent.js.map +1 -1
  386. package/lib/esm/__/undici/lib/dispatcher/balanced-pool.js.map +1 -1
  387. package/lib/esm/__/undici/lib/dispatcher/client-h1.js +159 -25
  388. package/lib/esm/__/undici/lib/dispatcher/client-h1.js.map +1 -1
  389. package/lib/esm/__/undici/lib/dispatcher/client-h2.js.map +1 -1
  390. package/lib/esm/__/undici/lib/dispatcher/client.js.map +1 -1
  391. package/lib/esm/__/undici/lib/dispatcher/dispatcher-base.js +1 -0
  392. package/lib/esm/__/undici/lib/dispatcher/dispatcher-base.js.map +1 -1
  393. package/lib/esm/__/undici/lib/dispatcher/dispatcher.js.map +1 -1
  394. package/lib/esm/__/undici/lib/dispatcher/env-http-proxy-agent.js.map +1 -1
  395. package/lib/esm/__/undici/lib/dispatcher/fixed-queue.js.map +1 -1
  396. package/lib/esm/__/undici/lib/dispatcher/pool-base.js.map +1 -1
  397. package/lib/esm/__/undici/lib/dispatcher/pool-stats.js.map +1 -1
  398. package/lib/esm/__/undici/lib/dispatcher/pool.js.map +1 -1
  399. package/lib/esm/__/undici/lib/dispatcher/proxy-agent.js.map +1 -1
  400. package/lib/esm/__/undici/lib/dispatcher/retry-agent.js.map +1 -1
  401. package/lib/esm/__/undici/lib/global.js.map +1 -1
  402. package/lib/esm/__/undici/lib/handler/decorator-handler.js.map +1 -1
  403. package/lib/esm/__/undici/lib/handler/redirect-handler.js.map +1 -1
  404. package/lib/esm/__/undici/lib/handler/retry-handler.js +63 -3
  405. package/lib/esm/__/undici/lib/handler/retry-handler.js.map +1 -1
  406. package/lib/esm/__/undici/lib/interceptor/dns.js.map +1 -1
  407. package/lib/esm/__/undici/lib/interceptor/dump.js.map +1 -1
  408. package/lib/esm/__/undici/lib/interceptor/redirect-interceptor.js.map +1 -1
  409. package/lib/esm/__/undici/lib/interceptor/redirect.js.map +1 -1
  410. package/lib/esm/__/undici/lib/interceptor/retry.js.map +1 -1
  411. package/lib/esm/__/undici/lib/llhttp/constants.js.map +1 -1
  412. package/lib/esm/__/undici/lib/llhttp/llhttp-wasm.js.map +1 -1
  413. package/lib/esm/__/undici/lib/llhttp/llhttp_simd-wasm.js.map +1 -1
  414. package/lib/esm/__/undici/lib/llhttp/utils.js.map +1 -1
  415. package/lib/esm/__/undici/lib/mock/mock-agent.js.map +1 -1
  416. package/lib/esm/__/undici/lib/mock/mock-client.js.map +1 -1
  417. package/lib/esm/__/undici/lib/mock/mock-errors.js.map +1 -1
  418. package/lib/esm/__/undici/lib/mock/mock-interceptor.js.map +1 -1
  419. package/lib/esm/__/undici/lib/mock/mock-pool.js.map +1 -1
  420. package/lib/esm/__/undici/lib/mock/mock-symbols.js.map +1 -1
  421. package/lib/esm/__/undici/lib/mock/mock-utils.js.map +1 -1
  422. package/lib/esm/__/undici/lib/mock/pending-interceptors-formatter.js.map +1 -1
  423. package/lib/esm/__/undici/lib/mock/pluralizer.js.map +1 -1
  424. package/lib/esm/__/undici/lib/util/timers.js.map +1 -1
  425. package/lib/esm/__/undici/lib/web/cache/cache.js.map +1 -1
  426. package/lib/esm/__/undici/lib/web/cache/cachestorage.js.map +1 -1
  427. package/lib/esm/__/undici/lib/web/cache/symbols.js.map +1 -1
  428. package/lib/esm/__/undici/lib/web/cache/util.js.map +1 -1
  429. package/lib/esm/__/undici/lib/web/cookies/constants.js.map +1 -1
  430. package/lib/esm/__/undici/lib/web/cookies/index.js.map +1 -1
  431. package/lib/esm/__/undici/lib/web/cookies/parse.js +16 -23
  432. package/lib/esm/__/undici/lib/web/cookies/parse.js.map +1 -1
  433. package/lib/esm/__/undici/lib/web/cookies/util.js +79 -9
  434. package/lib/esm/__/undici/lib/web/cookies/util.js.map +1 -1
  435. package/lib/esm/__/undici/lib/web/eventsource/eventsource-stream.js +246 -151
  436. package/lib/esm/__/undici/lib/web/eventsource/eventsource-stream.js.map +1 -1
  437. package/lib/esm/__/undici/lib/web/eventsource/eventsource.js.map +1 -1
  438. package/lib/esm/__/undici/lib/web/eventsource/util.js.map +1 -1
  439. package/lib/esm/__/undici/lib/web/fetch/body.js.map +1 -1
  440. package/lib/esm/__/undici/lib/web/fetch/constants.js.map +1 -1
  441. package/lib/esm/__/undici/lib/web/fetch/data-url.js.map +1 -1
  442. package/lib/esm/__/undici/lib/web/fetch/dispatcher-weakref.js.map +1 -1
  443. package/lib/esm/__/undici/lib/web/fetch/file.js.map +1 -1
  444. package/lib/esm/__/undici/lib/web/fetch/formdata-parser.js.map +1 -1
  445. package/lib/esm/__/undici/lib/web/fetch/formdata.js.map +1 -1
  446. package/lib/esm/__/undici/lib/web/fetch/global.js.map +1 -1
  447. package/lib/esm/__/undici/lib/web/fetch/headers.js.map +1 -1
  448. package/lib/esm/__/undici/lib/web/fetch/index.js.map +1 -1
  449. package/lib/esm/__/undici/lib/web/fetch/request.js.map +1 -1
  450. package/lib/esm/__/undici/lib/web/fetch/response.js.map +1 -1
  451. package/lib/esm/__/undici/lib/web/fetch/symbols.js.map +1 -1
  452. package/lib/esm/__/undici/lib/web/fetch/util.js.map +1 -1
  453. package/lib/esm/__/undici/lib/web/fetch/webidl.js.map +1 -1
  454. package/lib/esm/__/undici/lib/web/fileapi/encoding.js.map +1 -1
  455. package/lib/esm/__/undici/lib/web/fileapi/filereader.js.map +1 -1
  456. package/lib/esm/__/undici/lib/web/fileapi/progressevent.js.map +1 -1
  457. package/lib/esm/__/undici/lib/web/fileapi/symbols.js.map +1 -1
  458. package/lib/esm/__/undici/lib/web/fileapi/util.js.map +1 -1
  459. package/lib/esm/__/undici/lib/web/websocket/connection.js +1 -1
  460. package/lib/esm/__/undici/lib/web/websocket/connection.js.map +1 -1
  461. package/lib/esm/__/undici/lib/web/websocket/constants.js.map +1 -1
  462. package/lib/esm/__/undici/lib/web/websocket/events.js.map +1 -1
  463. package/lib/esm/__/undici/lib/web/websocket/frame.js.map +1 -1
  464. package/lib/esm/__/undici/lib/web/websocket/permessage-deflate.js +5 -0
  465. package/lib/esm/__/undici/lib/web/websocket/permessage-deflate.js.map +1 -1
  466. package/lib/esm/__/undici/lib/web/websocket/receiver.js +31 -8
  467. package/lib/esm/__/undici/lib/web/websocket/receiver.js.map +1 -1
  468. package/lib/esm/__/undici/lib/web/websocket/sender.js.map +1 -1
  469. package/lib/esm/__/undici/lib/web/websocket/symbols.js.map +1 -1
  470. package/lib/esm/__/undici/lib/web/websocket/util.js.map +1 -1
  471. package/lib/esm/__/undici/lib/web/websocket/websocket.js +4 -1
  472. package/lib/esm/__/undici/lib/web/websocket/websocket.js.map +1 -1
  473. package/lib/esm/__/universal-user-agent/index.js.map +1 -1
  474. package/lib/esm/__/which/which.js.map +1 -1
  475. package/lib/esm/_virtual/_commonjsHelpers.js +1 -1
  476. package/lib/esm/_virtual/_commonjsHelpers.js.map +1 -1
  477. package/lib/esm/_virtual/api-request.js.map +1 -1
  478. package/lib/esm/_virtual/constants.js.map +1 -1
  479. package/lib/esm/_virtual/context.js.map +1 -1
  480. package/lib/esm/_virtual/escape.js.map +1 -1
  481. package/lib/esm/_virtual/github.js.map +1 -1
  482. package/lib/esm/_virtual/github2.js.map +1 -1
  483. package/lib/esm/_virtual/index.js.map +1 -1
  484. package/lib/esm/_virtual/index10.js +2 -2
  485. package/lib/esm/_virtual/index10.js.map +1 -1
  486. package/lib/esm/_virtual/index11.js +2 -2
  487. package/lib/esm/_virtual/index11.js.map +1 -1
  488. package/lib/esm/_virtual/index12.js +2 -2
  489. package/lib/esm/_virtual/index12.js.map +1 -1
  490. package/lib/esm/_virtual/index2.js.map +1 -1
  491. package/lib/esm/_virtual/index3.js.map +1 -1
  492. package/lib/esm/_virtual/index4.js.map +1 -1
  493. package/lib/esm/_virtual/index5.js.map +1 -1
  494. package/lib/esm/_virtual/index6.js.map +1 -1
  495. package/lib/esm/_virtual/index8.js +2 -2
  496. package/lib/esm/_virtual/index8.js.map +1 -1
  497. package/lib/esm/_virtual/index9.js +2 -4
  498. package/lib/esm/_virtual/index9.js.map +1 -1
  499. package/lib/esm/_virtual/mock-interceptor.js.map +1 -1
  500. package/lib/esm/_virtual/proxy.js.map +1 -1
  501. package/lib/esm/_virtual/tunnel.js.map +1 -1
  502. package/lib/esm/_virtual/utils.js.map +1 -1
  503. package/lib/esm/_virtual/utils2.js.map +1 -1
  504. package/lib/esm/_virtual/utils3.js.map +1 -1
  505. package/lib/esm/artifacts/filter-artifacts.js.map +1 -1
  506. package/lib/esm/artifacts/validate-webpack-stats.js.map +1 -1
  507. package/lib/esm/constants.js.map +1 -1
  508. package/lib/esm/env/agent-env.js.map +1 -1
  509. package/lib/esm/env/ci-env.js.map +1 -1
  510. package/lib/esm/env/git/commit-message.js.map +1 -1
  511. package/lib/esm/env/git/slug.js.map +1 -1
  512. package/lib/esm/env/load.js +1 -1
  513. package/lib/esm/env/load.js.map +1 -1
  514. package/lib/esm/env/service/github.js.map +1 -1
  515. package/lib/esm/index.js +2 -2
  516. package/lib/esm/ingest/ingest.js.map +1 -1
  517. package/lib/esm/locales/en.js.map +1 -1
  518. package/lib/esm/process.env.js.map +1 -1
  519. package/lib/esm/utils/debug.js.map +1 -1
  520. package/lib/esm/utils/file-size.js.map +1 -1
  521. package/lib/esm/utils/log-response.js.map +1 -1
  522. package/lib/esm/utils/logger.js.map +1 -1
  523. package/lib/esm/utils/mask-object-property.js.map +1 -1
  524. package/lib/esm/utils/round.js.map +1 -1
  525. package/package.json +14 -14
  526. package/lib/cjs/__/fast-content-type-parse/index.js +0 -182
  527. package/lib/cjs/__/fast-content-type-parse/index.js.map +0 -1
  528. package/lib/cjs/_virtual/index13.js +0 -6
  529. package/lib/cjs/_virtual/index13.js.map +0 -1
  530. package/lib/cjs/_virtual/index14.js +0 -6
  531. package/lib/cjs/_virtual/index14.js.map +0 -1
  532. package/lib/esm/__/fast-content-type-parse/index.js +0 -180
  533. package/lib/esm/__/fast-content-type-parse/index.js.map +0 -1
  534. package/lib/esm/_virtual/index13.js +0 -4
  535. package/lib/esm/_virtual/index13.js.map +0 -1
  536. package/lib/esm/_virtual/index14.js +0 -4
  537. package/lib/esm/_virtual/index14.js.map +0 -1
@@ -4,15 +4,251 @@ const originalStringify = JSON.stringify;
4
4
  const originalParse = JSON.parse;
5
5
  const customFormat = /^-?\d+n$/;
6
6
 
7
- const bigIntsStringify = /([\[:])?"(-?\d+)n"($|([\\n]|\s)*(\s|[\\n])*[,\}\]])/g;
8
- const noiseStringify =
9
- /([\[:])?("-?\d+n+)n("$|"([\\n]|\s)*(\s|[\\n])*[,\}\]])/g;
7
+ const bigIntsStringify = /([\[:])?"(-?\d+)n"($|\s*[,\}\]])/g;
8
+ const noiseStringify = /([\[:])?("-?\d+n+)n("$|"\s*[,\}\]])/g;
10
9
 
11
10
  /**
12
11
  * @typedef {(this: any, key: string | number | undefined, value: any) => any} Replacer
13
12
  * @typedef {(key: string | number | undefined, value: any, context?: { source: string }) => any} Reviver
14
13
  */
15
14
 
15
+ /**
16
+ * Checks if a value is unstringifiable according to native JSON.stringify rules.
17
+ *
18
+ * @param {any} val The value to check.
19
+ * @returns {boolean} True if the value is undefined, a function, or a symbol.
20
+ */
21
+ const isUnstringifiable = (val) =>
22
+ val === undefined || typeof val === "function" || typeof val === "symbol";
23
+
24
+ /**
25
+ * Checks if a value is a native JSON.rawJSON object (Node.js 22+).
26
+ *
27
+ * @param {any} val The value to check.
28
+ * @returns {boolean} True if the value is a RawJSON instance.
29
+ */
30
+ const isRawJSON = (val) =>
31
+ val !== null &&
32
+ typeof val === "object" &&
33
+ val.constructor &&
34
+ val.constructor.name === "RawJSON";
35
+
36
+ /**
37
+ * Iteratively converts a JS value to a JSON string.
38
+ * Used as a fallback when the native JSON.stringify hits the Maximum Call Stack size.
39
+ * Fully compliant with JSON formatting (space), replacers, and toJSON behaviors.
40
+ *
41
+ * @param {any} rootValue The value to stringify.
42
+ * @param {Replacer | Array<string | number> | null} [replacer] User's custom replacer function.
43
+ * @param {string | number} [spaceParam] Indentation for pretty-printing.
44
+ * @returns {string | undefined} The generated JSON string.
45
+ */
46
+ const stringifyIteratively = (rootValue, replacer, spaceParam) => {
47
+ let space = "";
48
+ const propertyList = Array.isArray(replacer)
49
+ ? new Set(replacer.map(String))
50
+ : null;
51
+
52
+ /**
53
+ * Prepares a value for stringification by resolving toJSON, handling BigInts,
54
+ * applying custom replacers, and unwrapping primitive objects.
55
+ *
56
+ * @param {object|Array} parent The parent object or array holding the value.
57
+ * @param {string} key The key associated with the value.
58
+ * @param {any} val The raw value to process.
59
+ * @returns {any} The processed value ready for stringification.
60
+ */
61
+ const prepareVal = (parent, key, val) => {
62
+ const isObject = val !== null && typeof val === "object";
63
+ const hasToJSON = isObject && typeof val.toJSON === "function";
64
+
65
+ if (hasToJSON) {
66
+ val = val.toJSON(key);
67
+ }
68
+
69
+ const isNoise = typeof val === "string" && noiseValue.test(val);
70
+
71
+ if (isNoise) return val + "n";
72
+
73
+ const isBigInt = typeof val === "bigint";
74
+
75
+ if (isBigInt) {
76
+ const supportsRawJSON = "rawJSON" in JSON;
77
+
78
+ if (supportsRawJSON) return JSON.rawJSON(val.toString());
79
+
80
+ return val.toString() + "n";
81
+ }
82
+
83
+ const isPostReplacerObject = val !== null && typeof val === "object";
84
+
85
+ if (isPostReplacerObject) {
86
+ const isPrimitiveWrapper =
87
+ val instanceof Number ||
88
+ val instanceof String ||
89
+ val instanceof Boolean;
90
+
91
+ if (isPrimitiveWrapper) {
92
+ val = val.valueOf();
93
+ }
94
+ }
95
+
96
+ return val;
97
+ };
98
+
99
+ const rootProcessed = prepareVal({ }, "", rootValue);
100
+
101
+ if (isUnstringifiable(rootProcessed)) {
102
+ return undefined;
103
+ }
104
+
105
+ const isRootPrimitive =
106
+ rootProcessed === null || typeof rootProcessed !== "object";
107
+ const isRootNativeRawJSON = isRawJSON(rootProcessed);
108
+
109
+ if (isRootPrimitive || isRootNativeRawJSON) {
110
+ return originalStringify(rootProcessed);
111
+ }
112
+
113
+ const chunks = [];
114
+
115
+ const stack = [
116
+ {
117
+ parent: { "": rootProcessed },
118
+ key: "",
119
+ val: rootProcessed,
120
+ isArray: Array.isArray(rootProcessed),
121
+ keys: Array.isArray(rootProcessed) ? null : Object.keys(rootProcessed),
122
+ index: 0,
123
+ first: true,
124
+ },
125
+ ];
126
+
127
+ const visited = new WeakSet([rootProcessed]);
128
+
129
+ while (stack.length > 0) {
130
+ const node = stack[stack.length - 1];
131
+
132
+ if (node.index === 0) {
133
+ chunks.push(node.isArray ? "[" : "{");
134
+ }
135
+
136
+ let isDone = false;
137
+
138
+ if (node.isArray) {
139
+ if (node.index < node.val.length) {
140
+ if (!node.first) chunks.push(",");
141
+
142
+ const childRaw = node.val[node.index];
143
+ const childVal = prepareVal(node.val, String(node.index), childRaw);
144
+
145
+ if (isUnstringifiable(childVal)) {
146
+ chunks.push("null");
147
+ node.first = false;
148
+ node.index++;
149
+ } else {
150
+ const isComplexObject =
151
+ childVal !== null && typeof childVal === "object";
152
+ const isNativeRaw = isRawJSON(childVal);
153
+
154
+ if (isComplexObject && !isNativeRaw) {
155
+ if (visited.has(childVal)) {
156
+ throw new TypeError("Converting circular structure to JSON");
157
+ }
158
+
159
+ visited.add(childVal);
160
+
161
+ stack.push({
162
+ parent: node.val,
163
+ key: String(node.index),
164
+ val: childVal,
165
+ isArray: Array.isArray(childVal),
166
+ keys: Array.isArray(childVal) ? null : Object.keys(childVal),
167
+ index: 0,
168
+ first: true,
169
+ });
170
+
171
+ node.first = false;
172
+ node.index++;
173
+ } else {
174
+ chunks.push(originalStringify(childVal));
175
+ node.first = false;
176
+ node.index++;
177
+ }
178
+ }
179
+ } else {
180
+ isDone = true;
181
+ }
182
+ } else {
183
+ while (node.index < node.keys.length) {
184
+ const k = node.keys[node.index++];
185
+
186
+ const isFilteredOutByArray = propertyList && !propertyList.has(k);
187
+
188
+ if (isFilteredOutByArray) continue;
189
+
190
+ const childRaw = node.val[k];
191
+ const childVal = prepareVal(node.val, k, childRaw);
192
+
193
+ if (isUnstringifiable(childVal)) continue;
194
+
195
+ if (!node.first) chunks.push(",");
196
+
197
+ {
198
+ chunks.push(originalStringify(k) + ":");
199
+ }
200
+
201
+ const isComplexObject =
202
+ childVal !== null && typeof childVal === "object";
203
+ const isNativeRaw = isRawJSON(childVal);
204
+
205
+ if (isComplexObject && !isNativeRaw) {
206
+ if (visited.has(childVal)) {
207
+ throw new TypeError("Converting circular structure to JSON");
208
+ }
209
+
210
+ visited.add(childVal);
211
+
212
+ stack.push({
213
+ parent: node.val,
214
+ key: k,
215
+ val: childVal,
216
+ isArray: Array.isArray(childVal),
217
+ keys: Array.isArray(childVal) ? null : Object.keys(childVal),
218
+ index: 0,
219
+ first: true,
220
+ });
221
+
222
+ node.first = false;
223
+
224
+ break; // Stop current loop level to process the newly pushed stack node
225
+ } else {
226
+ chunks.push(originalStringify(childVal));
227
+ node.first = false;
228
+ }
229
+ }
230
+
231
+ const isNodeFullyProcessed =
232
+ node.index >= node.keys.length && stack[stack.length - 1] === node;
233
+
234
+ if (isNodeFullyProcessed) {
235
+ isDone = true;
236
+ }
237
+ }
238
+
239
+ if (isDone) {
240
+
241
+ if (!node.first && space) ;
242
+
243
+ chunks.push(node.isArray ? "]" : "}");
244
+ visited.delete(node.val);
245
+ stack.pop();
246
+ }
247
+ }
248
+
249
+ return chunks.join("");
250
+ };
251
+
16
252
  /**
17
253
  * Converts a JavaScript value to a JSON string.
18
254
  *
@@ -24,51 +260,87 @@ const noiseStringify =
24
260
  *
25
261
  * @param {*} value The value to convert to a JSON string.
26
262
  * @param {Replacer | Array<string | number> | null} [replacer]
27
- * A function that alters the behavior of the stringification process,
28
- * or an array of strings/numbers to indicate properties to exclude.
263
+ * A function that alters the behavior of the stringification process,
264
+ * or an array of strings/numbers to indicate properties to exclude.
29
265
  * @param {string | number} [space]
30
- * A string or number to specify indentation or pretty-printing.
266
+ * A string or number to specify indentation or pretty-printing.
31
267
  * @returns {string} The JSON string representation.
32
268
  */
33
269
  const JSONStringify = (value, replacer, space) => {
34
- if ("rawJSON" in JSON) {
35
- return originalStringify(
270
+ try {
271
+ const supportsRawJSON = "rawJSON" in JSON;
272
+
273
+ if (supportsRawJSON) {
274
+ return originalStringify(
275
+ value,
276
+ (key, val) => {
277
+ if (typeof val === "bigint") return JSON.rawJSON(val.toString());
278
+
279
+ const hasFunctionReplacer = typeof replacer === "function";
280
+
281
+ if (hasFunctionReplacer) ;
282
+
283
+ const isKeyInArrayReplacer =
284
+ Array.isArray(replacer) && replacer.includes(key);
285
+
286
+ if (isKeyInArrayReplacer) return val;
287
+
288
+ return val;
289
+ },
290
+ space,
291
+ );
292
+ }
293
+
294
+ if (!value) return originalStringify(value, replacer, space);
295
+
296
+ const convertedToCustomJSON = originalStringify(
36
297
  value,
37
- (key, value) => {
38
- if (typeof value === "bigint") return JSON.rawJSON(value.toString());
298
+ (key, val) => {
299
+ const isNoise = typeof val === "string" && noiseValue.test(val);
300
+
301
+ if (isNoise) return val.toString() + "n"; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing
302
+
303
+ if (typeof val === "bigint") return val.toString() + "n";
39
304
 
40
- if (Array.isArray(replacer) && replacer.includes(key)) return value;
305
+ const hasFunctionReplacer = typeof replacer === "function";
41
306
 
42
- return value;
307
+ if (hasFunctionReplacer) ;
308
+
309
+ const isKeyInArrayReplacer =
310
+ Array.isArray(replacer) && replacer.includes(key);
311
+
312
+ if (isKeyInArrayReplacer) return val;
313
+
314
+ return val;
43
315
  },
44
316
  space,
45
317
  );
46
- }
47
318
 
48
- if (!value) return originalStringify(value, replacer, space);
319
+ const processedJSON = convertedToCustomJSON.replace(
320
+ bigIntsStringify,
321
+ "$1$2$3",
322
+ ); // Delete one "n" off the end of every BigInt value
49
323
 
50
- const convertedToCustomJSON = originalStringify(
51
- value,
52
- (key, value) => {
53
- const isNoise = typeof value === "string" && noiseValue.test(value);
324
+ const denoisedJSON = processedJSON.replace(noiseStringify, "$1$2$3"); // Remove one "n" off the end of every noisy string
54
325
 
55
- if (isNoise) return value.toString() + "n"; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing
326
+ return denoisedJSON;
327
+ } catch (error) {
328
+ if (error instanceof RangeError) {
329
+ const convertedJSON = stringifyIteratively(value, replacer);
56
330
 
57
- if (typeof value === "bigint") return value.toString() + "n";
331
+ if (convertedJSON === undefined) return undefined;
58
332
 
59
- if (Array.isArray(replacer) && replacer.includes(key)) return value;
333
+ const supportsRawJSON = "rawJSON" in JSON;
60
334
 
61
- return value;
62
- },
63
- space,
64
- );
65
- const processedJSON = convertedToCustomJSON.replace(
66
- bigIntsStringify,
67
- "$1$2$3",
68
- ); // Delete one "n" off the end of every BigInt value
69
- const denoisedJSON = processedJSON.replace(noiseStringify, "$1$2$3"); // Remove one "n" off the end of every noisy string
335
+ if (supportsRawJSON) return convertedJSON;
70
336
 
71
- return denoisedJSON;
337
+ const processedJSON = convertedJSON.replace(bigIntsStringify, "$1$2$3");
338
+
339
+ return processedJSON.replace(noiseStringify, "$1$2$3");
340
+ }
341
+
342
+ throw error;
343
+ }
72
344
  };
73
345
 
74
346
  const featureCache = new Map();
@@ -116,6 +388,7 @@ const isContextSourceSupported = () => {
116
388
  const convertMarkedBigIntsReviver = (key, value, context, userReviver) => {
117
389
  const isCustomFormatBigInt =
118
390
  typeof value === "string" && customFormat.test(value);
391
+
119
392
  if (isCustomFormatBigInt) return BigInt(value.slice(0, -1));
120
393
 
121
394
  const isNoiseValue = typeof value === "string" && noiseValue.test(value);
@@ -137,9 +410,10 @@ const convertMarkedBigIntsReviver = (key, value, context, userReviver) => {
137
410
  */
138
411
  const JSONParseV2 = (text, reviver) => {
139
412
  return JSON.parse(text, (key, value, context) => {
140
- const isBigNumber =
141
- typeof value === "number" &&
142
- (value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER);
413
+ const isNumber = typeof value === "number";
414
+ const isOutOfBounds =
415
+ value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER;
416
+ const isBigNumber = isNumber && isOutOfBounds;
143
417
  const isInt = context && intRegex.test(context.source);
144
418
  const isBigInt = isBigNumber && isInt;
145
419
 
@@ -152,9 +426,102 @@ const JSONParseV2 = (text, reviver) => {
152
426
  const MAX_INT = Number.MAX_SAFE_INTEGER.toString();
153
427
  const MAX_DIGITS = MAX_INT.length;
154
428
  const stringsOrLargeNumbers =
155
- /"(?:\\.|[^"])*"|-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][+-]?[0-9]+)?/g;
429
+ /"(?:[^"\\]|\\.)*"|-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][+-]?[0-9]+)?/g;
156
430
  const noiseValueWithQuotes = /^"-?\d+n+"$/; // Noise - strings that match the custom format before being converted to it
157
431
 
432
+ /**
433
+ * Iteratively traverses the parsed object bottom-up (post-order),
434
+ * emulating the native JSON.parse reviver behavior.
435
+ * This avoids Call Stack overflows (RangeError) on deeply nested structures.
436
+ *
437
+ * @param {any} parsed The natively parsed JSON object.
438
+ * @param {Reviver} [userReviver] User's custom reviver function.
439
+ * @returns {any} The fully processed object.
440
+ */
441
+ const applyReviverIteratively = (parsed, userReviver) => {
442
+ const rootHolder = { "": parsed };
443
+ const stack = [{ parent: rootHolder, key: "", visited: false }];
444
+
445
+ while (stack.length > 0) {
446
+ const node = stack[stack.length - 1];
447
+
448
+ if (!node.visited) {
449
+ node.visited = true;
450
+
451
+ const value = node.parent[node.key];
452
+ const isComplexObject = value !== null && typeof value === "object";
453
+
454
+ if (isComplexObject) {
455
+ const keys = Object.keys(value);
456
+
457
+ for (let i = keys.length - 1; i >= 0; i--) {
458
+ stack.push({ parent: value, key: keys[i], visited: false });
459
+ }
460
+ }
461
+ } else {
462
+ const { parent, key } = node;
463
+ let value = parent[key];
464
+
465
+ if (typeof value === "string") {
466
+ const isCustomFormatBigInt = customFormat.test(value);
467
+
468
+ if (isCustomFormatBigInt) {
469
+ value = BigInt(value.slice(0, -1));
470
+ } else {
471
+ const isNoise = noiseValue.test(value);
472
+
473
+ if (isNoise) value = value.slice(0, -1);
474
+ }
475
+ }
476
+
477
+ const isDeleted = value === undefined;
478
+
479
+ if (isDeleted) {
480
+ delete parent[key];
481
+ } else {
482
+ parent[key] = value;
483
+ }
484
+
485
+ stack.pop();
486
+ }
487
+ }
488
+
489
+ return rootHolder[""];
490
+ };
491
+
492
+ /**
493
+ * Pre-processes the JSON string to mark large numbers with an 'n' suffix.
494
+ *
495
+ * @param {string} text The raw JSON string.
496
+ * @returns {string} The serialized string with marked BigInts.
497
+ */
498
+ const serializeBigInts = (text) => {
499
+ return text.replace(
500
+ stringsOrLargeNumbers,
501
+ (match, digits, fractional, exponential) => {
502
+ const isString = match[0] === '"';
503
+ const isNoise = isString && noiseValueWithQuotes.test(match);
504
+
505
+ if (isNoise) return match.substring(0, match.length - 1) + 'n"'; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing
506
+
507
+ const hasFractionalOrExponential = fractional || exponential;
508
+
509
+ // With a fixed number of digits, we can correctly use lexicographical comparison to do a numeric comparison
510
+ const isLessThanMaxSafeInt =
511
+ digits &&
512
+ (digits.length < MAX_DIGITS ||
513
+ (digits.length === MAX_DIGITS && digits <= MAX_INT));
514
+
515
+ const isStandardValue =
516
+ isString || hasFractionalOrExponential || isLessThanMaxSafeInt;
517
+
518
+ if (isStandardValue) return match;
519
+
520
+ return '"' + match + 'n"';
521
+ },
522
+ );
523
+ };
524
+
158
525
  /**
159
526
  * Converts a JSON string into a JavaScript value.
160
527
  *
@@ -166,42 +533,34 @@ const noiseValueWithQuotes = /^"-?\d+n+"$/; // Noise - strings that match the cu
166
533
  *
167
534
  * @param {string} text A valid JSON string.
168
535
  * @param {Reviver} [reviver]
169
- * A function that transforms the results. This function is called for each member
170
- * of the object. If a member contains nested objects, the nested objects are
171
- * transformed before the parent object is.
536
+ * A function that transforms the results. This function is called for each member
537
+ * of the object. If a member contains nested objects, the nested objects are
538
+ * transformed before the parent object is.
172
539
  * @returns {any} The parsed JavaScript value.
173
540
  * @throws {SyntaxError} If text is not valid JSON.
174
541
  */
175
542
  const JSONParse = (text, reviver) => {
176
543
  if (!text) return originalParse(text, reviver);
177
544
 
178
- if (isContextSourceSupported()) return JSONParseV2(text); // Shortcut to a faster (2x) and simpler version
179
-
180
- // Find and mark big numbers with "n"
181
- const serializedData = text.replace(
182
- stringsOrLargeNumbers,
183
- (text, digits, fractional, exponential) => {
184
- const isString = text[0] === '"';
185
- const isNoise = isString && noiseValueWithQuotes.test(text);
545
+ try {
546
+ if (isContextSourceSupported()) return JSONParseV2(text, reviver); // Shortcut to a faster (2x) and simpler version
186
547
 
187
- if (isNoise) return text.substring(0, text.length - 1) + 'n"'; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing
548
+ // Find and mark big numbers with "n"
549
+ const serializedData = serializeBigInts(text);
188
550
 
189
- const isFractionalOrExponential = fractional || exponential;
190
- const isLessThanMaxSafeInt =
191
- digits &&
192
- (digits.length < MAX_DIGITS ||
193
- (digits.length === MAX_DIGITS && digits <= MAX_INT)); // With a fixed number of digits, we can correctly use lexicographical comparison to do a numeric comparison
194
-
195
- if (isString || isFractionalOrExponential || isLessThanMaxSafeInt)
196
- return text;
551
+ return originalParse(serializedData, (key, value, context) =>
552
+ convertMarkedBigIntsReviver(key, value, context, reviver),
553
+ );
554
+ } catch (error) {
555
+ if (error instanceof RangeError) {
556
+ const serializedData = serializeBigInts(text);
557
+ const parsed = originalParse(serializedData);
197
558
 
198
- return '"' + text + 'n"';
199
- },
200
- );
559
+ return applyReviverIteratively(parsed);
560
+ }
201
561
 
202
- return originalParse(serializedData, (key, value, context) =>
203
- convertMarkedBigIntsReviver(key, value),
204
- );
562
+ throw error;
563
+ }
205
564
  };
206
565
 
207
566
  export { JSONParse, JSONStringify };
@@ -1 +1 @@
1
- {"version":3,"file":"json-with-bigint.js","sources":["../../../../../../node_modules/json-with-bigint/json-with-bigint.js"],"sourcesContent":["const intRegex = /^-?\\d+$/;\nconst noiseValue = /^-?\\d+n+$/; // Noise - strings that match the custom format before being converted to it\nconst originalStringify = JSON.stringify;\nconst originalParse = JSON.parse;\nconst customFormat = /^-?\\d+n$/;\n\nconst bigIntsStringify = /([\\[:])?\"(-?\\d+)n\"($|([\\\\n]|\\s)*(\\s|[\\\\n])*[,\\}\\]])/g;\nconst noiseStringify =\n /([\\[:])?(\"-?\\d+n+)n(\"$|\"([\\\\n]|\\s)*(\\s|[\\\\n])*[,\\}\\]])/g;\n\n/**\n * @typedef {(this: any, key: string | number | undefined, value: any) => any} Replacer\n * @typedef {(key: string | number | undefined, value: any, context?: { source: string }) => any} Reviver\n */\n\n/**\n * Converts a JavaScript value to a JSON string.\n *\n * Supports serialization of BigInt values using two strategies:\n * 1. Custom format \"123n\" → \"123\" (universal fallback)\n * 2. Native JSON.rawJSON() (Node.js 22+, fastest) when available\n *\n * All other values are serialized exactly like native JSON.stringify().\n *\n * @param {*} value The value to convert to a JSON string.\n * @param {Replacer | Array<string | number> | null} [replacer]\n * A function that alters the behavior of the stringification process,\n * or an array of strings/numbers to indicate properties to exclude.\n * @param {string | number} [space]\n * A string or number to specify indentation or pretty-printing.\n * @returns {string} The JSON string representation.\n */\nconst JSONStringify = (value, replacer, space) => {\n if (\"rawJSON\" in JSON) {\n return originalStringify(\n value,\n (key, value) => {\n if (typeof value === \"bigint\") return JSON.rawJSON(value.toString());\n\n if (typeof replacer === \"function\") return replacer(key, value);\n\n if (Array.isArray(replacer) && replacer.includes(key)) return value;\n\n return value;\n },\n space,\n );\n }\n\n if (!value) return originalStringify(value, replacer, space);\n\n const convertedToCustomJSON = originalStringify(\n value,\n (key, value) => {\n const isNoise = typeof value === \"string\" && noiseValue.test(value);\n\n if (isNoise) return value.toString() + \"n\"; // Mark noise values with additional \"n\" to offset the deletion of one \"n\" during the processing\n\n if (typeof value === \"bigint\") return value.toString() + \"n\";\n\n if (typeof replacer === \"function\") return replacer(key, value);\n\n if (Array.isArray(replacer) && replacer.includes(key)) return value;\n\n return value;\n },\n space,\n );\n const processedJSON = convertedToCustomJSON.replace(\n bigIntsStringify,\n \"$1$2$3\",\n ); // Delete one \"n\" off the end of every BigInt value\n const denoisedJSON = processedJSON.replace(noiseStringify, \"$1$2$3\"); // Remove one \"n\" off the end of every noisy string\n\n return denoisedJSON;\n};\n\nconst featureCache = new Map();\n\n/**\n * Detects if the current JSON.parse implementation supports the context.source feature.\n *\n * Uses toString() fingerprinting to cache results and automatically detect runtime\n * replacements of JSON.parse (polyfills, mocks, etc.).\n *\n * @returns {boolean} true if context.source is supported, false otherwise.\n */\nconst isContextSourceSupported = () => {\n const parseFingerprint = JSON.parse.toString();\n\n if (featureCache.has(parseFingerprint)) {\n return featureCache.get(parseFingerprint);\n }\n\n try {\n const result = JSON.parse(\n \"1\",\n (_, __, context) => !!context?.source && context.source === \"1\",\n );\n featureCache.set(parseFingerprint, result);\n\n return result;\n } catch {\n featureCache.set(parseFingerprint, false);\n\n return false;\n }\n};\n\n/**\n * Reviver function that converts custom-format BigInt strings back to BigInt values.\n * Also handles \"noise\" strings that accidentally match the BigInt format.\n *\n * @param {string | number | undefined} key The object key.\n * @param {*} value The value being parsed.\n * @param {object} [context] Parse context (if supported by JSON.parse).\n * @param {Reviver} [userReviver] User's custom reviver function.\n * @returns {any} The transformed value.\n */\nconst convertMarkedBigIntsReviver = (key, value, context, userReviver) => {\n const isCustomFormatBigInt =\n typeof value === \"string\" && customFormat.test(value);\n if (isCustomFormatBigInt) return BigInt(value.slice(0, -1));\n\n const isNoiseValue = typeof value === \"string\" && noiseValue.test(value);\n if (isNoiseValue) return value.slice(0, -1);\n\n if (typeof userReviver !== \"function\") return value;\n\n return userReviver(key, value, context);\n};\n\n/**\n * Fast JSON.parse implementation (~2x faster than classic fallback).\n * Uses JSON.parse's context.source feature to detect integers and convert\n * large numbers directly to BigInt without string manipulation.\n *\n * Does not support legacy custom format from v1 of this library.\n *\n * @param {string} text JSON string to parse.\n * @param {Reviver} [reviver] Transform function to apply to each value.\n * @returns {any} Parsed JavaScript value.\n */\nconst JSONParseV2 = (text, reviver) => {\n return JSON.parse(text, (key, value, context) => {\n const isBigNumber =\n typeof value === \"number\" &&\n (value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER);\n const isInt = context && intRegex.test(context.source);\n const isBigInt = isBigNumber && isInt;\n\n if (isBigInt) return BigInt(context.source);\n\n if (typeof reviver !== \"function\") return value;\n\n return reviver(key, value, context);\n });\n};\n\nconst MAX_INT = Number.MAX_SAFE_INTEGER.toString();\nconst MAX_DIGITS = MAX_INT.length;\nconst stringsOrLargeNumbers =\n /\"(?:\\\\.|[^\"])*\"|-?(0|[1-9][0-9]*)(\\.[0-9]+)?([eE][+-]?[0-9]+)?/g;\nconst noiseValueWithQuotes = /^\"-?\\d+n+\"$/; // Noise - strings that match the custom format before being converted to it\n\n/**\n * Converts a JSON string into a JavaScript value.\n *\n * Supports parsing of large integers using two strategies:\n * 1. Classic fallback: Marks large numbers with \"123n\" format, then converts to BigInt\n * 2. Fast path (JSONParseV2): Uses context.source feature (~2x faster) when available\n *\n * All other JSON values are parsed exactly like native JSON.parse().\n *\n * @param {string} text A valid JSON string.\n * @param {Reviver} [reviver]\n * A function that transforms the results. This function is called for each member\n * of the object. If a member contains nested objects, the nested objects are\n * transformed before the parent object is.\n * @returns {any} The parsed JavaScript value.\n * @throws {SyntaxError} If text is not valid JSON.\n */\nconst JSONParse = (text, reviver) => {\n if (!text) return originalParse(text, reviver);\n\n if (isContextSourceSupported()) return JSONParseV2(text, reviver); // Shortcut to a faster (2x) and simpler version\n\n // Find and mark big numbers with \"n\"\n const serializedData = text.replace(\n stringsOrLargeNumbers,\n (text, digits, fractional, exponential) => {\n const isString = text[0] === '\"';\n const isNoise = isString && noiseValueWithQuotes.test(text);\n\n if (isNoise) return text.substring(0, text.length - 1) + 'n\"'; // Mark noise values with additional \"n\" to offset the deletion of one \"n\" during the processing\n\n const isFractionalOrExponential = fractional || exponential;\n const isLessThanMaxSafeInt =\n digits &&\n (digits.length < MAX_DIGITS ||\n (digits.length === MAX_DIGITS && digits <= MAX_INT)); // With a fixed number of digits, we can correctly use lexicographical comparison to do a numeric comparison\n\n if (isString || isFractionalOrExponential || isLessThanMaxSafeInt)\n return text;\n\n return '\"' + text + 'n\"';\n },\n );\n\n return originalParse(serializedData, (key, value, context) =>\n convertMarkedBigIntsReviver(key, value, context, reviver),\n );\n};\n\nexport { JSONStringify, JSONParse };\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"json-with-bigint.js","sources":["../../../../../../node_modules/json-with-bigint/json-with-bigint.js"],"sourcesContent":["const intRegex = /^-?\\d+$/;\nconst noiseValue = /^-?\\d+n+$/; // Noise - strings that match the custom format before being converted to it\nconst originalStringify = JSON.stringify;\nconst originalParse = JSON.parse;\nconst customFormat = /^-?\\d+n$/;\n\nconst bigIntsStringify = /([\\[:])?\"(-?\\d+)n\"($|\\s*[,\\}\\]])/g;\nconst noiseStringify = /([\\[:])?(\"-?\\d+n+)n(\"$|\"\\s*[,\\}\\]])/g;\n\n/**\n * @typedef {(this: any, key: string | number | undefined, value: any) => any} Replacer\n * @typedef {(key: string | number | undefined, value: any, context?: { source: string }) => any} Reviver\n */\n\n/**\n * Checks if a value is unstringifiable according to native JSON.stringify rules.\n *\n * @param {any} val The value to check.\n * @returns {boolean} True if the value is undefined, a function, or a symbol.\n */\nconst isUnstringifiable = (val) =>\n val === undefined || typeof val === \"function\" || typeof val === \"symbol\";\n\n/**\n * Checks if a value is a native JSON.rawJSON object (Node.js 22+).\n *\n * @param {any} val The value to check.\n * @returns {boolean} True if the value is a RawJSON instance.\n */\nconst isRawJSON = (val) =>\n val !== null &&\n typeof val === \"object\" &&\n val.constructor &&\n val.constructor.name === \"RawJSON\";\n\n/**\n * Iteratively converts a JS value to a JSON string.\n * Used as a fallback when the native JSON.stringify hits the Maximum Call Stack size.\n * Fully compliant with JSON formatting (space), replacers, and toJSON behaviors.\n *\n * @param {any} rootValue The value to stringify.\n * @param {Replacer | Array<string | number> | null} [replacer] User's custom replacer function.\n * @param {string | number} [spaceParam] Indentation for pretty-printing.\n * @returns {string | undefined} The generated JSON string.\n */\nconst stringifyIteratively = (rootValue, replacer, spaceParam) => {\n let space = \"\";\n\n if (typeof spaceParam === \"number\") {\n space = \" \".repeat(Math.min(10, Math.max(0, Math.floor(spaceParam))));\n } else if (typeof spaceParam === \"string\") {\n space = spaceParam.slice(0, 10);\n }\n\n const isFunctionReplacer = typeof replacer === \"function\";\n const propertyList = Array.isArray(replacer)\n ? new Set(replacer.map(String))\n : null;\n\n /**\n * Prepares a value for stringification by resolving toJSON, handling BigInts,\n * applying custom replacers, and unwrapping primitive objects.\n *\n * @param {object|Array} parent The parent object or array holding the value.\n * @param {string} key The key associated with the value.\n * @param {any} val The raw value to process.\n * @returns {any} The processed value ready for stringification.\n */\n const prepareVal = (parent, key, val) => {\n const isObject = val !== null && typeof val === \"object\";\n const hasToJSON = isObject && typeof val.toJSON === \"function\";\n\n if (hasToJSON) {\n val = val.toJSON(key);\n }\n\n const isNoise = typeof val === \"string\" && noiseValue.test(val);\n\n if (isNoise) return val + \"n\";\n\n const isBigInt = typeof val === \"bigint\";\n\n if (isBigInt) {\n const supportsRawJSON = \"rawJSON\" in JSON;\n\n if (supportsRawJSON) return JSON.rawJSON(val.toString());\n\n return val.toString() + \"n\";\n }\n\n if (isFunctionReplacer) {\n val = replacer.call(parent, key, val);\n }\n\n const isPostReplacerObject = val !== null && typeof val === \"object\";\n\n if (isPostReplacerObject) {\n const isPrimitiveWrapper =\n val instanceof Number ||\n val instanceof String ||\n val instanceof Boolean;\n\n if (isPrimitiveWrapper) {\n val = val.valueOf();\n }\n }\n\n return val;\n };\n\n const rootProcessed = prepareVal({ \"\": rootValue }, \"\", rootValue);\n\n if (isUnstringifiable(rootProcessed)) {\n return undefined;\n }\n\n const isRootPrimitive =\n rootProcessed === null || typeof rootProcessed !== \"object\";\n const isRootNativeRawJSON = isRawJSON(rootProcessed);\n\n if (isRootPrimitive || isRootNativeRawJSON) {\n return originalStringify(rootProcessed);\n }\n\n const chunks = [];\n let level = 0;\n\n const stack = [\n {\n parent: { \"\": rootProcessed },\n key: \"\",\n val: rootProcessed,\n isArray: Array.isArray(rootProcessed),\n keys: Array.isArray(rootProcessed) ? null : Object.keys(rootProcessed),\n index: 0,\n first: true,\n },\n ];\n\n const visited = new WeakSet([rootProcessed]);\n\n while (stack.length > 0) {\n const node = stack[stack.length - 1];\n\n if (node.index === 0) {\n chunks.push(node.isArray ? \"[\" : \"{\");\n level++;\n }\n\n let isDone = false;\n\n if (node.isArray) {\n if (node.index < node.val.length) {\n if (!node.first) chunks.push(\",\");\n\n if (space) chunks.push(\"\\n\" + space.repeat(level));\n\n const childRaw = node.val[node.index];\n const childVal = prepareVal(node.val, String(node.index), childRaw);\n\n if (isUnstringifiable(childVal)) {\n chunks.push(\"null\");\n node.first = false;\n node.index++;\n } else {\n const isComplexObject =\n childVal !== null && typeof childVal === \"object\";\n const isNativeRaw = isRawJSON(childVal);\n\n if (isComplexObject && !isNativeRaw) {\n if (visited.has(childVal)) {\n throw new TypeError(\"Converting circular structure to JSON\");\n }\n\n visited.add(childVal);\n\n stack.push({\n parent: node.val,\n key: String(node.index),\n val: childVal,\n isArray: Array.isArray(childVal),\n keys: Array.isArray(childVal) ? null : Object.keys(childVal),\n index: 0,\n first: true,\n });\n\n node.first = false;\n node.index++;\n } else {\n chunks.push(originalStringify(childVal));\n node.first = false;\n node.index++;\n }\n }\n } else {\n isDone = true;\n }\n } else {\n while (node.index < node.keys.length) {\n const k = node.keys[node.index++];\n\n const isFilteredOutByArray = propertyList && !propertyList.has(k);\n\n if (isFilteredOutByArray) continue;\n\n const childRaw = node.val[k];\n const childVal = prepareVal(node.val, k, childRaw);\n\n if (isUnstringifiable(childVal)) continue;\n\n if (!node.first) chunks.push(\",\");\n\n if (space) {\n chunks.push(\"\\n\" + space.repeat(level) + originalStringify(k) + \": \");\n } else {\n chunks.push(originalStringify(k) + \":\");\n }\n\n const isComplexObject =\n childVal !== null && typeof childVal === \"object\";\n const isNativeRaw = isRawJSON(childVal);\n\n if (isComplexObject && !isNativeRaw) {\n if (visited.has(childVal)) {\n throw new TypeError(\"Converting circular structure to JSON\");\n }\n\n visited.add(childVal);\n\n stack.push({\n parent: node.val,\n key: k,\n val: childVal,\n isArray: Array.isArray(childVal),\n keys: Array.isArray(childVal) ? null : Object.keys(childVal),\n index: 0,\n first: true,\n });\n\n node.first = false;\n\n break; // Stop current loop level to process the newly pushed stack node\n } else {\n chunks.push(originalStringify(childVal));\n node.first = false;\n }\n }\n\n const isNodeFullyProcessed =\n node.index >= node.keys.length && stack[stack.length - 1] === node;\n\n if (isNodeFullyProcessed) {\n isDone = true;\n }\n }\n\n if (isDone) {\n level--;\n\n if (!node.first && space) chunks.push(\"\\n\" + space.repeat(level));\n\n chunks.push(node.isArray ? \"]\" : \"}\");\n visited.delete(node.val);\n stack.pop();\n }\n }\n\n return chunks.join(\"\");\n};\n\n/**\n * Converts a JavaScript value to a JSON string.\n *\n * Supports serialization of BigInt values using two strategies:\n * 1. Custom format \"123n\" → \"123\" (universal fallback)\n * 2. Native JSON.rawJSON() (Node.js 22+, fastest) when available\n *\n * All other values are serialized exactly like native JSON.stringify().\n *\n * @param {*} value The value to convert to a JSON string.\n * @param {Replacer | Array<string | number> | null} [replacer]\n * A function that alters the behavior of the stringification process,\n * or an array of strings/numbers to indicate properties to exclude.\n * @param {string | number} [space]\n * A string or number to specify indentation or pretty-printing.\n * @returns {string} The JSON string representation.\n */\nconst JSONStringify = (value, replacer, space) => {\n try {\n const supportsRawJSON = \"rawJSON\" in JSON;\n\n if (supportsRawJSON) {\n return originalStringify(\n value,\n (key, val) => {\n if (typeof val === \"bigint\") return JSON.rawJSON(val.toString());\n\n const hasFunctionReplacer = typeof replacer === \"function\";\n\n if (hasFunctionReplacer) return replacer(key, val);\n\n const isKeyInArrayReplacer =\n Array.isArray(replacer) && replacer.includes(key);\n\n if (isKeyInArrayReplacer) return val;\n\n return val;\n },\n space,\n );\n }\n\n if (!value) return originalStringify(value, replacer, space);\n\n const convertedToCustomJSON = originalStringify(\n value,\n (key, val) => {\n const isNoise = typeof val === \"string\" && noiseValue.test(val);\n\n if (isNoise) return val.toString() + \"n\"; // Mark noise values with additional \"n\" to offset the deletion of one \"n\" during the processing\n\n if (typeof val === \"bigint\") return val.toString() + \"n\";\n\n const hasFunctionReplacer = typeof replacer === \"function\";\n\n if (hasFunctionReplacer) return replacer(key, val);\n\n const isKeyInArrayReplacer =\n Array.isArray(replacer) && replacer.includes(key);\n\n if (isKeyInArrayReplacer) return val;\n\n return val;\n },\n space,\n );\n\n const processedJSON = convertedToCustomJSON.replace(\n bigIntsStringify,\n \"$1$2$3\",\n ); // Delete one \"n\" off the end of every BigInt value\n\n const denoisedJSON = processedJSON.replace(noiseStringify, \"$1$2$3\"); // Remove one \"n\" off the end of every noisy string\n\n return denoisedJSON;\n } catch (error) {\n if (error instanceof RangeError) {\n const convertedJSON = stringifyIteratively(value, replacer, space);\n\n if (convertedJSON === undefined) return undefined;\n\n const supportsRawJSON = \"rawJSON\" in JSON;\n\n if (supportsRawJSON) return convertedJSON;\n\n const processedJSON = convertedJSON.replace(bigIntsStringify, \"$1$2$3\");\n\n return processedJSON.replace(noiseStringify, \"$1$2$3\");\n }\n\n throw error;\n }\n};\n\nconst featureCache = new Map();\n\n/**\n * Detects if the current JSON.parse implementation supports the context.source feature.\n *\n * Uses toString() fingerprinting to cache results and automatically detect runtime\n * replacements of JSON.parse (polyfills, mocks, etc.).\n *\n * @returns {boolean} true if context.source is supported, false otherwise.\n */\nconst isContextSourceSupported = () => {\n const parseFingerprint = JSON.parse.toString();\n\n if (featureCache.has(parseFingerprint)) {\n return featureCache.get(parseFingerprint);\n }\n\n try {\n const result = JSON.parse(\n \"1\",\n (_, __, context) => !!context?.source && context.source === \"1\",\n );\n featureCache.set(parseFingerprint, result);\n\n return result;\n } catch {\n featureCache.set(parseFingerprint, false);\n\n return false;\n }\n};\n\n/**\n * Reviver function that converts custom-format BigInt strings back to BigInt values.\n * Also handles \"noise\" strings that accidentally match the BigInt format.\n *\n * @param {string | number | undefined} key The object key.\n * @param {*} value The value being parsed.\n * @param {object} [context] Parse context (if supported by JSON.parse).\n * @param {Reviver} [userReviver] User's custom reviver function.\n * @returns {any} The transformed value.\n */\nconst convertMarkedBigIntsReviver = (key, value, context, userReviver) => {\n const isCustomFormatBigInt =\n typeof value === \"string\" && customFormat.test(value);\n\n if (isCustomFormatBigInt) return BigInt(value.slice(0, -1));\n\n const isNoiseValue = typeof value === \"string\" && noiseValue.test(value);\n if (isNoiseValue) return value.slice(0, -1);\n\n const hasUserReviver = typeof userReviver === \"function\";\n\n if (!hasUserReviver) return value;\n\n return userReviver(key, value, context);\n};\n\n/**\n * Fast JSON.parse implementation (~2x faster than classic fallback).\n * Uses JSON.parse's context.source feature to detect integers and convert\n * large numbers directly to BigInt without string manipulation.\n *\n * Does not support legacy custom format from v1 of this library.\n *\n * @param {string} text JSON string to parse.\n * @param {Reviver} [reviver] Transform function to apply to each value.\n * @returns {any} Parsed JavaScript value.\n */\nconst JSONParseV2 = (text, reviver) => {\n return JSON.parse(text, (key, value, context) => {\n const isNumber = typeof value === \"number\";\n const isOutOfBounds =\n value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER;\n const isBigNumber = isNumber && isOutOfBounds;\n const isInt = context && intRegex.test(context.source);\n const isBigInt = isBigNumber && isInt;\n\n if (isBigInt) return BigInt(context.source);\n\n const hasCustomReviver = typeof reviver === \"function\";\n\n if (!hasCustomReviver) return value;\n\n return reviver(key, value, context);\n });\n};\n\nconst MAX_INT = Number.MAX_SAFE_INTEGER.toString();\nconst MAX_DIGITS = MAX_INT.length;\nconst stringsOrLargeNumbers =\n /\"(?:[^\"\\\\]|\\\\.)*\"|-?(0|[1-9][0-9]*)(\\.[0-9]+)?([eE][+-]?[0-9]+)?/g;\nconst noiseValueWithQuotes = /^\"-?\\d+n+\"$/; // Noise - strings that match the custom format before being converted to it\n\n/**\n * Iteratively traverses the parsed object bottom-up (post-order),\n * emulating the native JSON.parse reviver behavior.\n * This avoids Call Stack overflows (RangeError) on deeply nested structures.\n *\n * @param {any} parsed The natively parsed JSON object.\n * @param {Reviver} [userReviver] User's custom reviver function.\n * @returns {any} The fully processed object.\n */\nconst applyReviverIteratively = (parsed, userReviver) => {\n const rootHolder = { \"\": parsed };\n const stack = [{ parent: rootHolder, key: \"\", visited: false }];\n\n while (stack.length > 0) {\n const node = stack[stack.length - 1];\n\n if (!node.visited) {\n node.visited = true;\n\n const value = node.parent[node.key];\n const isComplexObject = value !== null && typeof value === \"object\";\n\n if (isComplexObject) {\n const keys = Object.keys(value);\n\n for (let i = keys.length - 1; i >= 0; i--) {\n stack.push({ parent: value, key: keys[i], visited: false });\n }\n }\n } else {\n const { parent, key } = node;\n let value = parent[key];\n\n if (typeof value === \"string\") {\n const isCustomFormatBigInt = customFormat.test(value);\n\n if (isCustomFormatBigInt) {\n value = BigInt(value.slice(0, -1));\n } else {\n const isNoise = noiseValue.test(value);\n\n if (isNoise) value = value.slice(0, -1);\n }\n }\n\n const hasUserReviver = typeof userReviver === \"function\";\n\n if (hasUserReviver) {\n value = userReviver.call(parent, key, value);\n }\n\n const isDeleted = value === undefined;\n\n if (isDeleted) {\n delete parent[key];\n } else {\n parent[key] = value;\n }\n\n stack.pop();\n }\n }\n\n return rootHolder[\"\"];\n};\n\n/**\n * Pre-processes the JSON string to mark large numbers with an 'n' suffix.\n *\n * @param {string} text The raw JSON string.\n * @returns {string} The serialized string with marked BigInts.\n */\nconst serializeBigInts = (text) => {\n return text.replace(\n stringsOrLargeNumbers,\n (match, digits, fractional, exponential) => {\n const isString = match[0] === '\"';\n const isNoise = isString && noiseValueWithQuotes.test(match);\n\n if (isNoise) return match.substring(0, match.length - 1) + 'n\"'; // Mark noise values with additional \"n\" to offset the deletion of one \"n\" during the processing\n\n const hasFractionalOrExponential = fractional || exponential;\n\n // With a fixed number of digits, we can correctly use lexicographical comparison to do a numeric comparison\n const isLessThanMaxSafeInt =\n digits &&\n (digits.length < MAX_DIGITS ||\n (digits.length === MAX_DIGITS && digits <= MAX_INT));\n\n const isStandardValue =\n isString || hasFractionalOrExponential || isLessThanMaxSafeInt;\n\n if (isStandardValue) return match;\n\n return '\"' + match + 'n\"';\n },\n );\n};\n\n/**\n * Converts a JSON string into a JavaScript value.\n *\n * Supports parsing of large integers using two strategies:\n * 1. Classic fallback: Marks large numbers with \"123n\" format, then converts to BigInt\n * 2. Fast path (JSONParseV2): Uses context.source feature (~2x faster) when available\n *\n * All other JSON values are parsed exactly like native JSON.parse().\n *\n * @param {string} text A valid JSON string.\n * @param {Reviver} [reviver]\n * A function that transforms the results. This function is called for each member\n * of the object. If a member contains nested objects, the nested objects are\n * transformed before the parent object is.\n * @returns {any} The parsed JavaScript value.\n * @throws {SyntaxError} If text is not valid JSON.\n */\nconst JSONParse = (text, reviver) => {\n if (!text) return originalParse(text, reviver);\n\n try {\n if (isContextSourceSupported()) return JSONParseV2(text, reviver); // Shortcut to a faster (2x) and simpler version\n\n // Find and mark big numbers with \"n\"\n const serializedData = serializeBigInts(text);\n\n return originalParse(serializedData, (key, value, context) =>\n convertMarkedBigIntsReviver(key, value, context, reviver),\n );\n } catch (error) {\n if (error instanceof RangeError) {\n const serializedData = serializeBigInts(text);\n const parsed = originalParse(serializedData);\n\n return applyReviverIteratively(parsed, reviver);\n }\n\n throw error;\n }\n};\n\nexport { JSONStringify, JSONParse };\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}