@skillcap/gdh 3.2.1 → 3.2.2

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 (629) hide show
  1. package/INSTALL-BUNDLE.json +1 -1
  2. package/RELEASE-SPAN-UPDATE-CONTRACTS.json +70 -0
  3. package/node_modules/@clack/core/CHANGELOG.md +8 -0
  4. package/node_modules/@clack/core/dist/index.d.mts +18 -4
  5. package/node_modules/@clack/core/dist/index.mjs +16 -10
  6. package/node_modules/@clack/core/dist/index.mjs.map +1 -1
  7. package/node_modules/@clack/core/package.json +5 -2
  8. package/node_modules/@clack/prompts/CHANGELOG.md +15 -0
  9. package/node_modules/@clack/prompts/README.md +107 -2
  10. package/node_modules/@clack/prompts/dist/index.d.mts +16 -11
  11. package/node_modules/@clack/prompts/dist/index.mjs +114 -107
  12. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -1
  13. package/node_modules/@clack/prompts/package.json +7 -4
  14. package/node_modules/@gdh/adapters/dist/authoring-hook-render.d.ts.map +1 -1
  15. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js +1 -1
  16. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js.map +1 -1
  17. package/node_modules/@gdh/adapters/dist/claude-settings-patch.d.ts.map +1 -1
  18. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js +4 -2
  19. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js.map +1 -1
  20. package/node_modules/@gdh/adapters/dist/claude-statusline-render.d.ts.map +1 -1
  21. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js +1 -1
  22. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js.map +1 -1
  23. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.d.ts.map +1 -1
  24. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.js +1 -1
  25. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.js.map +1 -1
  26. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.d.ts.map +1 -1
  27. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.js +1 -1
  28. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.js.map +1 -1
  29. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.d.ts.map +1 -1
  30. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.js +1 -1
  31. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.js.map +1 -1
  32. package/node_modules/@gdh/adapters/dist/durable-backup.d.ts.map +1 -1
  33. package/node_modules/@gdh/adapters/dist/durable-backup.js +3 -5
  34. package/node_modules/@gdh/adapters/dist/durable-backup.js.map +1 -1
  35. package/node_modules/@gdh/adapters/dist/index.d.ts +11 -37
  36. package/node_modules/@gdh/adapters/dist/index.d.ts.map +1 -1
  37. package/node_modules/@gdh/adapters/dist/index.js +18 -90
  38. package/node_modules/@gdh/adapters/dist/index.js.map +1 -1
  39. package/node_modules/@gdh/adapters/dist/inventory-sweep.d.ts.map +1 -1
  40. package/node_modules/@gdh/adapters/dist/inventory-sweep.js +1 -3
  41. package/node_modules/@gdh/adapters/dist/inventory-sweep.js.map +1 -1
  42. package/node_modules/@gdh/adapters/dist/managed-surfaces.d.ts +32 -0
  43. package/node_modules/@gdh/adapters/dist/managed-surfaces.d.ts.map +1 -0
  44. package/node_modules/@gdh/adapters/dist/managed-surfaces.js +66 -0
  45. package/node_modules/@gdh/adapters/dist/managed-surfaces.js.map +1 -0
  46. package/node_modules/@gdh/adapters/dist/process-orchestration.d.ts +1 -1
  47. package/node_modules/@gdh/adapters/dist/process-orchestration.d.ts.map +1 -1
  48. package/node_modules/@gdh/adapters/dist/process-orchestration.js +3 -2
  49. package/node_modules/@gdh/adapters/dist/process-orchestration.js.map +1 -1
  50. package/node_modules/@gdh/adapters/dist/self-update-mechanics.d.ts.map +1 -1
  51. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js +11 -23
  52. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js.map +1 -1
  53. package/node_modules/@gdh/adapters/dist/skill-rendering.d.ts.map +1 -1
  54. package/node_modules/@gdh/adapters/dist/skill-rendering.js +2 -8
  55. package/node_modules/@gdh/adapters/dist/skill-rendering.js.map +1 -1
  56. package/node_modules/@gdh/adapters/dist/template-assets.js.map +1 -1
  57. package/node_modules/@gdh/adapters/package.json +7 -8
  58. package/node_modules/@gdh/authoring/dist/authoring-state-store.d.ts.map +1 -1
  59. package/node_modules/@gdh/authoring/dist/authoring-state-store.js.map +1 -1
  60. package/node_modules/@gdh/authoring/dist/cache.d.ts.map +1 -1
  61. package/node_modules/@gdh/authoring/dist/cache.js.map +1 -1
  62. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts +2 -2
  63. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts.map +1 -1
  64. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js +2 -2
  65. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js.map +1 -1
  66. package/node_modules/@gdh/authoring/dist/diagnostics-broker.d.ts.map +1 -1
  67. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js +15 -12
  68. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js.map +1 -1
  69. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.d.ts.map +1 -1
  70. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.js.map +1 -1
  71. package/node_modules/@gdh/authoring/dist/lsp-client.d.ts.map +1 -1
  72. package/node_modules/@gdh/authoring/dist/lsp-client.js.map +1 -1
  73. package/node_modules/@gdh/authoring/dist/lsp-constants.d.ts +17 -0
  74. package/node_modules/@gdh/authoring/dist/lsp-constants.d.ts.map +1 -0
  75. package/node_modules/@gdh/authoring/dist/lsp-constants.js +17 -0
  76. package/node_modules/@gdh/authoring/dist/lsp-constants.js.map +1 -0
  77. package/node_modules/@gdh/authoring/dist/lsp-warmup.d.ts.map +1 -1
  78. package/node_modules/@gdh/authoring/dist/lsp-warmup.js +2 -4
  79. package/node_modules/@gdh/authoring/dist/lsp-warmup.js.map +1 -1
  80. package/node_modules/@gdh/authoring/dist/lsp.d.ts.map +1 -1
  81. package/node_modules/@gdh/authoring/dist/lsp.js +8 -46
  82. package/node_modules/@gdh/authoring/dist/lsp.js.map +1 -1
  83. package/node_modules/@gdh/authoring/dist/prepare.d.ts.map +1 -1
  84. package/node_modules/@gdh/authoring/dist/prepare.js +1 -3
  85. package/node_modules/@gdh/authoring/dist/prepare.js.map +1 -1
  86. package/node_modules/@gdh/authoring/dist/project.d.ts.map +1 -1
  87. package/node_modules/@gdh/authoring/dist/project.js +4 -13
  88. package/node_modules/@gdh/authoring/dist/project.js.map +1 -1
  89. package/node_modules/@gdh/authoring/dist/report.d.ts.map +1 -1
  90. package/node_modules/@gdh/authoring/dist/report.js +2 -11
  91. package/node_modules/@gdh/authoring/dist/report.js.map +1 -1
  92. package/node_modules/@gdh/authoring/dist/scene-resource.d.ts.map +1 -1
  93. package/node_modules/@gdh/authoring/dist/scene-resource.js.map +1 -1
  94. package/node_modules/@gdh/authoring/dist/tcp-port.d.ts +2 -0
  95. package/node_modules/@gdh/authoring/dist/tcp-port.d.ts.map +1 -0
  96. package/node_modules/@gdh/authoring/dist/tcp-port.js +23 -0
  97. package/node_modules/@gdh/authoring/dist/tcp-port.js.map +1 -0
  98. package/node_modules/@gdh/authoring/dist/warmup.d.ts.map +1 -1
  99. package/node_modules/@gdh/authoring/dist/warmup.js.map +1 -1
  100. package/node_modules/@gdh/authoring/package.json +2 -2
  101. package/node_modules/@gdh/cli/dist/args.d.ts +44 -0
  102. package/node_modules/@gdh/cli/dist/args.d.ts.map +1 -0
  103. package/node_modules/@gdh/cli/dist/args.js +124 -0
  104. package/node_modules/@gdh/cli/dist/args.js.map +1 -0
  105. package/node_modules/@gdh/cli/dist/bridge-session.d.ts +1 -1
  106. package/node_modules/@gdh/cli/dist/bridge-session.d.ts.map +1 -1
  107. package/node_modules/@gdh/cli/dist/bridge-session.js +8 -7
  108. package/node_modules/@gdh/cli/dist/bridge-session.js.map +1 -1
  109. package/node_modules/@gdh/cli/dist/index.d.ts +4 -52
  110. package/node_modules/@gdh/cli/dist/index.d.ts.map +1 -1
  111. package/node_modules/@gdh/cli/dist/index.js +8 -197
  112. package/node_modules/@gdh/cli/dist/index.js.map +1 -1
  113. package/node_modules/@gdh/cli/dist/io.d.ts +10 -0
  114. package/node_modules/@gdh/cli/dist/io.d.ts.map +1 -0
  115. package/node_modules/@gdh/cli/dist/io.js +26 -0
  116. package/node_modules/@gdh/cli/dist/io.js.map +1 -0
  117. package/node_modules/@gdh/cli/dist/migrate.d.ts +1 -1
  118. package/node_modules/@gdh/cli/dist/migrate.d.ts.map +1 -1
  119. package/node_modules/@gdh/cli/dist/migrate.js +23 -30
  120. package/node_modules/@gdh/cli/dist/migrate.js.map +1 -1
  121. package/node_modules/@gdh/cli/dist/self-update.d.ts.map +1 -1
  122. package/node_modules/@gdh/cli/dist/self-update.js +13 -20
  123. package/node_modules/@gdh/cli/dist/self-update.js.map +1 -1
  124. package/node_modules/@gdh/cli/dist/setup.d.ts.map +1 -1
  125. package/node_modules/@gdh/cli/dist/setup.js.map +1 -1
  126. package/node_modules/@gdh/cli/dist/status-command.d.ts +3 -0
  127. package/node_modules/@gdh/cli/dist/status-command.d.ts.map +1 -0
  128. package/node_modules/@gdh/cli/dist/status-command.js +44 -0
  129. package/node_modules/@gdh/cli/dist/status-command.js.map +1 -0
  130. package/node_modules/@gdh/cli/dist/update-banner.d.ts.map +1 -1
  131. package/node_modules/@gdh/cli/dist/update-banner.js +1 -1
  132. package/node_modules/@gdh/cli/dist/update-banner.js.map +1 -1
  133. package/node_modules/@gdh/cli/package.json +11 -11
  134. package/node_modules/@gdh/core/dist/dev-mode.d.ts.map +1 -1
  135. package/node_modules/@gdh/core/dist/dev-mode.js.map +1 -1
  136. package/node_modules/@gdh/core/dist/editor-operation-runner.d.ts +3 -0
  137. package/node_modules/@gdh/core/dist/editor-operation-runner.d.ts.map +1 -0
  138. package/node_modules/@gdh/core/dist/editor-operation-runner.js +682 -0
  139. package/node_modules/@gdh/core/dist/editor-operation-runner.js.map +1 -0
  140. package/node_modules/@gdh/core/dist/git-root.d.ts.map +1 -1
  141. package/node_modules/@gdh/core/dist/git-root.js +4 -1
  142. package/node_modules/@gdh/core/dist/git-root.js.map +1 -1
  143. package/node_modules/@gdh/core/dist/godot-docs-version.d.ts.map +1 -1
  144. package/node_modules/@gdh/core/dist/godot-docs-version.js.map +1 -1
  145. package/node_modules/@gdh/core/dist/godot-stderr-fatality.d.ts.map +1 -1
  146. package/node_modules/@gdh/core/dist/godot-stderr-fatality.js +1 -2
  147. package/node_modules/@gdh/core/dist/godot-stderr-fatality.js.map +1 -1
  148. package/node_modules/@gdh/core/dist/index.d.ts +8 -5
  149. package/node_modules/@gdh/core/dist/index.d.ts.map +1 -1
  150. package/node_modules/@gdh/core/dist/index.js +14 -5
  151. package/node_modules/@gdh/core/dist/index.js.map +1 -1
  152. package/node_modules/@gdh/core/dist/managed-gitignore.d.ts.map +1 -1
  153. package/node_modules/@gdh/core/dist/managed-gitignore.js +4 -14
  154. package/node_modules/@gdh/core/dist/managed-gitignore.js.map +1 -1
  155. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.d.ts.map +1 -1
  156. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js +2 -2
  157. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js.map +1 -1
  158. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.d.ts.map +1 -1
  159. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.js +6 -14
  160. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.js.map +1 -1
  161. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.d.ts.map +1 -1
  162. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.js +7 -23
  163. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.js.map +1 -1
  164. package/node_modules/@gdh/core/dist/migrations/envelopes/envelope-output-validator.d.ts.map +1 -1
  165. package/node_modules/@gdh/core/dist/migrations/envelopes/envelope-output-validator.js.map +1 -1
  166. package/node_modules/@gdh/core/dist/migrations/envelopes/index.d.ts.map +1 -1
  167. package/node_modules/@gdh/core/dist/migrations/envelopes/index.js +1 -2
  168. package/node_modules/@gdh/core/dist/migrations/envelopes/index.js.map +1 -1
  169. package/node_modules/@gdh/core/dist/migrations/envelopes/types.d.ts.map +1 -1
  170. package/node_modules/@gdh/core/dist/migrations/golden-harness.d.ts.map +1 -1
  171. package/node_modules/@gdh/core/dist/migrations/golden-harness.js.map +1 -1
  172. package/node_modules/@gdh/core/dist/migrations/managed-surface-classes.d.ts.map +1 -1
  173. package/node_modules/@gdh/core/dist/migrations/managed-surface-classes.js.map +1 -1
  174. package/node_modules/@gdh/core/dist/migrations/managed-target-surface-inventory.d.ts.map +1 -1
  175. package/node_modules/@gdh/core/dist/migrations/managed-target-surface-inventory.js.map +1 -1
  176. package/node_modules/@gdh/core/dist/migrations/probes.d.ts.map +1 -1
  177. package/node_modules/@gdh/core/dist/migrations/probes.js.map +1 -1
  178. package/node_modules/@gdh/core/dist/migrations/registry.d.ts +1 -1
  179. package/node_modules/@gdh/core/dist/migrations/registry.d.ts.map +1 -1
  180. package/node_modules/@gdh/core/dist/migrations/registry.js +3 -6
  181. package/node_modules/@gdh/core/dist/migrations/registry.js.map +1 -1
  182. package/node_modules/@gdh/core/dist/official-docs.d.ts.map +1 -1
  183. package/node_modules/@gdh/core/dist/release-span-preview.d.ts.map +1 -1
  184. package/node_modules/@gdh/core/dist/release-span-preview.js +1 -1
  185. package/node_modules/@gdh/core/dist/release-span-preview.js.map +1 -1
  186. package/node_modules/@gdh/core/dist/release-span-update-contract.d.ts.map +1 -1
  187. package/node_modules/@gdh/core/dist/release-span-update-contract.js +5 -10
  188. package/node_modules/@gdh/core/dist/release-span-update-contract.js.map +1 -1
  189. package/node_modules/@gdh/core/dist/state/codex-retrust-reminder.d.ts.map +1 -1
  190. package/node_modules/@gdh/core/dist/state/codex-retrust-reminder.js.map +1 -1
  191. package/node_modules/@gdh/core/dist/state/migration-state.d.ts.map +1 -1
  192. package/node_modules/@gdh/core/dist/state/migration-state.js +3 -8
  193. package/node_modules/@gdh/core/dist/state/migration-state.js.map +1 -1
  194. package/node_modules/@gdh/core/dist/state/migration-trace.d.ts.map +1 -1
  195. package/node_modules/@gdh/core/dist/state/migration-trace.js +3 -8
  196. package/node_modules/@gdh/core/dist/state/migration-trace.js.map +1 -1
  197. package/node_modules/@gdh/core/dist/state/render-inventory.d.ts.map +1 -1
  198. package/node_modules/@gdh/core/dist/state/render-inventory.js.map +1 -1
  199. package/node_modules/@gdh/core/dist/update-cache.d.ts.map +1 -1
  200. package/node_modules/@gdh/core/dist/update-cache.js.map +1 -1
  201. package/node_modules/@gdh/core/dist/update-probe.d.ts.map +1 -1
  202. package/node_modules/@gdh/core/dist/update-probe.js +1 -3
  203. package/node_modules/@gdh/core/dist/update-probe.js.map +1 -1
  204. package/node_modules/@gdh/core/package.json +1 -1
  205. package/node_modules/@gdh/docs/dist/agent-contract.d.ts.map +1 -1
  206. package/node_modules/@gdh/docs/dist/agent-contract.js +2 -4
  207. package/node_modules/@gdh/docs/dist/agent-contract.js.map +1 -1
  208. package/node_modules/@gdh/docs/dist/files.d.ts +1 -1
  209. package/node_modules/@gdh/docs/dist/files.d.ts.map +1 -1
  210. package/node_modules/@gdh/docs/dist/guidance.js +1 -1
  211. package/node_modules/@gdh/docs/dist/guidance.js.map +1 -1
  212. package/node_modules/@gdh/docs/dist/index.d.ts +4 -4
  213. package/node_modules/@gdh/docs/dist/index.d.ts.map +1 -1
  214. package/node_modules/@gdh/docs/dist/index.js +3 -3
  215. package/node_modules/@gdh/docs/dist/index.js.map +1 -1
  216. package/node_modules/@gdh/docs/dist/official-docs.d.ts.map +1 -1
  217. package/node_modules/@gdh/docs/dist/official-docs.js +16 -5
  218. package/node_modules/@gdh/docs/dist/official-docs.js.map +1 -1
  219. package/node_modules/@gdh/docs/dist/query.d.ts.map +1 -1
  220. package/node_modules/@gdh/docs/dist/query.js +8 -3
  221. package/node_modules/@gdh/docs/dist/query.js.map +1 -1
  222. package/node_modules/@gdh/docs/dist/recovery-hints.d.ts.map +1 -1
  223. package/node_modules/@gdh/docs/dist/recovery-hints.js +0 -1
  224. package/node_modules/@gdh/docs/dist/recovery-hints.js.map +1 -1
  225. package/node_modules/@gdh/docs/dist/template-assets.js.map +1 -1
  226. package/node_modules/@gdh/docs/package.json +2 -2
  227. package/node_modules/@gdh/editor/dist/index.d.ts +1 -3
  228. package/node_modules/@gdh/editor/dist/index.d.ts.map +1 -1
  229. package/node_modules/@gdh/editor/dist/index.js +9 -682
  230. package/node_modules/@gdh/editor/dist/index.js.map +1 -1
  231. package/node_modules/@gdh/editor/package.json +2 -2
  232. package/node_modules/@gdh/mcp/dist/bridge-tools.d.ts +8 -1
  233. package/node_modules/@gdh/mcp/dist/bridge-tools.d.ts.map +1 -1
  234. package/node_modules/@gdh/mcp/dist/bridge-tools.js +81 -2
  235. package/node_modules/@gdh/mcp/dist/bridge-tools.js.map +1 -1
  236. package/node_modules/@gdh/mcp/dist/index.d.ts.map +1 -1
  237. package/node_modules/@gdh/mcp/dist/index.js +10 -77
  238. package/node_modules/@gdh/mcp/dist/index.js.map +1 -1
  239. package/node_modules/@gdh/mcp/package.json +8 -10
  240. package/node_modules/@gdh/observability/dist/guidance-audit.d.ts.map +1 -1
  241. package/node_modules/@gdh/observability/dist/guidance-audit.js +11 -21
  242. package/node_modules/@gdh/observability/dist/guidance-audit.js.map +1 -1
  243. package/node_modules/@gdh/observability/dist/index.d.ts +2 -2
  244. package/node_modules/@gdh/observability/dist/index.d.ts.map +1 -1
  245. package/node_modules/@gdh/observability/dist/index.js +1 -1
  246. package/node_modules/@gdh/observability/dist/index.js.map +1 -1
  247. package/node_modules/@gdh/observability/dist/runtime-bundles.d.ts.map +1 -1
  248. package/node_modules/@gdh/observability/dist/runtime-bundles.js +3 -10
  249. package/node_modules/@gdh/observability/dist/runtime-bundles.js.map +1 -1
  250. package/node_modules/@gdh/observability/dist/runtime-corpus.d.ts.map +1 -1
  251. package/node_modules/@gdh/observability/dist/runtime-corpus.js +1 -1
  252. package/node_modules/@gdh/observability/dist/runtime-corpus.js.map +1 -1
  253. package/node_modules/@gdh/observability/package.json +3 -2
  254. package/node_modules/@gdh/runtime/dist/bridge-broker-client.d.ts +1 -1
  255. package/node_modules/@gdh/runtime/dist/bridge-broker-client.d.ts.map +1 -1
  256. package/node_modules/@gdh/runtime/dist/bridge-broker-client.js +0 -1
  257. package/node_modules/@gdh/runtime/dist/bridge-broker-client.js.map +1 -1
  258. package/node_modules/@gdh/runtime/dist/bridge-broker.d.ts +1 -1
  259. package/node_modules/@gdh/runtime/dist/bridge-broker.d.ts.map +1 -1
  260. package/node_modules/@gdh/runtime/dist/bridge-broker.js +9 -5
  261. package/node_modules/@gdh/runtime/dist/bridge-broker.js.map +1 -1
  262. package/node_modules/@gdh/runtime/dist/bridge-surface.d.ts +1 -1
  263. package/node_modules/@gdh/runtime/dist/bridge-surface.d.ts.map +1 -1
  264. package/node_modules/@gdh/runtime/dist/bridge-surface.js +2 -2
  265. package/node_modules/@gdh/runtime/dist/bridge-surface.js.map +1 -1
  266. package/node_modules/@gdh/runtime/dist/docker-provider.d.ts +1 -1
  267. package/node_modules/@gdh/runtime/dist/docker-provider.d.ts.map +1 -1
  268. package/node_modules/@gdh/runtime/dist/docker-provider.js +5 -16
  269. package/node_modules/@gdh/runtime/dist/docker-provider.js.map +1 -1
  270. package/node_modules/@gdh/runtime/dist/index.js +2 -1
  271. package/node_modules/@gdh/runtime/dist/index.js.map +1 -1
  272. package/node_modules/@gdh/runtime/dist/knowledge-surface.d.ts.map +1 -1
  273. package/node_modules/@gdh/runtime/dist/knowledge-surface.js +21 -10
  274. package/node_modules/@gdh/runtime/dist/knowledge-surface.js.map +1 -1
  275. package/node_modules/@gdh/runtime/package.json +2 -3
  276. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.d.ts.map +1 -1
  277. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.js +1 -5
  278. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.js.map +1 -1
  279. package/node_modules/@gdh/scan/dist/index.d.ts +3 -3
  280. package/node_modules/@gdh/scan/dist/index.d.ts.map +1 -1
  281. package/node_modules/@gdh/scan/dist/index.js +3 -3
  282. package/node_modules/@gdh/scan/dist/index.js.map +1 -1
  283. package/node_modules/@gdh/scan/dist/inventory-cache.js +1 -1
  284. package/node_modules/@gdh/scan/dist/inventory-cache.js.map +1 -1
  285. package/node_modules/@gdh/scan/dist/onboard.d.ts +1 -2
  286. package/node_modules/@gdh/scan/dist/onboard.d.ts.map +1 -1
  287. package/node_modules/@gdh/scan/dist/onboard.js +4 -5
  288. package/node_modules/@gdh/scan/dist/onboard.js.map +1 -1
  289. package/node_modules/@gdh/scan/dist/scan.d.ts.map +1 -1
  290. package/node_modules/@gdh/scan/dist/scan.js +4 -2
  291. package/node_modules/@gdh/scan/dist/scan.js.map +1 -1
  292. package/node_modules/@gdh/scan/package.json +3 -3
  293. package/node_modules/@gdh/verify/dist/corpus.d.ts.map +1 -1
  294. package/node_modules/@gdh/verify/dist/corpus.js +7 -6
  295. package/node_modules/@gdh/verify/dist/corpus.js.map +1 -1
  296. package/node_modules/@gdh/verify/dist/index.d.ts.map +1 -1
  297. package/node_modules/@gdh/verify/dist/index.js +0 -1
  298. package/node_modules/@gdh/verify/dist/index.js.map +1 -1
  299. package/node_modules/@gdh/verify/dist/readiness.d.ts.map +1 -1
  300. package/node_modules/@gdh/verify/dist/readiness.js.map +1 -1
  301. package/node_modules/@gdh/verify/dist/scenarios.d.ts +1 -1
  302. package/node_modules/@gdh/verify/dist/scenarios.d.ts.map +1 -1
  303. package/node_modules/@gdh/verify/dist/scenarios.js +14 -11
  304. package/node_modules/@gdh/verify/dist/scenarios.js.map +1 -1
  305. package/node_modules/@gdh/verify/package.json +6 -7
  306. package/node_modules/@hono/node-server/dist/index.js +22 -0
  307. package/node_modules/@hono/node-server/dist/index.mjs +22 -0
  308. package/node_modules/@hono/node-server/dist/listener.js +22 -0
  309. package/node_modules/@hono/node-server/dist/listener.mjs +22 -0
  310. package/node_modules/@hono/node-server/dist/request.js +11 -0
  311. package/node_modules/@hono/node-server/dist/request.mjs +11 -0
  312. package/node_modules/@hono/node-server/dist/response.js +11 -0
  313. package/node_modules/@hono/node-server/dist/response.mjs +11 -0
  314. package/node_modules/@hono/node-server/dist/server.js +22 -0
  315. package/node_modules/@hono/node-server/dist/server.mjs +22 -0
  316. package/node_modules/@hono/node-server/dist/utils.d.mts +2 -2
  317. package/node_modules/@hono/node-server/dist/utils.d.ts +2 -2
  318. package/node_modules/@hono/node-server/dist/vercel.js +22 -0
  319. package/node_modules/@hono/node-server/dist/vercel.mjs +22 -0
  320. package/node_modules/@hono/node-server/package.json +1 -1
  321. package/node_modules/ajv/README.md +1 -1
  322. package/node_modules/ajv/dist/core.js +1 -1
  323. package/node_modules/ajv/dist/core.js.map +1 -1
  324. package/node_modules/ajv/lib/core.ts +1 -1
  325. package/node_modules/ajv/package.json +2 -3
  326. package/node_modules/eventsource-parser/LICENSE +1 -1
  327. package/node_modules/eventsource-parser/dist/index.cjs +104 -44
  328. package/node_modules/eventsource-parser/dist/index.cjs.map +1 -1
  329. package/node_modules/eventsource-parser/dist/index.d.cts +23 -21
  330. package/node_modules/eventsource-parser/dist/index.d.ts +23 -21
  331. package/node_modules/eventsource-parser/dist/index.js +104 -44
  332. package/node_modules/eventsource-parser/dist/index.js.map +1 -1
  333. package/node_modules/eventsource-parser/dist/stream.d.cts +22 -19
  334. package/node_modules/eventsource-parser/dist/stream.d.ts +22 -19
  335. package/node_modules/eventsource-parser/package.json +54 -77
  336. package/node_modules/eventsource-parser/src/parse.ts +270 -107
  337. package/node_modules/express-rate-limit/dist/index.cjs +51 -10
  338. package/node_modules/express-rate-limit/dist/index.d.cts +31 -1
  339. package/node_modules/express-rate-limit/dist/index.d.mts +31 -1
  340. package/node_modules/express-rate-limit/dist/index.d.ts +31 -1
  341. package/node_modules/express-rate-limit/dist/index.mjs +51 -10
  342. package/node_modules/express-rate-limit/package.json +3 -2
  343. package/node_modules/express-rate-limit/readme.md +3 -0
  344. package/node_modules/fast-string-truncated-width/dist/index.js +36 -96
  345. package/node_modules/fast-string-truncated-width/dist/types.d.ts +0 -3
  346. package/node_modules/fast-string-truncated-width/dist/utils.d.ts +3 -3
  347. package/node_modules/fast-string-truncated-width/dist/utils.js +14 -9
  348. package/node_modules/fast-string-truncated-width/package.json +1 -1
  349. package/node_modules/fast-string-truncated-width/readme.md +2 -3
  350. package/node_modules/fast-string-width/package.json +2 -2
  351. package/node_modules/fast-string-width/readme.md +0 -3
  352. package/node_modules/fast-uri/.github/workflows/ci.yml +12 -7
  353. package/node_modules/fast-uri/.github/workflows/lock-threads.yml +19 -0
  354. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +1 -1
  355. package/node_modules/fast-uri/LICENSE +1 -3
  356. package/node_modules/fast-uri/README.md +13 -4
  357. package/node_modules/fast-uri/index.js +90 -24
  358. package/node_modules/fast-uri/lib/utils.js +129 -22
  359. package/node_modules/fast-uri/package.json +3 -4
  360. package/node_modules/fast-wrap-ansi/lib/main.js +4 -1
  361. package/node_modules/fast-wrap-ansi/lib/main.js.map +1 -1
  362. package/node_modules/fast-wrap-ansi/package.json +2 -2
  363. package/node_modules/get-intrinsic/CHANGELOG.md +0 -7
  364. package/node_modules/get-intrinsic/index.js +13 -8
  365. package/node_modules/get-intrinsic/package.json +4 -7
  366. package/node_modules/hasown/CHANGELOG.md +11 -0
  367. package/node_modules/hasown/eslint.config.mjs +6 -0
  368. package/node_modules/hasown/index.d.ts +1 -0
  369. package/node_modules/hasown/package.json +14 -14
  370. package/node_modules/hono/dist/adapter/aws-lambda/handler.js +9 -2
  371. package/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +9 -2
  372. package/node_modules/hono/dist/cjs/helper/ssg/ssg.js +2 -0
  373. package/node_modules/hono/dist/cjs/jsx/base.js +7 -1
  374. package/node_modules/hono/dist/cjs/jsx/dom/render.js +22 -9
  375. package/node_modules/hono/dist/cjs/jsx/jsx-runtime.js +3 -0
  376. package/node_modules/hono/dist/cjs/jsx/utils.js +155 -5
  377. package/node_modules/hono/dist/cjs/middleware/body-limit/index.js +21 -30
  378. package/node_modules/hono/dist/cjs/middleware/cache/index.js +11 -3
  379. package/node_modules/hono/dist/cjs/middleware/cors/index.js +2 -5
  380. package/node_modules/hono/dist/cjs/middleware/method-override/index.js +1 -1
  381. package/node_modules/hono/dist/cjs/middleware/trailing-slash/index.js +2 -2
  382. package/node_modules/hono/dist/cjs/utils/jwt/jws.js +1 -1
  383. package/node_modules/hono/dist/cjs/utils/jwt/jwt.js +12 -6
  384. package/node_modules/hono/dist/helper/ssg/ssg.js +2 -0
  385. package/node_modules/hono/dist/jsx/base.js +13 -2
  386. package/node_modules/hono/dist/jsx/dom/render.js +22 -9
  387. package/node_modules/hono/dist/jsx/jsx-runtime.js +4 -1
  388. package/node_modules/hono/dist/jsx/utils.js +153 -5
  389. package/node_modules/hono/dist/middleware/body-limit/index.js +21 -30
  390. package/node_modules/hono/dist/middleware/cache/index.js +11 -3
  391. package/node_modules/hono/dist/middleware/cors/index.js +2 -5
  392. package/node_modules/hono/dist/middleware/method-override/index.js +1 -1
  393. package/node_modules/hono/dist/middleware/trailing-slash/index.js +2 -2
  394. package/node_modules/hono/dist/tsconfig.build.tsbuildinfo +1 -1
  395. package/node_modules/hono/dist/types/jsx/utils.d.ts +3 -1
  396. package/node_modules/hono/dist/types/middleware/cache/index.d.ts +2 -0
  397. package/node_modules/hono/dist/types/middleware/cors/index.d.ts +1 -1
  398. package/node_modules/hono/dist/types/middleware/trailing-slash/index.d.ts +16 -0
  399. package/node_modules/hono/dist/types/types.d.ts +116 -116
  400. package/node_modules/hono/dist/utils/jwt/jws.js +1 -1
  401. package/node_modules/hono/dist/utils/jwt/jwt.js +12 -6
  402. package/node_modules/hono/package.json +1 -1
  403. package/node_modules/ip-address/README.md +249 -76
  404. package/node_modules/ip-address/dist/address-error.d.ts +0 -1
  405. package/node_modules/ip-address/dist/address-error.js.map +1 -1
  406. package/node_modules/ip-address/dist/common.d.ts +6 -1
  407. package/node_modules/ip-address/dist/common.js +21 -0
  408. package/node_modules/ip-address/dist/common.js.map +1 -1
  409. package/node_modules/ip-address/dist/ip-address.d.ts +0 -1
  410. package/node_modules/ip-address/dist/ip-address.js.map +1 -1
  411. package/node_modules/ip-address/dist/ipv4.d.ts +115 -57
  412. package/node_modules/ip-address/dist/ipv4.js +193 -68
  413. package/node_modules/ip-address/dist/ipv4.js.map +1 -1
  414. package/node_modules/ip-address/dist/ipv6.d.ts +172 -111
  415. package/node_modules/ip-address/dist/ipv6.js +345 -131
  416. package/node_modules/ip-address/dist/ipv6.js.map +1 -1
  417. package/node_modules/ip-address/dist/v4/constants.d.ts +0 -1
  418. package/node_modules/ip-address/dist/v4/constants.js.map +1 -1
  419. package/node_modules/ip-address/dist/v6/constants.d.ts +0 -1
  420. package/node_modules/ip-address/dist/v6/constants.js +5 -0
  421. package/node_modules/ip-address/dist/v6/constants.js.map +1 -1
  422. package/node_modules/ip-address/dist/v6/helpers.d.ts +1 -1
  423. package/node_modules/ip-address/dist/v6/helpers.js +12 -3
  424. package/node_modules/ip-address/dist/v6/helpers.js.map +1 -1
  425. package/node_modules/ip-address/dist/v6/regular-expressions.d.ts +0 -1
  426. package/node_modules/ip-address/dist/v6/regular-expressions.js.map +1 -1
  427. package/node_modules/ip-address/package.json +45 -35
  428. package/node_modules/jose/dist/webapi/jwks/remote.js +1 -1
  429. package/node_modules/jose/dist/webapi/lib/pbes2kw.js +3 -0
  430. package/node_modules/jose/package.json +1 -1
  431. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +5 -3
  432. package/node_modules/yaml/browser/dist/nodes/Alias.js +2 -0
  433. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +11 -8
  434. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +2 -1
  435. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +5 -3
  436. package/node_modules/yaml/dist/nodes/Alias.js +2 -0
  437. package/node_modules/yaml/dist/nodes/Scalar.d.ts +5 -1
  438. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +10 -7
  439. package/node_modules/yaml/dist/stringify/stringifyNumber.js +2 -1
  440. package/node_modules/yaml/package.json +1 -1
  441. package/node_modules/zod/README.md +1 -18
  442. package/node_modules/zod/locales/package.json +2 -1
  443. package/node_modules/zod/mini/package.json +2 -1
  444. package/node_modules/zod/package.json +1 -1
  445. package/node_modules/zod/src/v4/classic/errors.ts +2 -2
  446. package/node_modules/zod/src/v4/classic/external.ts +1 -0
  447. package/node_modules/zod/src/v4/classic/from-json-schema.ts +39 -23
  448. package/node_modules/zod/src/v4/classic/parse.ts +6 -6
  449. package/node_modules/zod/src/v4/classic/schemas.ts +414 -151
  450. package/node_modules/zod/src/v4/core/api.ts +31 -6
  451. package/node_modules/zod/src/v4/core/checks.ts +1 -1
  452. package/node_modules/zod/src/v4/core/core.ts +17 -2
  453. package/node_modules/zod/src/v4/core/errors.ts +31 -24
  454. package/node_modules/zod/src/v4/core/json-schema-processors.ts +17 -18
  455. package/node_modules/zod/src/v4/core/parse.ts +7 -7
  456. package/node_modules/zod/src/v4/core/regexes.ts +8 -1
  457. package/node_modules/zod/src/v4/core/schemas.ts +263 -71
  458. package/node_modules/zod/src/v4/core/to-json-schema.ts +10 -1
  459. package/node_modules/zod/src/v4/core/util.ts +52 -35
  460. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  461. package/node_modules/zod/src/v4/locales/el.ts +121 -0
  462. package/node_modules/zod/src/v4/locales/en.ts +4 -0
  463. package/node_modules/zod/src/v4/locales/fr.ts +24 -8
  464. package/node_modules/zod/src/v4/locales/hr.ts +131 -0
  465. package/node_modules/zod/src/v4/locales/index.ts +3 -0
  466. package/node_modules/zod/src/v4/locales/it.ts +1 -1
  467. package/node_modules/zod/src/v4/locales/ka.ts +8 -8
  468. package/node_modules/zod/src/v4/locales/ro.ts +129 -0
  469. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  470. package/node_modules/zod/src/v4/mini/external.ts +1 -0
  471. package/node_modules/zod/src/v4/mini/schemas.ts +56 -25
  472. package/node_modules/zod/v3/package.json +2 -1
  473. package/node_modules/zod/v4/classic/errors.js +2 -2
  474. package/node_modules/zod/v4/classic/external.d.cts +1 -0
  475. package/node_modules/zod/v4/classic/external.d.ts +1 -0
  476. package/node_modules/zod/v4/classic/from-json-schema.cjs +31 -16
  477. package/node_modules/zod/v4/classic/from-json-schema.js +31 -16
  478. package/node_modules/zod/v4/classic/package.json +2 -1
  479. package/node_modules/zod/v4/classic/schemas.cjs +358 -119
  480. package/node_modules/zod/v4/classic/schemas.d.cts +42 -14
  481. package/node_modules/zod/v4/classic/schemas.d.ts +42 -14
  482. package/node_modules/zod/v4/classic/schemas.js +356 -118
  483. package/node_modules/zod/v4/core/api.cjs +7 -2
  484. package/node_modules/zod/v4/core/api.d.cts +26 -5
  485. package/node_modules/zod/v4/core/api.d.ts +26 -5
  486. package/node_modules/zod/v4/core/api.js +7 -2
  487. package/node_modules/zod/v4/core/checks.d.cts +1 -1
  488. package/node_modules/zod/v4/core/checks.d.ts +1 -1
  489. package/node_modules/zod/v4/core/core.cjs +3 -1
  490. package/node_modules/zod/v4/core/core.js +4 -2
  491. package/node_modules/zod/v4/core/errors.cjs +26 -23
  492. package/node_modules/zod/v4/core/errors.d.cts +1 -0
  493. package/node_modules/zod/v4/core/errors.d.ts +1 -0
  494. package/node_modules/zod/v4/core/errors.js +26 -23
  495. package/node_modules/zod/v4/core/json-schema-processors.cjs +16 -20
  496. package/node_modules/zod/v4/core/json-schema-processors.js +16 -20
  497. package/node_modules/zod/v4/core/package.json +2 -1
  498. package/node_modules/zod/v4/core/parse.cjs +7 -7
  499. package/node_modules/zod/v4/core/parse.js +7 -7
  500. package/node_modules/zod/v4/core/regexes.cjs +9 -3
  501. package/node_modules/zod/v4/core/regexes.d.cts +6 -0
  502. package/node_modules/zod/v4/core/regexes.d.ts +6 -0
  503. package/node_modules/zod/v4/core/regexes.js +7 -1
  504. package/node_modules/zod/v4/core/schemas.cjs +211 -65
  505. package/node_modules/zod/v4/core/schemas.d.cts +39 -1
  506. package/node_modules/zod/v4/core/schemas.d.ts +39 -1
  507. package/node_modules/zod/v4/core/schemas.js +210 -64
  508. package/node_modules/zod/v4/core/to-json-schema.cjs +12 -1
  509. package/node_modules/zod/v4/core/to-json-schema.js +12 -1
  510. package/node_modules/zod/v4/core/util.cjs +54 -30
  511. package/node_modules/zod/v4/core/util.d.cts +1 -0
  512. package/node_modules/zod/v4/core/util.d.ts +1 -0
  513. package/node_modules/zod/v4/core/util.js +55 -32
  514. package/node_modules/zod/v4/core/versions.cjs +2 -2
  515. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  516. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  517. package/node_modules/zod/v4/core/versions.js +2 -2
  518. package/node_modules/zod/v4/locales/el.cjs +136 -0
  519. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  520. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  521. package/node_modules/zod/v4/locales/el.js +109 -0
  522. package/node_modules/zod/v4/locales/en.cjs +4 -0
  523. package/node_modules/zod/v4/locales/en.js +4 -0
  524. package/node_modules/zod/v4/locales/fr.cjs +24 -7
  525. package/node_modules/zod/v4/locales/fr.js +24 -7
  526. package/node_modules/zod/v4/locales/hr.cjs +149 -0
  527. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  528. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  529. package/node_modules/zod/v4/locales/hr.js +122 -0
  530. package/node_modules/zod/v4/locales/index.cjs +8 -1
  531. package/node_modules/zod/v4/locales/index.d.cts +3 -0
  532. package/node_modules/zod/v4/locales/index.d.ts +3 -0
  533. package/node_modules/zod/v4/locales/index.js +3 -0
  534. package/node_modules/zod/v4/locales/it.cjs +1 -1
  535. package/node_modules/zod/v4/locales/it.js +1 -1
  536. package/node_modules/zod/v4/locales/ka.cjs +8 -8
  537. package/node_modules/zod/v4/locales/ka.js +8 -8
  538. package/node_modules/zod/v4/locales/package.json +2 -1
  539. package/node_modules/zod/v4/locales/ro.cjs +146 -0
  540. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  541. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  542. package/node_modules/zod/v4/locales/ro.js +119 -0
  543. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  544. package/node_modules/zod/v4/locales/uz.js +1 -0
  545. package/node_modules/zod/v4/mini/external.d.cts +1 -0
  546. package/node_modules/zod/v4/mini/external.d.ts +1 -0
  547. package/node_modules/zod/v4/mini/package.json +2 -1
  548. package/node_modules/zod/v4/mini/schemas.cjs +41 -4
  549. package/node_modules/zod/v4/mini/schemas.d.cts +28 -10
  550. package/node_modules/zod/v4/mini/schemas.d.ts +28 -10
  551. package/node_modules/zod/v4/mini/schemas.js +40 -4
  552. package/node_modules/zod/v4/package.json +2 -1
  553. package/node_modules/zod/v4-mini/package.json +2 -1
  554. package/package.json +12 -12
  555. package/node_modules/async-function/.eslintrc +0 -16
  556. package/node_modules/async-function/.github/FUNDING.yml +0 -12
  557. package/node_modules/async-function/.nycrc +0 -9
  558. package/node_modules/async-function/CHANGELOG.md +0 -16
  559. package/node_modules/async-function/LICENSE +0 -21
  560. package/node_modules/async-function/README.md +0 -51
  561. package/node_modules/async-function/index.d.mts +0 -3
  562. package/node_modules/async-function/index.d.ts +0 -13
  563. package/node_modules/async-function/index.js +0 -8
  564. package/node_modules/async-function/index.mjs +0 -4
  565. package/node_modules/async-function/legacy.js +0 -18
  566. package/node_modules/async-function/package.json +0 -86
  567. package/node_modules/async-function/require.mjs +0 -5
  568. package/node_modules/async-function/tsconfig.json +0 -9
  569. package/node_modules/async-generator-function/.eslintrc +0 -26
  570. package/node_modules/async-generator-function/.github/FUNDING.yml +0 -12
  571. package/node_modules/async-generator-function/.nycrc +0 -9
  572. package/node_modules/async-generator-function/CHANGELOG.md +0 -15
  573. package/node_modules/async-generator-function/LICENSE +0 -21
  574. package/node_modules/async-generator-function/README.md +0 -52
  575. package/node_modules/async-generator-function/index.d.mts +0 -3
  576. package/node_modules/async-generator-function/index.d.ts +0 -22
  577. package/node_modules/async-generator-function/index.js +0 -8
  578. package/node_modules/async-generator-function/index.mjs +0 -4
  579. package/node_modules/async-generator-function/legacy.js +0 -18
  580. package/node_modules/async-generator-function/package.json +0 -87
  581. package/node_modules/async-generator-function/require.mjs +0 -5
  582. package/node_modules/async-generator-function/tsconfig.json +0 -9
  583. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  584. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  585. package/node_modules/generator-function/.eslintrc +0 -16
  586. package/node_modules/generator-function/.github/FUNDING.yml +0 -12
  587. package/node_modules/generator-function/.nycrc +0 -9
  588. package/node_modules/generator-function/CHANGELOG.md +0 -27
  589. package/node_modules/generator-function/LICENSE.md +0 -7
  590. package/node_modules/generator-function/README.md +0 -51
  591. package/node_modules/generator-function/index.d.mts +0 -3
  592. package/node_modules/generator-function/index.d.ts +0 -3
  593. package/node_modules/generator-function/index.js +0 -8
  594. package/node_modules/generator-function/index.mjs +0 -4
  595. package/node_modules/generator-function/legacy.js +0 -18
  596. package/node_modules/generator-function/package.json +0 -88
  597. package/node_modules/generator-function/require.mjs +0 -5
  598. package/node_modules/generator-function/tsconfig.json +0 -9
  599. package/node_modules/hasown/.eslintrc +0 -5
  600. package/node_modules/ip-address/dist/address-error.d.ts.map +0 -1
  601. package/node_modules/ip-address/dist/common.d.ts.map +0 -1
  602. package/node_modules/ip-address/dist/ip-address.d.ts.map +0 -1
  603. package/node_modules/ip-address/dist/ipv4.d.ts.map +0 -1
  604. package/node_modules/ip-address/dist/ipv6.d.ts.map +0 -1
  605. package/node_modules/ip-address/dist/v4/constants.d.ts.map +0 -1
  606. package/node_modules/ip-address/dist/v6/constants.d.ts.map +0 -1
  607. package/node_modules/ip-address/dist/v6/helpers.d.ts.map +0 -1
  608. package/node_modules/ip-address/dist/v6/regular-expressions.d.ts.map +0 -1
  609. package/node_modules/ip-address/src/address-error.ts +0 -11
  610. package/node_modules/ip-address/src/common.ts +0 -55
  611. package/node_modules/ip-address/src/ip-address.ts +0 -7
  612. package/node_modules/ip-address/src/ipv4.ts +0 -394
  613. package/node_modules/ip-address/src/ipv6.ts +0 -1212
  614. package/node_modules/ip-address/src/v4/constants.ts +0 -7
  615. package/node_modules/ip-address/src/v6/constants.ts +0 -79
  616. package/node_modules/ip-address/src/v6/helpers.ts +0 -48
  617. package/node_modules/ip-address/src/v6/regular-expressions.ts +0 -94
  618. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/.npmignore +0 -0
  619. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/LICENSE +0 -0
  620. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/README.md +0 -0
  621. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/index.js +0 -0
  622. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/mode.js +0 -0
  623. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/package.json +0 -0
  624. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/windows.js +0 -0
  625. /package/node_modules/{cross-spawn/node_modules/which → which}/LICENSE +0 -0
  626. /package/node_modules/{cross-spawn/node_modules/which → which}/README.md +0 -0
  627. /package/node_modules/{cross-spawn/node_modules/which → which}/bin/node-which +0 -0
  628. /package/node_modules/{cross-spawn/node_modules/which → which}/package.json +0 -0
  629. /package/node_modules/{cross-spawn/node_modules/which → which}/which.js +0 -0
@@ -1,1212 +0,0 @@
1
- /* eslint-disable prefer-destructuring */
2
- /* eslint-disable no-param-reassign */
3
-
4
- import * as common from './common';
5
- import * as constants4 from './v4/constants';
6
- import * as constants6 from './v6/constants';
7
- import * as helpers from './v6/helpers';
8
- import { Address4 } from './ipv4';
9
- import {
10
- ADDRESS_BOUNDARY,
11
- possibleElisions,
12
- simpleRegularExpression,
13
- } from './v6/regular-expressions';
14
- import { AddressError } from './address-error';
15
- import { testBit } from './common';
16
-
17
- function assert(condition: any): asserts condition {
18
- if (!condition) {
19
- throw new Error('Assertion failed.');
20
- }
21
- }
22
-
23
- function addCommas(number: string): string {
24
- const r = /(\d+)(\d{3})/;
25
-
26
- while (r.test(number)) {
27
- number = number.replace(r, '$1,$2');
28
- }
29
-
30
- return number;
31
- }
32
-
33
- function spanLeadingZeroes4(n: string): string {
34
- n = n.replace(/^(0{1,})([1-9]+)$/, '<span class="parse-error">$1</span>$2');
35
- n = n.replace(/^(0{1,})(0)$/, '<span class="parse-error">$1</span>$2');
36
-
37
- return n;
38
- }
39
-
40
- /*
41
- * A helper function to compact an array
42
- */
43
- function compact(address: string[], slice: number[]) {
44
- const s1 = [];
45
- const s2 = [];
46
- let i;
47
-
48
- for (i = 0; i < address.length; i++) {
49
- if (i < slice[0]) {
50
- s1.push(address[i]);
51
- } else if (i > slice[1]) {
52
- s2.push(address[i]);
53
- }
54
- }
55
-
56
- return s1.concat(['compact']).concat(s2);
57
- }
58
-
59
- function paddedHex(octet: string): string {
60
- return parseInt(octet, 16).toString(16).padStart(4, '0');
61
- }
62
-
63
- function unsignByte(b: number) {
64
- // eslint-disable-next-line no-bitwise
65
- return b & 0xff;
66
- }
67
-
68
- interface SixToFourProperties {
69
- prefix: string;
70
- gateway: string;
71
- }
72
-
73
- interface TeredoProperties {
74
- prefix: string;
75
- server4: string;
76
- client4: string;
77
- flags: string;
78
- coneNat: boolean;
79
- microsoft: {
80
- reserved: boolean;
81
- universalLocal: boolean;
82
- groupIndividual: boolean;
83
- nonce: string;
84
- };
85
- udpPort: string;
86
- }
87
-
88
- /**
89
- * Represents an IPv6 address
90
- * @class Address6
91
- * @param {string} address - An IPv6 address string
92
- * @param {number} [groups=8] - How many octets to parse
93
- * @example
94
- * var address = new Address6('2001::/32');
95
- */
96
- export class Address6 {
97
- address4?: Address4;
98
- address: string;
99
- addressMinusSuffix: string = '';
100
- elidedGroups?: number;
101
- elisionBegin?: number;
102
- elisionEnd?: number;
103
- groups: number;
104
- parsedAddress4?: string;
105
- parsedAddress: string[];
106
- parsedSubnet: string = '';
107
- subnet: string = '/128';
108
- subnetMask: number = 128;
109
- v4: boolean = false;
110
- zone: string = '';
111
-
112
- constructor(address: string, optionalGroups?: number) {
113
- if (optionalGroups === undefined) {
114
- this.groups = constants6.GROUPS;
115
- } else {
116
- this.groups = optionalGroups;
117
- }
118
-
119
- this.address = address;
120
-
121
- const subnet = constants6.RE_SUBNET_STRING.exec(address);
122
-
123
- if (subnet) {
124
- this.parsedSubnet = subnet[0].replace('/', '');
125
- this.subnetMask = parseInt(this.parsedSubnet, 10);
126
- this.subnet = `/${this.subnetMask}`;
127
-
128
- if (
129
- Number.isNaN(this.subnetMask) ||
130
- this.subnetMask < 0 ||
131
- this.subnetMask > constants6.BITS
132
- ) {
133
- throw new AddressError('Invalid subnet mask.');
134
- }
135
-
136
- address = address.replace(constants6.RE_SUBNET_STRING, '');
137
- } else if (/\//.test(address)) {
138
- throw new AddressError('Invalid subnet mask.');
139
- }
140
-
141
- const zone = constants6.RE_ZONE_STRING.exec(address);
142
-
143
- if (zone) {
144
- this.zone = zone[0];
145
-
146
- address = address.replace(constants6.RE_ZONE_STRING, '');
147
- }
148
-
149
- this.addressMinusSuffix = address;
150
-
151
- this.parsedAddress = this.parse(this.addressMinusSuffix);
152
- }
153
-
154
- static isValid(address: string): boolean {
155
- try {
156
- // eslint-disable-next-line no-new
157
- new Address6(address);
158
-
159
- return true;
160
- } catch (e) {
161
- return false;
162
- }
163
- }
164
-
165
- /**
166
- * Convert a BigInt to a v6 address object
167
- * @memberof Address6
168
- * @static
169
- * @param {bigint} bigInt - a BigInt to convert
170
- * @returns {Address6}
171
- * @example
172
- * var bigInt = BigInt('1000000000000');
173
- * var address = Address6.fromBigInt(bigInt);
174
- * address.correctForm(); // '::e8:d4a5:1000'
175
- */
176
- static fromBigInt(bigInt: bigint): Address6 {
177
- const hex = bigInt.toString(16).padStart(32, '0');
178
- const groups = [];
179
- let i;
180
-
181
- for (i = 0; i < constants6.GROUPS; i++) {
182
- groups.push(hex.slice(i * 4, (i + 1) * 4));
183
- }
184
-
185
- return new Address6(groups.join(':'));
186
- }
187
-
188
- /**
189
- * Convert a URL (with optional port number) to an address object
190
- * @memberof Address6
191
- * @static
192
- * @param {string} url - a URL with optional port number
193
- * @example
194
- * var addressAndPort = Address6.fromURL('http://[ffff::]:8080/foo/');
195
- * addressAndPort.address.correctForm(); // 'ffff::'
196
- * addressAndPort.port; // 8080
197
- */
198
- static fromURL(url: string) {
199
- let host: string;
200
- let port: string | number | null = null;
201
- let result: string[] | null;
202
-
203
- // If we have brackets parse them and find a port
204
- if (url.indexOf('[') !== -1 && url.indexOf(']:') !== -1) {
205
- result = constants6.RE_URL_WITH_PORT.exec(url);
206
-
207
- if (result === null) {
208
- return {
209
- error: 'failed to parse address with port',
210
- address: null,
211
- port: null,
212
- };
213
- }
214
-
215
- host = result[1];
216
- port = result[2];
217
- // If there's a URL extract the address
218
- } else if (url.indexOf('/') !== -1) {
219
- // Remove the protocol prefix
220
- url = url.replace(/^[a-z0-9]+:\/\//, '');
221
-
222
- // Parse the address
223
- result = constants6.RE_URL.exec(url);
224
-
225
- if (result === null) {
226
- return {
227
- error: 'failed to parse address from URL',
228
- address: null,
229
- port: null,
230
- };
231
- }
232
-
233
- host = result[1];
234
- // Otherwise just assign the URL to the host and let the library parse it
235
- } else {
236
- host = url;
237
- }
238
-
239
- // If there's a port convert it to an integer
240
- if (port) {
241
- port = parseInt(port, 10);
242
-
243
- // squelch out of range ports
244
- if (port < 0 || port > 65536) {
245
- port = null;
246
- }
247
- } else {
248
- // Standardize `undefined` to `null`
249
- port = null;
250
- }
251
-
252
- return {
253
- address: new Address6(host),
254
- port,
255
- };
256
- }
257
-
258
- /**
259
- * Create an IPv6-mapped address given an IPv4 address
260
- * @memberof Address6
261
- * @static
262
- * @param {string} address - An IPv4 address string
263
- * @returns {Address6}
264
- * @example
265
- * var address = Address6.fromAddress4('192.168.0.1');
266
- * address.correctForm(); // '::ffff:c0a8:1'
267
- * address.to4in6(); // '::ffff:192.168.0.1'
268
- */
269
- static fromAddress4(address: string): Address6 {
270
- const address4 = new Address4(address);
271
-
272
- const mask6 = constants6.BITS - (constants4.BITS - address4.subnetMask);
273
-
274
- return new Address6(`::ffff:${address4.correctForm()}/${mask6}`);
275
- }
276
-
277
- /**
278
- * Return an address from ip6.arpa form
279
- * @memberof Address6
280
- * @static
281
- * @param {string} arpaFormAddress - an 'ip6.arpa' form address
282
- * @returns {Adress6}
283
- * @example
284
- * var address = Address6.fromArpa(e.f.f.f.3.c.2.6.f.f.f.e.6.6.8.e.1.0.6.7.9.4.e.c.0.0.0.0.1.0.0.2.ip6.arpa.)
285
- * address.correctForm(); // '2001:0:ce49:7601:e866:efff:62c3:fffe'
286
- */
287
- static fromArpa(arpaFormAddress: string): Address6 {
288
- // remove ending ".ip6.arpa." or just "."
289
- let address = arpaFormAddress.replace(/(\.ip6\.arpa)?\.$/, '');
290
- const semicolonAmount = 7;
291
-
292
- // correct ip6.arpa form with ending removed will be 63 characters
293
- if (address.length !== 63) {
294
- throw new AddressError("Invalid 'ip6.arpa' form.");
295
- }
296
-
297
- const parts = address.split('.').reverse();
298
-
299
- for (let i = semicolonAmount; i > 0; i--) {
300
- const insertIndex = i * 4;
301
- parts.splice(insertIndex, 0, ':');
302
- }
303
-
304
- address = parts.join('');
305
-
306
- return new Address6(address);
307
- }
308
-
309
- /**
310
- * Return the Microsoft UNC transcription of the address
311
- * @memberof Address6
312
- * @instance
313
- * @returns {String} the Microsoft UNC transcription of the address
314
- */
315
- microsoftTranscription(): string {
316
- return `${this.correctForm().replace(/:/g, '-')}.ipv6-literal.net`;
317
- }
318
-
319
- /**
320
- * Return the first n bits of the address, defaulting to the subnet mask
321
- * @memberof Address6
322
- * @instance
323
- * @param {number} [mask=subnet] - the number of bits to mask
324
- * @returns {String} the first n bits of the address as a string
325
- */
326
- mask(mask: number = this.subnetMask): string {
327
- return this.getBitsBase2(0, mask);
328
- }
329
-
330
- /**
331
- * Return the number of possible subnets of a given size in the address
332
- * @memberof Address6
333
- * @instance
334
- * @param {number} [subnetSize=128] - the subnet size
335
- * @returns {String}
336
- */
337
- // TODO: probably useful to have a numeric version of this too
338
- possibleSubnets(subnetSize: number = 128): string {
339
- const availableBits = constants6.BITS - this.subnetMask;
340
- const subnetBits = Math.abs(subnetSize - constants6.BITS);
341
- const subnetPowers = availableBits - subnetBits;
342
-
343
- if (subnetPowers < 0) {
344
- return '0';
345
- }
346
-
347
- return addCommas((BigInt('2') ** BigInt(subnetPowers)).toString(10));
348
- }
349
-
350
- /**
351
- * Helper function getting start address.
352
- * @memberof Address6
353
- * @instance
354
- * @returns {bigint}
355
- */
356
- _startAddress(): bigint {
357
- return BigInt(`0b${this.mask() + '0'.repeat(constants6.BITS - this.subnetMask)}`);
358
- }
359
-
360
- /**
361
- * The first address in the range given by this address' subnet
362
- * Often referred to as the Network Address.
363
- * @memberof Address6
364
- * @instance
365
- * @returns {Address6}
366
- */
367
- startAddress(): Address6 {
368
- return Address6.fromBigInt(this._startAddress());
369
- }
370
-
371
- /**
372
- * The first host address in the range given by this address's subnet ie
373
- * the first address after the Network Address
374
- * @memberof Address6
375
- * @instance
376
- * @returns {Address6}
377
- */
378
- startAddressExclusive(): Address6 {
379
- const adjust = BigInt('1');
380
- return Address6.fromBigInt(this._startAddress() + adjust);
381
- }
382
-
383
- /**
384
- * Helper function getting end address.
385
- * @memberof Address6
386
- * @instance
387
- * @returns {bigint}
388
- */
389
- _endAddress(): bigint {
390
- return BigInt(`0b${this.mask() + '1'.repeat(constants6.BITS - this.subnetMask)}`);
391
- }
392
-
393
- /**
394
- * The last address in the range given by this address' subnet
395
- * Often referred to as the Broadcast
396
- * @memberof Address6
397
- * @instance
398
- * @returns {Address6}
399
- */
400
- endAddress(): Address6 {
401
- return Address6.fromBigInt(this._endAddress());
402
- }
403
-
404
- /**
405
- * The last host address in the range given by this address's subnet ie
406
- * the last address prior to the Broadcast Address
407
- * @memberof Address6
408
- * @instance
409
- * @returns {Address6}
410
- */
411
- endAddressExclusive(): Address6 {
412
- const adjust = BigInt('1');
413
- return Address6.fromBigInt(this._endAddress() - adjust);
414
- }
415
-
416
- /**
417
- * Return the scope of the address
418
- * @memberof Address6
419
- * @instance
420
- * @returns {String}
421
- */
422
- getScope(): string {
423
- let scope = constants6.SCOPES[parseInt(this.getBits(12, 16).toString(10), 10)];
424
-
425
- if (this.getType() === 'Global unicast' && scope !== 'Link local') {
426
- scope = 'Global';
427
- }
428
-
429
- return scope || 'Unknown';
430
- }
431
-
432
- /**
433
- * Return the type of the address
434
- * @memberof Address6
435
- * @instance
436
- * @returns {String}
437
- */
438
- getType(): string {
439
- for (const subnet of Object.keys(constants6.TYPES)) {
440
- if (this.isInSubnet(new Address6(subnet))) {
441
- return constants6.TYPES[subnet] as string;
442
- }
443
- }
444
-
445
- return 'Global unicast';
446
- }
447
-
448
- /**
449
- * Return the bits in the given range as a BigInt
450
- * @memberof Address6
451
- * @instance
452
- * @returns {bigint}
453
- */
454
- getBits(start: number, end: number): bigint {
455
- return BigInt(`0b${this.getBitsBase2(start, end)}`);
456
- }
457
-
458
- /**
459
- * Return the bits in the given range as a base-2 string
460
- * @memberof Address6
461
- * @instance
462
- * @returns {String}
463
- */
464
- getBitsBase2(start: number, end: number): string {
465
- return this.binaryZeroPad().slice(start, end);
466
- }
467
-
468
- /**
469
- * Return the bits in the given range as a base-16 string
470
- * @memberof Address6
471
- * @instance
472
- * @returns {String}
473
- */
474
- getBitsBase16(start: number, end: number): string {
475
- const length = end - start;
476
-
477
- if (length % 4 !== 0) {
478
- throw new Error('Length of bits to retrieve must be divisible by four');
479
- }
480
-
481
- return this.getBits(start, end)
482
- .toString(16)
483
- .padStart(length / 4, '0');
484
- }
485
-
486
- /**
487
- * Return the bits that are set past the subnet mask length
488
- * @memberof Address6
489
- * @instance
490
- * @returns {String}
491
- */
492
- getBitsPastSubnet(): string {
493
- return this.getBitsBase2(this.subnetMask, constants6.BITS);
494
- }
495
-
496
- /**
497
- * Return the reversed ip6.arpa form of the address
498
- * @memberof Address6
499
- * @param {Object} options
500
- * @param {boolean} options.omitSuffix - omit the "ip6.arpa" suffix
501
- * @instance
502
- * @returns {String}
503
- */
504
- reverseForm(options?: common.ReverseFormOptions): string {
505
- if (!options) {
506
- options = {};
507
- }
508
-
509
- const characters = Math.floor(this.subnetMask / 4);
510
-
511
- const reversed = this.canonicalForm()
512
- .replace(/:/g, '')
513
- .split('')
514
- .slice(0, characters)
515
- .reverse()
516
- .join('.');
517
-
518
- if (characters > 0) {
519
- if (options.omitSuffix) {
520
- return reversed;
521
- }
522
-
523
- return `${reversed}.ip6.arpa.`;
524
- }
525
-
526
- if (options.omitSuffix) {
527
- return '';
528
- }
529
-
530
- return 'ip6.arpa.';
531
- }
532
-
533
- /**
534
- * Return the correct form of the address
535
- * @memberof Address6
536
- * @instance
537
- * @returns {String}
538
- */
539
- correctForm(): string {
540
- let i;
541
- let groups = [];
542
-
543
- let zeroCounter = 0;
544
- const zeroes = [];
545
-
546
- for (i = 0; i < this.parsedAddress.length; i++) {
547
- const value = parseInt(this.parsedAddress[i], 16);
548
-
549
- if (value === 0) {
550
- zeroCounter++;
551
- }
552
-
553
- if (value !== 0 && zeroCounter > 0) {
554
- if (zeroCounter > 1) {
555
- zeroes.push([i - zeroCounter, i - 1]);
556
- }
557
-
558
- zeroCounter = 0;
559
- }
560
- }
561
-
562
- // Do we end with a string of zeroes?
563
- if (zeroCounter > 1) {
564
- zeroes.push([this.parsedAddress.length - zeroCounter, this.parsedAddress.length - 1]);
565
- }
566
-
567
- const zeroLengths = zeroes.map((n) => n[1] - n[0] + 1);
568
-
569
- if (zeroes.length > 0) {
570
- const index = zeroLengths.indexOf(Math.max(...zeroLengths) as number);
571
-
572
- groups = compact(this.parsedAddress, zeroes[index]);
573
- } else {
574
- groups = this.parsedAddress;
575
- }
576
-
577
- for (i = 0; i < groups.length; i++) {
578
- if (groups[i] !== 'compact') {
579
- groups[i] = parseInt(groups[i], 16).toString(16);
580
- }
581
- }
582
-
583
- let correct = groups.join(':');
584
-
585
- correct = correct.replace(/^compact$/, '::');
586
- correct = correct.replace(/(^compact)|(compact$)/, ':');
587
- correct = correct.replace(/compact/, '');
588
-
589
- return correct;
590
- }
591
-
592
- /**
593
- * Return a zero-padded base-2 string representation of the address
594
- * @memberof Address6
595
- * @instance
596
- * @returns {String}
597
- * @example
598
- * var address = new Address6('2001:4860:4001:803::1011');
599
- * address.binaryZeroPad();
600
- * // '0010000000000001010010000110000001000000000000010000100000000011
601
- * // 0000000000000000000000000000000000000000000000000001000000010001'
602
- */
603
- binaryZeroPad(): string {
604
- return this.bigInt().toString(2).padStart(constants6.BITS, '0');
605
- }
606
-
607
- // TODO: Improve the semantics of this helper function
608
- parse4in6(address: string): string {
609
- const groups = address.split(':');
610
- const lastGroup = groups.slice(-1)[0];
611
-
612
- const address4 = lastGroup.match(constants4.RE_ADDRESS);
613
-
614
- if (address4) {
615
- this.parsedAddress4 = address4[0];
616
- this.address4 = new Address4(this.parsedAddress4);
617
-
618
- for (let i = 0; i < this.address4.groups; i++) {
619
- if (/^0[0-9]+/.test(this.address4.parsedAddress[i])) {
620
- throw new AddressError(
621
- "IPv4 addresses can't have leading zeroes.",
622
- address.replace(
623
- constants4.RE_ADDRESS,
624
- this.address4.parsedAddress.map(spanLeadingZeroes4).join('.'),
625
- ),
626
- );
627
- }
628
- }
629
-
630
- this.v4 = true;
631
-
632
- groups[groups.length - 1] = this.address4.toGroup6();
633
-
634
- address = groups.join(':');
635
- }
636
-
637
- return address;
638
- }
639
-
640
- // TODO: Make private?
641
- parse(address: string): string[] {
642
- address = this.parse4in6(address);
643
-
644
- const badCharacters = address.match(constants6.RE_BAD_CHARACTERS);
645
-
646
- if (badCharacters) {
647
- throw new AddressError(
648
- `Bad character${
649
- badCharacters.length > 1 ? 's' : ''
650
- } detected in address: ${badCharacters.join('')}`,
651
- address.replace(constants6.RE_BAD_CHARACTERS, '<span class="parse-error">$1</span>'),
652
- );
653
- }
654
-
655
- const badAddress = address.match(constants6.RE_BAD_ADDRESS);
656
-
657
- if (badAddress) {
658
- throw new AddressError(
659
- `Address failed regex: ${badAddress.join('')}`,
660
- address.replace(constants6.RE_BAD_ADDRESS, '<span class="parse-error">$1</span>'),
661
- );
662
- }
663
-
664
- let groups: string[] = [];
665
-
666
- const halves = address.split('::');
667
-
668
- if (halves.length === 2) {
669
- let first = halves[0].split(':');
670
- let last = halves[1].split(':');
671
-
672
- if (first.length === 1 && first[0] === '') {
673
- first = [];
674
- }
675
-
676
- if (last.length === 1 && last[0] === '') {
677
- last = [];
678
- }
679
-
680
- const remaining = this.groups - (first.length + last.length);
681
-
682
- if (!remaining) {
683
- throw new AddressError('Error parsing groups');
684
- }
685
-
686
- this.elidedGroups = remaining;
687
-
688
- this.elisionBegin = first.length;
689
- this.elisionEnd = first.length + this.elidedGroups;
690
-
691
- groups = groups.concat(first);
692
-
693
- for (let i = 0; i < remaining; i++) {
694
- groups.push('0');
695
- }
696
-
697
- groups = groups.concat(last);
698
- } else if (halves.length === 1) {
699
- groups = address.split(':');
700
-
701
- this.elidedGroups = 0;
702
- } else {
703
- throw new AddressError('Too many :: groups found');
704
- }
705
-
706
- groups = groups.map((group: string) => parseInt(group, 16).toString(16));
707
-
708
- if (groups.length !== this.groups) {
709
- throw new AddressError('Incorrect number of groups found');
710
- }
711
-
712
- return groups;
713
- }
714
-
715
- /**
716
- * Return the canonical form of the address
717
- * @memberof Address6
718
- * @instance
719
- * @returns {String}
720
- */
721
- canonicalForm(): string {
722
- return this.parsedAddress.map(paddedHex).join(':');
723
- }
724
-
725
- /**
726
- * Return the decimal form of the address
727
- * @memberof Address6
728
- * @instance
729
- * @returns {String}
730
- */
731
- decimal(): string {
732
- return this.parsedAddress.map((n) => parseInt(n, 16).toString(10).padStart(5, '0')).join(':');
733
- }
734
-
735
- /**
736
- * Return the address as a BigInt
737
- * @memberof Address6
738
- * @instance
739
- * @returns {bigint}
740
- */
741
- bigInt(): bigint {
742
- return BigInt(`0x${this.parsedAddress.map(paddedHex).join('')}`);
743
- }
744
-
745
- /**
746
- * Return the last two groups of this address as an IPv4 address string
747
- * @memberof Address6
748
- * @instance
749
- * @returns {Address4}
750
- * @example
751
- * var address = new Address6('2001:4860:4001::1825:bf11');
752
- * address.to4().correctForm(); // '24.37.191.17'
753
- */
754
- to4(): Address4 {
755
- const binary = this.binaryZeroPad().split('');
756
-
757
- return Address4.fromHex(BigInt(`0b${binary.slice(96, 128).join('')}`).toString(16));
758
- }
759
-
760
- /**
761
- * Return the v4-in-v6 form of the address
762
- * @memberof Address6
763
- * @instance
764
- * @returns {String}
765
- */
766
- to4in6(): string {
767
- const address4 = this.to4();
768
- const address6 = new Address6(this.parsedAddress.slice(0, 6).join(':'), 6);
769
-
770
- const correct = address6.correctForm();
771
-
772
- let infix = '';
773
-
774
- if (!/:$/.test(correct)) {
775
- infix = ':';
776
- }
777
-
778
- return correct + infix + address4.address;
779
- }
780
-
781
- /**
782
- * Return an object containing the Teredo properties of the address
783
- * @memberof Address6
784
- * @instance
785
- * @returns {Object}
786
- */
787
- inspectTeredo(): TeredoProperties {
788
- /*
789
- - Bits 0 to 31 are set to the Teredo prefix (normally 2001:0000::/32).
790
- - Bits 32 to 63 embed the primary IPv4 address of the Teredo server that
791
- is used.
792
- - Bits 64 to 79 can be used to define some flags. Currently only the
793
- higher order bit is used; it is set to 1 if the Teredo client is
794
- located behind a cone NAT, 0 otherwise. For Microsoft's Windows Vista
795
- and Windows Server 2008 implementations, more bits are used. In those
796
- implementations, the format for these 16 bits is "CRAAAAUG AAAAAAAA",
797
- where "C" remains the "Cone" flag. The "R" bit is reserved for future
798
- use. The "U" bit is for the Universal/Local flag (set to 0). The "G" bit
799
- is Individual/Group flag (set to 0). The A bits are set to a 12-bit
800
- randomly generated number chosen by the Teredo client to introduce
801
- additional protection for the Teredo node against IPv6-based scanning
802
- attacks.
803
- - Bits 80 to 95 contains the obfuscated UDP port number. This is the
804
- port number that is mapped by the NAT to the Teredo client with all
805
- bits inverted.
806
- - Bits 96 to 127 contains the obfuscated IPv4 address. This is the
807
- public IPv4 address of the NAT with all bits inverted.
808
- */
809
- const prefix = this.getBitsBase16(0, 32);
810
-
811
- const bitsForUdpPort: bigint = this.getBits(80, 96);
812
- // eslint-disable-next-line no-bitwise
813
- const udpPort = (bitsForUdpPort ^ BigInt('0xffff')).toString();
814
-
815
- const server4 = Address4.fromHex(this.getBitsBase16(32, 64));
816
-
817
- const bitsForClient4 = this.getBits(96, 128);
818
- // eslint-disable-next-line no-bitwise
819
- const client4 = Address4.fromHex((bitsForClient4 ^ BigInt('0xffffffff')).toString(16));
820
-
821
- const flagsBase2 = this.getBitsBase2(64, 80);
822
-
823
- const coneNat = testBit(flagsBase2, 15);
824
- const reserved = testBit(flagsBase2, 14);
825
- const groupIndividual = testBit(flagsBase2, 8);
826
- const universalLocal = testBit(flagsBase2, 9);
827
- const nonce = BigInt(`0b${flagsBase2.slice(2, 6) + flagsBase2.slice(8, 16)}`).toString(10);
828
-
829
- return {
830
- prefix: `${prefix.slice(0, 4)}:${prefix.slice(4, 8)}`,
831
- server4: server4.address,
832
- client4: client4.address,
833
- flags: flagsBase2,
834
- coneNat,
835
- microsoft: {
836
- reserved,
837
- universalLocal,
838
- groupIndividual,
839
- nonce,
840
- },
841
- udpPort,
842
- };
843
- }
844
-
845
- /**
846
- * Return an object containing the 6to4 properties of the address
847
- * @memberof Address6
848
- * @instance
849
- * @returns {Object}
850
- */
851
- inspect6to4(): SixToFourProperties {
852
- /*
853
- - Bits 0 to 15 are set to the 6to4 prefix (2002::/16).
854
- - Bits 16 to 48 embed the IPv4 address of the 6to4 gateway that is used.
855
- */
856
-
857
- const prefix = this.getBitsBase16(0, 16);
858
-
859
- const gateway = Address4.fromHex(this.getBitsBase16(16, 48));
860
-
861
- return {
862
- prefix: prefix.slice(0, 4),
863
- gateway: gateway.address,
864
- };
865
- }
866
-
867
- /**
868
- * Return a v6 6to4 address from a v6 v4inv6 address
869
- * @memberof Address6
870
- * @instance
871
- * @returns {Address6}
872
- */
873
- to6to4(): Address6 | null {
874
- if (!this.is4()) {
875
- return null;
876
- }
877
-
878
- const addr6to4 = [
879
- '2002',
880
- this.getBitsBase16(96, 112),
881
- this.getBitsBase16(112, 128),
882
- '',
883
- '/16',
884
- ].join(':');
885
-
886
- return new Address6(addr6to4);
887
- }
888
-
889
- /**
890
- * Return a byte array
891
- * @memberof Address6
892
- * @instance
893
- * @returns {Array}
894
- */
895
- toByteArray(): number[] {
896
- const valueWithoutPadding = this.bigInt().toString(16);
897
- const leadingPad = '0'.repeat(valueWithoutPadding.length % 2);
898
-
899
- const value = `${leadingPad}${valueWithoutPadding}`;
900
-
901
- const bytes = [];
902
- for (let i = 0, length = value.length; i < length; i += 2) {
903
- bytes.push(parseInt(value.substring(i, i + 2), 16));
904
- }
905
-
906
- return bytes;
907
- }
908
-
909
- /**
910
- * Return an unsigned byte array
911
- * @memberof Address6
912
- * @instance
913
- * @returns {Array}
914
- */
915
- toUnsignedByteArray(): number[] {
916
- return this.toByteArray().map(unsignByte);
917
- }
918
-
919
- /**
920
- * Convert a byte array to an Address6 object
921
- * @memberof Address6
922
- * @static
923
- * @returns {Address6}
924
- */
925
- static fromByteArray(bytes: Array<any>): Address6 {
926
- return this.fromUnsignedByteArray(bytes.map(unsignByte));
927
- }
928
-
929
- /**
930
- * Convert an unsigned byte array to an Address6 object
931
- * @memberof Address6
932
- * @static
933
- * @returns {Address6}
934
- */
935
- static fromUnsignedByteArray(bytes: Array<any>): Address6 {
936
- const BYTE_MAX = BigInt('256');
937
- let result = BigInt('0');
938
- let multiplier = BigInt('1');
939
-
940
- for (let i = bytes.length - 1; i >= 0; i--) {
941
- result += multiplier * BigInt(bytes[i].toString(10));
942
-
943
- multiplier *= BYTE_MAX;
944
- }
945
-
946
- return Address6.fromBigInt(result);
947
- }
948
-
949
- // #region Attributes
950
- /**
951
- * Returns true if the given address is in the subnet of the current address
952
- * @memberof Address6
953
- * @instance
954
- * @returns {boolean}
955
- */
956
- isInSubnet = common.isInSubnet;
957
-
958
- /**
959
- * Returns true if the address is correct, false otherwise
960
- * @memberof Address6
961
- * @instance
962
- * @returns {boolean}
963
- */
964
- isCorrect = common.isCorrect(constants6.BITS);
965
-
966
- /**
967
- * Returns true if the address is in the canonical form, false otherwise
968
- * @memberof Address6
969
- * @instance
970
- * @returns {boolean}
971
- */
972
- isCanonical(): boolean {
973
- return this.addressMinusSuffix === this.canonicalForm();
974
- }
975
-
976
- /**
977
- * Returns true if the address is a link local address, false otherwise
978
- * @memberof Address6
979
- * @instance
980
- * @returns {boolean}
981
- */
982
- isLinkLocal(): boolean {
983
- // Zeroes are required, i.e. we can't check isInSubnet with 'fe80::/10'
984
- if (
985
- this.getBitsBase2(0, 64) ===
986
- '1111111010000000000000000000000000000000000000000000000000000000'
987
- ) {
988
- return true;
989
- }
990
-
991
- return false;
992
- }
993
-
994
- /**
995
- * Returns true if the address is a multicast address, false otherwise
996
- * @memberof Address6
997
- * @instance
998
- * @returns {boolean}
999
- */
1000
- isMulticast(): boolean {
1001
- return this.getType() === 'Multicast';
1002
- }
1003
-
1004
- /**
1005
- * Returns true if the address is a v4-in-v6 address, false otherwise
1006
- * @memberof Address6
1007
- * @instance
1008
- * @returns {boolean}
1009
- */
1010
- is4(): boolean {
1011
- return this.v4;
1012
- }
1013
-
1014
- /**
1015
- * Returns true if the address is a Teredo address, false otherwise
1016
- * @memberof Address6
1017
- * @instance
1018
- * @returns {boolean}
1019
- */
1020
- isTeredo(): boolean {
1021
- return this.isInSubnet(new Address6('2001::/32'));
1022
- }
1023
-
1024
- /**
1025
- * Returns true if the address is a 6to4 address, false otherwise
1026
- * @memberof Address6
1027
- * @instance
1028
- * @returns {boolean}
1029
- */
1030
- is6to4(): boolean {
1031
- return this.isInSubnet(new Address6('2002::/16'));
1032
- }
1033
-
1034
- /**
1035
- * Returns true if the address is a loopback address, false otherwise
1036
- * @memberof Address6
1037
- * @instance
1038
- * @returns {boolean}
1039
- */
1040
- isLoopback(): boolean {
1041
- return this.getType() === 'Loopback';
1042
- }
1043
- // #endregion
1044
-
1045
- // #region HTML
1046
- /**
1047
- * @returns {String} the address in link form with a default port of 80
1048
- */
1049
- href(optionalPort?: number | string): string {
1050
- if (optionalPort === undefined) {
1051
- optionalPort = '';
1052
- } else {
1053
- optionalPort = `:${optionalPort}`;
1054
- }
1055
-
1056
- return `http://[${this.correctForm()}]${optionalPort}/`;
1057
- }
1058
-
1059
- /**
1060
- * @returns {String} a link suitable for conveying the address via a URL hash
1061
- */
1062
- link(options?: { className?: string; prefix?: string; v4?: boolean }): string {
1063
- if (!options) {
1064
- options = {};
1065
- }
1066
-
1067
- if (options.className === undefined) {
1068
- options.className = '';
1069
- }
1070
-
1071
- if (options.prefix === undefined) {
1072
- options.prefix = '/#address=';
1073
- }
1074
-
1075
- if (options.v4 === undefined) {
1076
- options.v4 = false;
1077
- }
1078
-
1079
- let formFunction = this.correctForm;
1080
-
1081
- if (options.v4) {
1082
- formFunction = this.to4in6;
1083
- }
1084
-
1085
- const form = formFunction.call(this);
1086
-
1087
- if (options.className) {
1088
- return `<a href="${options.prefix}${form}" class="${options.className}">${form}</a>`;
1089
- }
1090
-
1091
- return `<a href="${options.prefix}${form}">${form}</a>`;
1092
- }
1093
-
1094
- /**
1095
- * Groups an address
1096
- * @returns {String}
1097
- */
1098
- group(): string {
1099
- if (this.elidedGroups === 0) {
1100
- // The simple case
1101
- return helpers.simpleGroup(this.address).join(':');
1102
- }
1103
-
1104
- assert(typeof this.elidedGroups === 'number');
1105
- assert(typeof this.elisionBegin === 'number');
1106
-
1107
- // The elided case
1108
- const output = [];
1109
-
1110
- const [left, right] = this.address.split('::');
1111
-
1112
- if (left.length) {
1113
- output.push(...helpers.simpleGroup(left));
1114
- } else {
1115
- output.push('');
1116
- }
1117
-
1118
- const classes = ['hover-group'];
1119
-
1120
- for (let i = this.elisionBegin; i < this.elisionBegin + this.elidedGroups; i++) {
1121
- classes.push(`group-${i}`);
1122
- }
1123
-
1124
- output.push(`<span class="${classes.join(' ')}"></span>`);
1125
-
1126
- if (right.length) {
1127
- output.push(...helpers.simpleGroup(right, this.elisionEnd));
1128
- } else {
1129
- output.push('');
1130
- }
1131
-
1132
- if (this.is4()) {
1133
- assert(this.address4 instanceof Address4);
1134
-
1135
- output.pop();
1136
- output.push(this.address4.groupForV6());
1137
- }
1138
-
1139
- return output.join(':');
1140
- }
1141
- // #endregion
1142
-
1143
- // #region Regular expressions
1144
- /**
1145
- * Generate a regular expression string that can be used to find or validate
1146
- * all variations of this address
1147
- * @memberof Address6
1148
- * @instance
1149
- * @param {boolean} substringSearch
1150
- * @returns {string}
1151
- */
1152
- regularExpressionString(this: Address6, substringSearch: boolean = false): string {
1153
- let output: string[] = [];
1154
-
1155
- // TODO: revisit why this is necessary
1156
- const address6 = new Address6(this.correctForm());
1157
-
1158
- if (address6.elidedGroups === 0) {
1159
- // The simple case
1160
- output.push(simpleRegularExpression(address6.parsedAddress));
1161
- } else if (address6.elidedGroups === constants6.GROUPS) {
1162
- // A completely elided address
1163
- output.push(possibleElisions(constants6.GROUPS));
1164
- } else {
1165
- // A partially elided address
1166
- const halves = address6.address.split('::');
1167
-
1168
- if (halves[0].length) {
1169
- output.push(simpleRegularExpression(halves[0].split(':')));
1170
- }
1171
-
1172
- assert(typeof address6.elidedGroups === 'number');
1173
-
1174
- output.push(
1175
- possibleElisions(address6.elidedGroups, halves[0].length !== 0, halves[1].length !== 0),
1176
- );
1177
-
1178
- if (halves[1].length) {
1179
- output.push(simpleRegularExpression(halves[1].split(':')));
1180
- }
1181
-
1182
- output = [output.join(':')];
1183
- }
1184
-
1185
- if (!substringSearch) {
1186
- output = [
1187
- '(?=^|',
1188
- ADDRESS_BOUNDARY,
1189
- '|[^\\w\\:])(',
1190
- ...output,
1191
- ')(?=[^\\w\\:]|',
1192
- ADDRESS_BOUNDARY,
1193
- '|$)',
1194
- ];
1195
- }
1196
-
1197
- return output.join('');
1198
- }
1199
-
1200
- /**
1201
- * Generate a regular expression that can be used to find or validate all
1202
- * variations of this address.
1203
- * @memberof Address6
1204
- * @instance
1205
- * @param {boolean} substringSearch
1206
- * @returns {RegExp}
1207
- */
1208
- regularExpression(this: Address6, substringSearch: boolean = false): RegExp {
1209
- return new RegExp(this.regularExpressionString(substringSearch), 'i');
1210
- }
1211
- // #endregion
1212
- }