@jitsusama/agentic-harness.core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -0
- package/dist/advisor/charter.d.ts +14 -0
- package/dist/advisor/charter.js +48 -0
- package/dist/advisor/findings.d.ts +43 -0
- package/dist/advisor/findings.js +82 -0
- package/dist/advisor/index.d.ts +24 -0
- package/dist/advisor/index.js +23 -0
- package/dist/advisor/settings.d.ts +16 -0
- package/dist/advisor/settings.js +30 -0
- package/dist/advisor/substantive.d.ts +14 -0
- package/dist/advisor/substantive.js +33 -0
- package/dist/advisor/tools.d.ts +38 -0
- package/dist/advisor/tools.js +202 -0
- package/dist/attribution/commit-hook.d.ts +53 -0
- package/dist/attribution/commit-hook.js +133 -0
- package/dist/attribution/gh-footer.d.ts +27 -0
- package/dist/attribution/gh-footer.js +80 -0
- package/dist/attribution/index.d.ts +11 -0
- package/dist/attribution/index.js +11 -0
- package/dist/attribution/model-name.d.ts +11 -0
- package/dist/attribution/model-name.js +26 -0
- package/dist/bin/attribution.d.ts +36 -0
- package/dist/bin/attribution.js +82 -0
- package/dist/bin/cli.d.ts +14 -0
- package/dist/bin/cli.js +236 -0
- package/dist/bin/gate-deps.d.ts +23 -0
- package/dist/bin/gate-deps.js +61 -0
- package/dist/bin/guardians.d.ts +51 -0
- package/dist/bin/guardians.js +174 -0
- package/dist/bin/memory.d.ts +16 -0
- package/dist/bin/memory.js +81 -0
- package/dist/bin/notes.d.ts +30 -0
- package/dist/bin/notes.js +67 -0
- package/dist/bin/process-exec.d.ts +14 -0
- package/dist/bin/process-exec.js +31 -0
- package/dist/bin/quest.d.ts +38 -0
- package/dist/bin/quest.js +187 -0
- package/dist/bin/slack-auth.d.ts +49 -0
- package/dist/bin/slack-auth.js +107 -0
- package/dist/clock/index.d.ts +46 -0
- package/dist/clock/index.js +72 -0
- package/dist/command/cwd.d.ts +21 -0
- package/dist/command/cwd.js +60 -0
- package/dist/command/edit.d.ts +14 -0
- package/dist/command/edit.js +22 -0
- package/dist/command/flags.d.ts +29 -0
- package/dist/command/flags.js +111 -0
- package/dist/command/index.d.ts +16 -0
- package/dist/command/index.js +12 -0
- package/dist/command/tokenize.d.ts +7 -0
- package/dist/command/tokenize.js +315 -0
- package/dist/command/types.d.ts +66 -0
- package/dist/command/types.js +9 -0
- package/dist/completion/index.d.ts +17 -0
- package/dist/completion/index.js +16 -0
- package/dist/completion/investigate.d.ts +63 -0
- package/dist/completion/investigate.js +198 -0
- package/dist/completion/resolve.d.ts +29 -0
- package/dist/completion/resolve.js +42 -0
- package/dist/completion/side.d.ts +51 -0
- package/dist/completion/side.js +93 -0
- package/dist/completion/types.d.ts +84 -0
- package/dist/completion/types.js +14 -0
- package/dist/exec/exec.d.ts +38 -0
- package/dist/exec/exec.js +51 -0
- package/dist/exec/index.d.ts +8 -0
- package/dist/exec/index.js +8 -0
- package/dist/gate/decision.d.ts +52 -0
- package/dist/gate/decision.js +68 -0
- package/dist/gate/deps.d.ts +14 -0
- package/dist/gate/deps.js +1 -0
- package/dist/gate/index.d.ts +2 -0
- package/dist/gate/index.js +1 -0
- package/dist/git-cli/index.d.ts +47 -0
- package/dist/git-cli/index.js +127 -0
- package/dist/github-cli/command-spec.d.ts +14 -0
- package/dist/github-cli/command-spec.js +18 -0
- package/dist/github-cli/index.d.ts +71 -0
- package/dist/github-cli/index.js +188 -0
- package/dist/google/apis/calendar.d.ts +64 -0
- package/dist/google/apis/calendar.js +297 -0
- package/dist/google/apis/docs.d.ts +29 -0
- package/dist/google/apis/docs.js +154 -0
- package/dist/google/apis/drive.d.ts +46 -0
- package/dist/google/apis/drive.js +189 -0
- package/dist/google/apis/gmail.d.ts +67 -0
- package/dist/google/apis/gmail.js +374 -0
- package/dist/google/apis/index.d.ts +10 -0
- package/dist/google/apis/index.js +10 -0
- package/dist/google/apis/sheets.d.ts +16 -0
- package/dist/google/apis/sheets.js +54 -0
- package/dist/google/apis/slides.d.ts +16 -0
- package/dist/google/apis/slides.js +40 -0
- package/dist/google/auth/browser.d.ts +5 -0
- package/dist/google/auth/browser.js +27 -0
- package/dist/google/auth/credentials.d.ts +26 -0
- package/dist/google/auth/credentials.js +69 -0
- package/dist/google/auth/errors.d.ts +15 -0
- package/dist/google/auth/errors.js +26 -0
- package/dist/google/auth/index.d.ts +12 -0
- package/dist/google/auth/index.js +12 -0
- package/dist/google/auth/oauth-app.d.ts +15 -0
- package/dist/google/auth/oauth-app.js +20 -0
- package/dist/google/auth/oauth.d.ts +46 -0
- package/dist/google/auth/oauth.js +146 -0
- package/dist/google/auth/server.d.ts +13 -0
- package/dist/google/auth/server.js +70 -0
- package/dist/google/auth/setup-instructions.d.ts +16 -0
- package/dist/google/auth/setup-instructions.js +24 -0
- package/dist/google/auth/store.d.ts +19 -0
- package/dist/google/auth/store.js +27 -0
- package/dist/google/index.d.ts +13 -0
- package/dist/google/index.js +12 -0
- package/dist/google/paths.d.ts +17 -0
- package/dist/google/paths.js +28 -0
- package/dist/google/renderers/calendar.d.ts +23 -0
- package/dist/google/renderers/calendar.js +312 -0
- package/dist/google/renderers/drive.d.ts +31 -0
- package/dist/google/renderers/drive.js +214 -0
- package/dist/google/renderers/email.d.ts +16 -0
- package/dist/google/renderers/email.js +130 -0
- package/dist/google/renderers/index.d.ts +8 -0
- package/dist/google/renderers/index.js +8 -0
- package/dist/google/types.d.ts +143 -0
- package/dist/google/types.js +27 -0
- package/dist/governance/distill.d.ts +31 -0
- package/dist/governance/distill.js +78 -0
- package/dist/governance/index.d.ts +11 -0
- package/dist/governance/index.js +10 -0
- package/dist/governance/render.d.ts +13 -0
- package/dist/governance/render.js +23 -0
- package/dist/governance/store.d.ts +32 -0
- package/dist/governance/store.js +102 -0
- package/dist/governance/types.d.ts +19 -0
- package/dist/governance/types.js +9 -0
- package/dist/guardian/index.d.ts +7 -0
- package/dist/guardian/index.js +7 -0
- package/dist/guardian/types.d.ts +37 -0
- package/dist/guardian/types.js +12 -0
- package/dist/internal/github/cli.d.ts +40 -0
- package/dist/internal/github/cli.js +102 -0
- package/dist/internal/guardian/commit-file.d.ts +7 -0
- package/dist/internal/guardian/commit-file.js +36 -0
- package/dist/internal/guardian/commit-format.d.ts +35 -0
- package/dist/internal/guardian/commit-format.js +63 -0
- package/dist/internal/guardian/commit-shell.d.ts +38 -0
- package/dist/internal/guardian/commit-shell.js +134 -0
- package/dist/internal/guardian/history-gate.d.ts +41 -0
- package/dist/internal/guardian/history-gate.js +76 -0
- package/dist/internal/guardian/prose-gate.d.ts +31 -0
- package/dist/internal/guardian/prose-gate.js +50 -0
- package/dist/internal/guardian/redirect-gate.d.ts +41 -0
- package/dist/internal/guardian/redirect-gate.js +114 -0
- package/dist/internal/guardian/section-gate.d.ts +20 -0
- package/dist/internal/guardian/section-gate.js +36 -0
- package/dist/internal/guardian/title-gate.d.ts +20 -0
- package/dist/internal/guardian/title-gate.js +36 -0
- package/dist/internal/json-array.d.ts +11 -0
- package/dist/internal/json-array.js +40 -0
- package/dist/internal/lsp/registry.d.ts +12 -0
- package/dist/internal/lsp/registry.js +16 -0
- package/dist/internal/notes/discovery.d.ts +59 -0
- package/dist/internal/notes/discovery.js +91 -0
- package/dist/internal/notes/frontmatter.d.ts +52 -0
- package/dist/internal/notes/frontmatter.js +163 -0
- package/dist/internal/notes/id.d.ts +42 -0
- package/dist/internal/notes/id.js +80 -0
- package/dist/internal/notes/io.d.ts +25 -0
- package/dist/internal/notes/io.js +51 -0
- package/dist/internal/notes/sanitize.d.ts +19 -0
- package/dist/internal/notes/sanitize.js +35 -0
- package/dist/internal/process-global.d.ts +20 -0
- package/dist/internal/process-global.js +28 -0
- package/dist/internal/quest/alias-index.d.ts +61 -0
- package/dist/internal/quest/alias-index.js +69 -0
- package/dist/internal/quest/append-journey.d.ts +22 -0
- package/dist/internal/quest/append-journey.js +63 -0
- package/dist/internal/quest/bash-write.d.ts +49 -0
- package/dist/internal/quest/bash-write.js +208 -0
- package/dist/internal/quest/dates.d.ts +14 -0
- package/dist/internal/quest/dates.js +20 -0
- package/dist/internal/quest/discovery.d.ts +96 -0
- package/dist/internal/quest/discovery.js +354 -0
- package/dist/internal/quest/fields.d.ts +37 -0
- package/dist/internal/quest/fields.js +94 -0
- package/dist/internal/quest/frontmatter.d.ts +88 -0
- package/dist/internal/quest/frontmatter.js +630 -0
- package/dist/internal/quest/git-signals.d.ts +53 -0
- package/dist/internal/quest/git-signals.js +192 -0
- package/dist/internal/quest/id.d.ts +50 -0
- package/dist/internal/quest/id.js +116 -0
- package/dist/internal/quest/io.d.ts +54 -0
- package/dist/internal/quest/io.js +233 -0
- package/dist/internal/quest/mentions.d.ts +45 -0
- package/dist/internal/quest/mentions.js +70 -0
- package/dist/internal/quest/mutate.d.ts +38 -0
- package/dist/internal/quest/mutate.js +83 -0
- package/dist/internal/quest/process-liveness.d.ts +98 -0
- package/dist/internal/quest/process-liveness.js +216 -0
- package/dist/internal/quest/quest-doc.d.ts +116 -0
- package/dist/internal/quest/quest-doc.js +239 -0
- package/dist/internal/quest/ranking.d.ts +48 -0
- package/dist/internal/quest/ranking.js +114 -0
- package/dist/internal/quest/reopen.d.ts +65 -0
- package/dist/internal/quest/reopen.js +113 -0
- package/dist/internal/quest/resolve-cwd.d.ts +32 -0
- package/dist/internal/quest/resolve-cwd.js +89 -0
- package/dist/internal/quest/sanitize.d.ts +42 -0
- package/dist/internal/quest/sanitize.js +69 -0
- package/dist/internal/quest/scaffold.d.ts +59 -0
- package/dist/internal/quest/scaffold.js +169 -0
- package/dist/internal/quest/scratch.d.ts +27 -0
- package/dist/internal/quest/scratch.js +106 -0
- package/dist/internal/quest/session-liveness.d.ts +125 -0
- package/dist/internal/quest/session-liveness.js +386 -0
- package/dist/internal/quest/session-ownership.d.ts +22 -0
- package/dist/internal/quest/session-ownership.js +100 -0
- package/dist/internal/quest/session-registry.d.ts +221 -0
- package/dist/internal/quest/session-registry.js +266 -0
- package/dist/internal/quest/status.d.ts +10 -0
- package/dist/internal/quest/status.js +15 -0
- package/dist/internal/quest/structural-journal.d.ts +41 -0
- package/dist/internal/quest/structural-journal.js +67 -0
- package/dist/internal/quest/structural.d.ts +43 -0
- package/dist/internal/quest/structural.js +77 -0
- package/dist/internal/quest/toc.d.ts +28 -0
- package/dist/internal/quest/toc.js +90 -0
- package/dist/internal/quest/trees.d.ts +53 -0
- package/dist/internal/quest/trees.js +145 -0
- package/dist/internal/quest/url-fetchers.d.ts +50 -0
- package/dist/internal/quest/url-fetchers.js +97 -0
- package/dist/internal/quest/write-classifier.d.ts +46 -0
- package/dist/internal/quest/write-classifier.js +59 -0
- package/dist/internal/refs/builtins.d.ts +32 -0
- package/dist/internal/refs/builtins.js +179 -0
- package/dist/internal/refs/registry.d.ts +25 -0
- package/dist/internal/refs/registry.js +42 -0
- package/dist/internal/registry/global-symbol-registry.d.ts +37 -0
- package/dist/internal/registry/global-symbol-registry.js +55 -0
- package/dist/internal/review/registry.d.ts +12 -0
- package/dist/internal/review/registry.js +16 -0
- package/dist/internal/sqlite/db.d.ts +16 -0
- package/dist/internal/sqlite/db.js +26 -0
- package/dist/internal/terminal/builtins.d.ts +8 -0
- package/dist/internal/terminal/builtins.js +14 -0
- package/dist/internal/terminal/drivers/fallback.d.ts +8 -0
- package/dist/internal/terminal/drivers/fallback.js +31 -0
- package/dist/internal/terminal/drivers/shared.d.ts +39 -0
- package/dist/internal/terminal/drivers/shared.js +51 -0
- package/dist/internal/terminal/drivers/tmux.d.ts +14 -0
- package/dist/internal/terminal/drivers/tmux.js +88 -0
- package/dist/internal/terminal/drivers/wezterm.d.ts +35 -0
- package/dist/internal/terminal/drivers/wezterm.js +175 -0
- package/dist/internal/terminal/registry.d.ts +12 -0
- package/dist/internal/terminal/registry.js +16 -0
- package/dist/internal/tree/builtins.d.ts +8 -0
- package/dist/internal/tree/builtins.js +10 -0
- package/dist/internal/tree/providers/git-worktree.d.ts +20 -0
- package/dist/internal/tree/providers/git-worktree.js +279 -0
- package/dist/internal/tree/registry.d.ts +12 -0
- package/dist/internal/tree/registry.js +16 -0
- package/dist/lsp/config.d.ts +77 -0
- package/dist/lsp/config.js +154 -0
- package/dist/lsp/external.d.ts +13 -0
- package/dist/lsp/external.js +52 -0
- package/dist/lsp/format.d.ts +11 -0
- package/dist/lsp/format.js +54 -0
- package/dist/lsp/index.d.ts +17 -0
- package/dist/lsp/index.js +16 -0
- package/dist/lsp/offsets.d.ts +22 -0
- package/dist/lsp/offsets.js +51 -0
- package/dist/lsp/registry.d.ts +28 -0
- package/dist/lsp/registry.js +45 -0
- package/dist/lsp/standalone/backend.d.ts +42 -0
- package/dist/lsp/standalone/backend.js +150 -0
- package/dist/lsp/standalone/document.d.ts +45 -0
- package/dist/lsp/standalone/document.js +81 -0
- package/dist/lsp/standalone/server.d.ts +84 -0
- package/dist/lsp/standalone/server.js +521 -0
- package/dist/lsp/types.d.ts +119 -0
- package/dist/lsp/types.js +13 -0
- package/dist/memory/db.d.ts +15 -0
- package/dist/memory/db.js +25 -0
- package/dist/memory/index.d.ts +12 -0
- package/dist/memory/index.js +11 -0
- package/dist/memory/paths.d.ts +19 -0
- package/dist/memory/paths.js +33 -0
- package/dist/memory/scope.d.ts +14 -0
- package/dist/memory/scope.js +22 -0
- package/dist/memory/store.d.ts +12 -0
- package/dist/memory/store.js +146 -0
- package/dist/memory/types.d.ts +80 -0
- package/dist/memory/types.js +6 -0
- package/dist/notes/types.d.ts +50 -0
- package/dist/notes/types.js +23 -0
- package/dist/notes/verbs/create.d.ts +5 -0
- package/dist/notes/verbs/create.js +55 -0
- package/dist/notes/verbs/mutate.d.ts +8 -0
- package/dist/notes/verbs/mutate.js +152 -0
- package/dist/notes/verbs/queries.d.ts +15 -0
- package/dist/notes/verbs/queries.js +116 -0
- package/dist/notes/verbs/reindex.d.ts +12 -0
- package/dist/notes/verbs/reindex.js +35 -0
- package/dist/notes/verbs/shared.d.ts +37 -0
- package/dist/notes/verbs/shared.js +29 -0
- package/dist/observability/index.d.ts +13 -0
- package/dist/observability/index.js +12 -0
- package/dist/observability/recorder.d.ts +50 -0
- package/dist/observability/recorder.js +77 -0
- package/dist/observability/store.d.ts +22 -0
- package/dist/observability/store.js +213 -0
- package/dist/observability/types.d.ts +82 -0
- package/dist/observability/types.js +1 -0
- package/dist/process/index.d.ts +9 -0
- package/dist/process/index.js +9 -0
- package/dist/process/process.d.ts +95 -0
- package/dist/process/process.js +153 -0
- package/dist/prose/block.d.ts +9 -0
- package/dist/prose/block.js +43 -0
- package/dist/prose/detect.d.ts +50 -0
- package/dist/prose/detect.js +217 -0
- package/dist/prose/gate.d.ts +14 -0
- package/dist/prose/gate.js +21 -0
- package/dist/prose/index.d.ts +4 -0
- package/dist/prose/index.js +4 -0
- package/dist/prose/wrap.d.ts +9 -0
- package/dist/prose/wrap.js +47 -0
- package/dist/quest/actions.d.ts +20 -0
- package/dist/quest/actions.js +107 -0
- package/dist/quest/config.d.ts +79 -0
- package/dist/quest/config.js +83 -0
- package/dist/quest/index.d.ts +29 -0
- package/dist/quest/index.js +28 -0
- package/dist/quest/lifecycle.d.ts +365 -0
- package/dist/quest/lifecycle.js +900 -0
- package/dist/quest/lookup.d.ts +243 -0
- package/dist/quest/lookup.js +496 -0
- package/dist/quest/machine.d.ts +48 -0
- package/dist/quest/machine.js +96 -0
- package/dist/quest/render-rows.d.ts +166 -0
- package/dist/quest/render-rows.js +214 -0
- package/dist/quest/state.d.ts +111 -0
- package/dist/quest/state.js +46 -0
- package/dist/quest/types.d.ts +224 -0
- package/dist/quest/types.js +10 -0
- package/dist/quest/verbs/alias.d.ts +9 -0
- package/dist/quest/verbs/alias.js +129 -0
- package/dist/quest/verbs/lifecycle.d.ts +36 -0
- package/dist/quest/verbs/lifecycle.js +407 -0
- package/dist/quest/verbs/queries.d.ts +24 -0
- package/dist/quest/verbs/queries.js +241 -0
- package/dist/quest/verbs/reorder.d.ts +15 -0
- package/dist/quest/verbs/reorder.js +85 -0
- package/dist/quest/verbs/shared.d.ts +63 -0
- package/dist/quest/verbs/shared.js +35 -0
- package/dist/quest/verbs/stage.d.ts +39 -0
- package/dist/quest/verbs/stage.js +506 -0
- package/dist/quest/verbs/structural.d.ts +23 -0
- package/dist/quest/verbs/structural.js +310 -0
- package/dist/quest/verbs/tree-ops.d.ts +20 -0
- package/dist/quest/verbs/tree-ops.js +289 -0
- package/dist/refs/index.d.ts +13 -0
- package/dist/refs/index.js +12 -0
- package/dist/refs/lookup.d.ts +53 -0
- package/dist/refs/lookup.js +102 -0
- package/dist/refs/register.d.ts +34 -0
- package/dist/refs/register.js +44 -0
- package/dist/refs/types.d.ts +81 -0
- package/dist/refs/types.js +17 -0
- package/dist/remote/index.d.ts +9 -0
- package/dist/remote/index.js +9 -0
- package/dist/remote/name.d.ts +22 -0
- package/dist/remote/name.js +30 -0
- package/dist/result/cite.d.ts +84 -0
- package/dist/result/cite.js +127 -0
- package/dist/result/counts.d.ts +15 -0
- package/dist/result/counts.js +17 -0
- package/dist/result/details.d.ts +61 -0
- package/dist/result/details.js +121 -0
- package/dist/result/digest.d.ts +37 -0
- package/dist/result/digest.js +227 -0
- package/dist/result/follow.d.ts +29 -0
- package/dist/result/follow.js +37 -0
- package/dist/result/index.d.ts +26 -0
- package/dist/result/index.js +26 -0
- package/dist/result/listing.d.ts +62 -0
- package/dist/result/listing.js +72 -0
- package/dist/result/location.d.ts +67 -0
- package/dist/result/location.js +125 -0
- package/dist/result/query.d.ts +67 -0
- package/dist/result/query.js +144 -0
- package/dist/result/spill.d.ts +41 -0
- package/dist/result/spill.js +121 -0
- package/dist/result/store.d.ts +83 -0
- package/dist/result/store.js +214 -0
- package/dist/result/view.d.ts +31 -0
- package/dist/result/view.js +38 -0
- package/dist/review/anchor.d.ts +84 -0
- package/dist/review/anchor.js +89 -0
- package/dist/review/ask/agents.d.ts +80 -0
- package/dist/review/ask/agents.js +296 -0
- package/dist/review/ask/anchorable.d.ts +35 -0
- package/dist/review/ask/anchorable.js +76 -0
- package/dist/review/ask/answer.d.ts +54 -0
- package/dist/review/ask/answer.js +209 -0
- package/dist/review/ask/audit.d.ts +71 -0
- package/dist/review/ask/audit.js +158 -0
- package/dist/review/ask/collect.d.ts +41 -0
- package/dist/review/ask/collect.js +82 -0
- package/dist/review/ask/council.d.ts +290 -0
- package/dist/review/ask/council.js +386 -0
- package/dist/review/ask/critique.d.ts +69 -0
- package/dist/review/ask/critique.js +157 -0
- package/dist/review/ask/harvest.d.ts +119 -0
- package/dist/review/ask/harvest.js +409 -0
- package/dist/review/ask/identity.d.ts +93 -0
- package/dist/review/ask/identity.js +134 -0
- package/dist/review/ask/judge.d.ts +37 -0
- package/dist/review/ask/judge.js +140 -0
- package/dist/review/ask/persona.d.ts +84 -0
- package/dist/review/ask/persona.js +127 -0
- package/dist/review/ask/progress.d.ts +117 -0
- package/dist/review/ask/progress.js +137 -0
- package/dist/review/ask/prompt.d.ts +131 -0
- package/dist/review/ask/prompt.js +242 -0
- package/dist/review/ask/roster.d.ts +94 -0
- package/dist/review/ask/roster.js +338 -0
- package/dist/review/ask/run.d.ts +435 -0
- package/dist/review/ask/run.js +340 -0
- package/dist/review/ask/span.d.ts +70 -0
- package/dist/review/ask/span.js +166 -0
- package/dist/review/ask/stack-round.d.ts +66 -0
- package/dist/review/ask/stack-round.js +125 -0
- package/dist/review/ask/start.d.ts +48 -0
- package/dist/review/ask/start.js +118 -0
- package/dist/review/ask/store.d.ts +83 -0
- package/dist/review/ask/store.js +226 -0
- package/dist/review/ask/wire.d.ts +89 -0
- package/dist/review/ask/wire.js +204 -0
- package/dist/review/attach.d.ts +161 -0
- package/dist/review/attach.js +357 -0
- package/dist/review/authoring.d.ts +84 -0
- package/dist/review/authoring.js +203 -0
- package/dist/review/backed.d.ts +90 -0
- package/dist/review/backed.js +168 -0
- package/dist/review/bind.d.ts +75 -0
- package/dist/review/bind.js +223 -0
- package/dist/review/budget.d.ts +133 -0
- package/dist/review/budget.js +278 -0
- package/dist/review/capabilities.d.ts +217 -0
- package/dist/review/capabilities.js +46 -0
- package/dist/review/change.d.ts +155 -0
- package/dist/review/change.js +15 -0
- package/dist/review/checks.d.ts +56 -0
- package/dist/review/checks.js +11 -0
- package/dist/review/config.d.ts +71 -0
- package/dist/review/config.js +125 -0
- package/dist/review/conventions.d.ts +35 -0
- package/dist/review/conventions.js +58 -0
- package/dist/review/conversation.d.ts +98 -0
- package/dist/review/conversation.js +16 -0
- package/dist/review/decided.d.ts +58 -0
- package/dist/review/decided.js +67 -0
- package/dist/review/diff.d.ts +116 -0
- package/dist/review/diff.js +237 -0
- package/dist/review/draft/continuation.d.ts +23 -0
- package/dist/review/draft/continuation.js +32 -0
- package/dist/review/draft/fanout.d.ts +57 -0
- package/dist/review/draft/fanout.js +46 -0
- package/dist/review/draft/handle.d.ts +55 -0
- package/dist/review/draft/handle.js +110 -0
- package/dist/review/draft/plan.d.ts +112 -0
- package/dist/review/draft/plan.js +343 -0
- package/dist/review/draft/publish.d.ts +38 -0
- package/dist/review/draft/publish.js +118 -0
- package/dist/review/draft/render.d.ts +32 -0
- package/dist/review/draft/render.js +100 -0
- package/dist/review/draft/state.d.ts +98 -0
- package/dist/review/draft/state.js +83 -0
- package/dist/review/draft/store.d.ts +33 -0
- package/dist/review/draft/store.js +100 -0
- package/dist/review/elsewhere.d.ts +27 -0
- package/dist/review/elsewhere.js +39 -0
- package/dist/review/engine.d.ts +106 -0
- package/dist/review/engine.js +243 -0
- package/dist/review/events.d.ts +59 -0
- package/dist/review/events.js +35 -0
- package/dist/review/failed.d.ts +46 -0
- package/dist/review/failed.js +56 -0
- package/dist/review/finding.d.ts +81 -0
- package/dist/review/finding.js +85 -0
- package/dist/review/fix.d.ts +147 -0
- package/dist/review/fix.js +175 -0
- package/dist/review/followup.d.ts +84 -0
- package/dist/review/followup.js +123 -0
- package/dist/review/index.d.ts +134 -0
- package/dist/review/index.js +80 -0
- package/dist/review/keys.d.ts +23 -0
- package/dist/review/keys.js +40 -0
- package/dist/review/landing.d.ts +37 -0
- package/dist/review/landing.js +68 -0
- package/dist/review/lenses.d.ts +132 -0
- package/dist/review/lenses.js +430 -0
- package/dist/review/propose-from.d.ts +76 -0
- package/dist/review/propose-from.js +86 -0
- package/dist/review/provider.d.ts +306 -0
- package/dist/review/provider.js +16 -0
- package/dist/review/providers/git/index.d.ts +23 -0
- package/dist/review/providers/git/index.js +214 -0
- package/dist/review/providers/github/authoring.d.ts +22 -0
- package/dist/review/providers/github/authoring.js +350 -0
- package/dist/review/providers/github/claims.d.ts +49 -0
- package/dist/review/providers/github/claims.js +136 -0
- package/dist/review/providers/github/conversation.d.ts +18 -0
- package/dist/review/providers/github/conversation.js +455 -0
- package/dist/review/providers/github/fields.d.ts +30 -0
- package/dist/review/providers/github/fields.js +47 -0
- package/dist/review/providers/github/index.d.ts +15 -0
- package/dist/review/providers/github/index.js +110 -0
- package/dist/review/providers/github/proposals.d.ts +14 -0
- package/dist/review/providers/github/proposals.js +298 -0
- package/dist/review/providers/github/queue.d.ts +46 -0
- package/dist/review/providers/github/queue.js +122 -0
- package/dist/review/providers/github/stacking.d.ts +20 -0
- package/dist/review/providers/github/stacking.js +107 -0
- package/dist/review/queue.d.ts +43 -0
- package/dist/review/queue.js +56 -0
- package/dist/review/reactable.d.ts +93 -0
- package/dist/review/reactable.js +140 -0
- package/dist/review/register.d.ts +52 -0
- package/dist/review/register.js +53 -0
- package/dist/review/resolve.d.ts +58 -0
- package/dist/review/resolve.js +150 -0
- package/dist/review/retarget.d.ts +73 -0
- package/dist/review/retarget.js +82 -0
- package/dist/review/revisited.d.ts +77 -0
- package/dist/review/revisited.js +121 -0
- package/dist/review/stack.d.ts +110 -0
- package/dist/review/stack.js +52 -0
- package/dist/sections/block.d.ts +9 -0
- package/dist/sections/block.js +42 -0
- package/dist/sections/detect.d.ts +31 -0
- package/dist/sections/detect.js +67 -0
- package/dist/sections/gate.d.ts +21 -0
- package/dist/sections/gate.js +22 -0
- package/dist/sections/index.d.ts +5 -0
- package/dist/sections/index.js +5 -0
- package/dist/sections/sanctioned.d.ts +13 -0
- package/dist/sections/sanctioned.js +21 -0
- package/dist/shell/index.d.ts +8 -0
- package/dist/shell/index.js +8 -0
- package/dist/shell/parse.d.ts +125 -0
- package/dist/shell/parse.js +298 -0
- package/dist/slack/api/channels.d.ts +12 -0
- package/dist/slack/api/channels.js +28 -0
- package/dist/slack/api/client.d.ts +94 -0
- package/dist/slack/api/client.js +272 -0
- package/dist/slack/api/files.d.ts +95 -0
- package/dist/slack/api/files.js +223 -0
- package/dist/slack/api/index.d.ts +11 -0
- package/dist/slack/api/index.js +11 -0
- package/dist/slack/api/messages.d.ts +98 -0
- package/dist/slack/api/messages.js +292 -0
- package/dist/slack/api/reactions.d.ts +47 -0
- package/dist/slack/api/reactions.js +50 -0
- package/dist/slack/api/resolve-conversations.d.ts +43 -0
- package/dist/slack/api/resolve-conversations.js +130 -0
- package/dist/slack/api/resolve-messages.d.ts +29 -0
- package/dist/slack/api/resolve-messages.js +93 -0
- package/dist/slack/api/resolve-users.d.ts +27 -0
- package/dist/slack/api/resolve-users.js +73 -0
- package/dist/slack/api/search.d.ts +86 -0
- package/dist/slack/api/search.js +186 -0
- package/dist/slack/api/users.d.ts +12 -0
- package/dist/slack/api/users.js +33 -0
- package/dist/slack/auth/browser-extract.d.ts +33 -0
- package/dist/slack/auth/browser-extract.js +201 -0
- package/dist/slack/auth/browser.d.ts +5 -0
- package/dist/slack/auth/browser.js +25 -0
- package/dist/slack/auth/credentials.d.ts +14 -0
- package/dist/slack/auth/credentials.js +24 -0
- package/dist/slack/auth/errors.d.ts +9 -0
- package/dist/slack/auth/errors.js +19 -0
- package/dist/slack/auth/extract.d.ts +23 -0
- package/dist/slack/auth/extract.js +44 -0
- package/dist/slack/auth/index.d.ts +12 -0
- package/dist/slack/auth/index.js +11 -0
- package/dist/slack/auth/oauth-app.d.ts +11 -0
- package/dist/slack/auth/oauth-app.js +20 -0
- package/dist/slack/auth/oauth.d.ts +31 -0
- package/dist/slack/auth/oauth.js +82 -0
- package/dist/slack/auth/server.d.ts +14 -0
- package/dist/slack/auth/server.js +75 -0
- package/dist/slack/auth/store.d.ts +17 -0
- package/dist/slack/auth/store.js +27 -0
- package/dist/slack/block-message.d.ts +9 -0
- package/dist/slack/block-message.js +30 -0
- package/dist/slack/blocks.d.ts +94 -0
- package/dist/slack/blocks.js +765 -0
- package/dist/slack/content-gate.d.ts +12 -0
- package/dist/slack/content-gate.js +22 -0
- package/dist/slack/detect.d.ts +31 -0
- package/dist/slack/detect.js +125 -0
- package/dist/slack/index.d.ts +18 -0
- package/dist/slack/index.js +17 -0
- package/dist/slack/paths.d.ts +28 -0
- package/dist/slack/paths.js +46 -0
- package/dist/slack/renderers/channel.d.ts +6 -0
- package/dist/slack/renderers/channel.js +27 -0
- package/dist/slack/renderers/index.d.ts +9 -0
- package/dist/slack/renderers/index.js +9 -0
- package/dist/slack/renderers/message.d.ts +21 -0
- package/dist/slack/renderers/message.js +214 -0
- package/dist/slack/renderers/reactions.d.ts +8 -0
- package/dist/slack/renderers/reactions.js +43 -0
- package/dist/slack/renderers/search.d.ts +6 -0
- package/dist/slack/renderers/search.js +39 -0
- package/dist/slack/renderers/user.d.ts +6 -0
- package/dist/slack/renderers/user.js +32 -0
- package/dist/slack/resolvers/cache.d.ts +29 -0
- package/dist/slack/resolvers/cache.js +70 -0
- package/dist/slack/resolvers/conversation-cache.d.ts +42 -0
- package/dist/slack/resolvers/conversation-cache.js +128 -0
- package/dist/slack/resolvers/conversation.d.ts +44 -0
- package/dist/slack/resolvers/conversation.js +229 -0
- package/dist/slack/resolvers/index.d.ts +8 -0
- package/dist/slack/resolvers/index.js +8 -0
- package/dist/slack/resolvers/target.d.ts +19 -0
- package/dist/slack/resolvers/target.js +45 -0
- package/dist/slack/resolvers/url.d.ts +20 -0
- package/dist/slack/resolvers/url.js +22 -0
- package/dist/slack/resolvers/user.d.ts +54 -0
- package/dist/slack/resolvers/user.js +134 -0
- package/dist/slack/types.d.ts +180 -0
- package/dist/slack/types.js +13 -0
- package/dist/tdd/attest.d.ts +21 -0
- package/dist/tdd/attest.js +21 -0
- package/dist/tdd/discipline.d.ts +11 -0
- package/dist/tdd/discipline.js +28 -0
- package/dist/tdd/index.d.ts +14 -0
- package/dist/tdd/index.js +13 -0
- package/dist/tdd/machine.d.ts +48 -0
- package/dist/tdd/machine.js +139 -0
- package/dist/tdd/presentation.d.ts +34 -0
- package/dist/tdd/presentation.js +38 -0
- package/dist/tdd/queries.d.ts +10 -0
- package/dist/tdd/queries.js +22 -0
- package/dist/terminal/index.d.ts +12 -0
- package/dist/terminal/index.js +11 -0
- package/dist/terminal/register.d.ts +21 -0
- package/dist/terminal/register.js +31 -0
- package/dist/terminal/resolve.d.ts +63 -0
- package/dist/terminal/resolve.js +117 -0
- package/dist/terminal/types.d.ts +134 -0
- package/dist/terminal/types.js +19 -0
- package/dist/thinking/index.d.ts +20 -0
- package/dist/thinking/index.js +27 -0
- package/dist/title/block.d.ts +9 -0
- package/dist/title/block.js +32 -0
- package/dist/title/detect.d.ts +25 -0
- package/dist/title/detect.js +154 -0
- package/dist/title/gate.d.ts +19 -0
- package/dist/title/gate.js +21 -0
- package/dist/title/index.d.ts +3 -0
- package/dist/title/index.js +3 -0
- package/dist/tree/index.d.ts +18 -0
- package/dist/tree/index.js +17 -0
- package/dist/tree/register.d.ts +21 -0
- package/dist/tree/register.js +31 -0
- package/dist/tree/resolve.d.ts +20 -0
- package/dist/tree/resolve.js +31 -0
- package/dist/tree/types.d.ts +83 -0
- package/dist/tree/types.js +12 -0
- package/dist/ui/count.d.ts +29 -0
- package/dist/ui/count.js +35 -0
- package/dist/ui/path.d.ts +25 -0
- package/dist/ui/path.js +40 -0
- package/dist/verify/index.d.ts +17 -0
- package/dist/verify/index.js +14 -0
- package/dist/verify/project.d.ts +21 -0
- package/dist/verify/project.js +49 -0
- package/dist/verify/resolve.d.ts +26 -0
- package/dist/verify/resolve.js +27 -0
- package/dist/verify/run.d.ts +31 -0
- package/dist/verify/run.js +145 -0
- package/dist/web/a11y/announcements.d.ts +67 -0
- package/dist/web/a11y/announcements.js +116 -0
- package/dist/web/a11y/budget.d.ts +75 -0
- package/dist/web/a11y/budget.js +97 -0
- package/dist/web/a11y/focus.d.ts +37 -0
- package/dist/web/a11y/focus.js +106 -0
- package/dist/web/a11y/index.d.ts +19 -0
- package/dist/web/a11y/index.js +25 -0
- package/dist/web/a11y/naming.d.ts +23 -0
- package/dist/web/a11y/naming.js +55 -0
- package/dist/web/a11y/outline.d.ts +23 -0
- package/dist/web/a11y/outline.js +42 -0
- package/dist/web/a11y/reading.d.ts +12 -0
- package/dist/web/a11y/reading.js +101 -0
- package/dist/web/a11y/scope.d.ts +23 -0
- package/dist/web/a11y/scope.js +99 -0
- package/dist/web/a11y/states.d.ts +22 -0
- package/dist/web/a11y/states.js +53 -0
- package/dist/web/a11y/tree.d.ts +124 -0
- package/dist/web/a11y/tree.js +269 -0
- package/dist/web/a11y/walk.d.ts +225 -0
- package/dist/web/a11y/walk.js +568 -0
- package/dist/web/a11y/walkprobe.d.ts +44 -0
- package/dist/web/a11y/walkprobe.js +365 -0
- package/dist/web/audit/axe.d.ts +219 -0
- package/dist/web/audit/axe.js +322 -0
- package/dist/web/audit/behind.d.ts +63 -0
- package/dist/web/audit/behind.js +142 -0
- package/dist/web/audit/capture.d.ts +43 -0
- package/dist/web/audit/capture.js +185 -0
- package/dist/web/audit/colour.d.ts +85 -0
- package/dist/web/audit/colour.js +189 -0
- package/dist/web/audit/contrast.d.ts +74 -0
- package/dist/web/audit/contrast.js +104 -0
- package/dist/web/audit/health.d.ts +27 -0
- package/dist/web/audit/health.js +57 -0
- package/dist/web/audit/index.d.ts +22 -0
- package/dist/web/audit/index.js +22 -0
- package/dist/web/audit/pair.d.ts +55 -0
- package/dist/web/audit/pair.js +157 -0
- package/dist/web/audit/probe.d.ts +31 -0
- package/dist/web/audit/probe.js +189 -0
- package/dist/web/audit/report.d.ts +22 -0
- package/dist/web/audit/report.js +250 -0
- package/dist/web/audit/structure.d.ts +126 -0
- package/dist/web/audit/structure.js +595 -0
- package/dist/web/audit/sweep.d.ts +66 -0
- package/dist/web/audit/sweep.js +117 -0
- package/dist/web/audit/target.d.ts +89 -0
- package/dist/web/audit/target.js +168 -0
- package/dist/web/audit/verdict.d.ts +48 -0
- package/dist/web/audit/verdict.js +52 -0
- package/dist/web/audit/visual.d.ts +161 -0
- package/dist/web/audit/visual.js +297 -0
- package/dist/web/browser.d.ts +213 -0
- package/dist/web/browser.js +927 -0
- package/dist/web/compare/images.d.ts +45 -0
- package/dist/web/compare/images.js +101 -0
- package/dist/web/compare/index.d.ts +15 -0
- package/dist/web/compare/index.js +15 -0
- package/dist/web/compare/provenance.d.ts +48 -0
- package/dist/web/compare/provenance.js +86 -0
- package/dist/web/compare/regions.d.ts +78 -0
- package/dist/web/compare/regions.js +211 -0
- package/dist/web/cookies/extract.d.ts +26 -0
- package/dist/web/cookies/extract.js +167 -0
- package/dist/web/cookies/index.d.ts +8 -0
- package/dist/web/cookies/index.js +7 -0
- package/dist/web/cookies/inject.d.ts +13 -0
- package/dist/web/cookies/inject.js +27 -0
- package/dist/web/cookies/setup.d.ts +31 -0
- package/dist/web/cookies/setup.js +94 -0
- package/dist/web/design/index.d.ts +9 -0
- package/dist/web/design/index.js +9 -0
- package/dist/web/design/inventory.d.ts +126 -0
- package/dist/web/design/inventory.js +324 -0
- package/dist/web/design/probe.d.ts +24 -0
- package/dist/web/design/probe.js +88 -0
- package/dist/web/element/actionable.d.ts +34 -0
- package/dist/web/element/actionable.js +48 -0
- package/dist/web/element/animations.d.ts +48 -0
- package/dist/web/element/animations.js +74 -0
- package/dist/web/element/box.d.ts +53 -0
- package/dist/web/element/box.js +58 -0
- package/dist/web/element/hover.d.ts +75 -0
- package/dist/web/element/hover.js +172 -0
- package/dist/web/element/index.d.ts +17 -0
- package/dist/web/element/index.js +17 -0
- package/dist/web/element/listeners.d.ts +72 -0
- package/dist/web/element/listeners.js +98 -0
- package/dist/web/element/measure.d.ts +40 -0
- package/dist/web/element/measure.js +118 -0
- package/dist/web/element/probes.d.ts +108 -0
- package/dist/web/element/probes.js +195 -0
- package/dist/web/element/pseudo.d.ts +51 -0
- package/dist/web/element/pseudo.js +96 -0
- package/dist/web/element/view.d.ts +30 -0
- package/dist/web/element/view.js +117 -0
- package/dist/web/element/visibility.d.ts +42 -0
- package/dist/web/element/visibility.js +67 -0
- package/dist/web/envelope/artifacts.d.ts +23 -0
- package/dist/web/envelope/artifacts.js +45 -0
- package/dist/web/envelope/index.d.ts +9 -0
- package/dist/web/envelope/index.js +9 -0
- package/dist/web/envelope/naming.d.ts +23 -0
- package/dist/web/envelope/naming.js +43 -0
- package/dist/web/envelope/paged.d.ts +42 -0
- package/dist/web/envelope/paged.js +99 -0
- package/dist/web/envelope/sink.d.ts +43 -0
- package/dist/web/envelope/sink.js +67 -0
- package/dist/web/environment/devices.d.ts +65 -0
- package/dist/web/environment/devices.js +82 -0
- package/dist/web/environment/emulation.d.ts +124 -0
- package/dist/web/environment/emulation.js +258 -0
- package/dist/web/environment/index.d.ts +15 -0
- package/dist/web/environment/index.js +15 -0
- package/dist/web/environment/probes.d.ts +18 -0
- package/dist/web/environment/probes.js +40 -0
- package/dist/web/environment/shaping.d.ts +90 -0
- package/dist/web/environment/shaping.js +141 -0
- package/dist/web/environment/status.d.ts +51 -0
- package/dist/web/environment/status.js +109 -0
- package/dist/web/environment/storage.d.ts +55 -0
- package/dist/web/environment/storage.js +142 -0
- package/dist/web/environment/tabs.d.ts +32 -0
- package/dist/web/environment/tabs.js +47 -0
- package/dist/web/environment/view.d.ts +10 -0
- package/dist/web/environment/view.js +42 -0
- package/dist/web/evaluate/index.d.ts +6 -0
- package/dist/web/evaluate/index.js +6 -0
- package/dist/web/evaluate/outcome.d.ts +74 -0
- package/dist/web/evaluate/outcome.js +91 -0
- package/dist/web/evaluate/probe.d.ts +31 -0
- package/dist/web/evaluate/probe.js +303 -0
- package/dist/web/index.d.ts +47 -0
- package/dist/web/index.js +47 -0
- package/dist/web/input/index.d.ts +11 -0
- package/dist/web/input/index.js +11 -0
- package/dist/web/input/keys.d.ts +48 -0
- package/dist/web/input/keys.js +189 -0
- package/dist/web/input/pointer.d.ts +56 -0
- package/dist/web/input/pointer.js +77 -0
- package/dist/web/input/touch.d.ts +61 -0
- package/dist/web/input/touch.js +83 -0
- package/dist/web/mermaid.d.ts +69 -0
- package/dist/web/mermaid.js +223 -0
- package/dist/web/paths.d.ts +16 -0
- package/dist/web/paths.js +27 -0
- package/dist/web/perf/heap.d.ts +42 -0
- package/dist/web/perf/heap.js +73 -0
- package/dist/web/perf/index.d.ts +14 -0
- package/dist/web/perf/index.js +14 -0
- package/dist/web/perf/layers.d.ts +98 -0
- package/dist/web/perf/layers.js +165 -0
- package/dist/web/perf/probe.d.ts +26 -0
- package/dist/web/perf/probe.js +123 -0
- package/dist/web/perf/profile.d.ts +53 -0
- package/dist/web/perf/profile.js +97 -0
- package/dist/web/perf/trace.d.ts +152 -0
- package/dist/web/perf/trace.js +429 -0
- package/dist/web/perf/view.d.ts +6 -0
- package/dist/web/perf/view.js +86 -0
- package/dist/web/perf/vitals.d.ts +141 -0
- package/dist/web/perf/vitals.js +175 -0
- package/dist/web/reader.d.ts +131 -0
- package/dist/web/reader.js +340 -0
- package/dist/web/screenshot.d.ts +50 -0
- package/dist/web/screenshot.js +108 -0
- package/dist/web/search.d.ts +49 -0
- package/dist/web/search.js +137 -0
- package/dist/web/session/artifacts.d.ts +32 -0
- package/dist/web/session/artifacts.js +47 -0
- package/dist/web/session/emulation.d.ts +118 -0
- package/dist/web/session/emulation.js +307 -0
- package/dist/web/session/recording.d.ts +51 -0
- package/dist/web/session/recording.js +64 -0
- package/dist/web/session/settling.d.ts +42 -0
- package/dist/web/session/settling.js +104 -0
- package/dist/web/session/shaping.d.ts +48 -0
- package/dist/web/session/shaping.js +113 -0
- package/dist/web/session/sourcemaps.d.ts +64 -0
- package/dist/web/session/sourcemaps.js +135 -0
- package/dist/web/session/telemetry.d.ts +219 -0
- package/dist/web/session/telemetry.js +486 -0
- package/dist/web/session/wires.d.ts +22 -0
- package/dist/web/session/wires.js +11 -0
- package/dist/web/session.d.ts +1153 -0
- package/dist/web/session.js +3400 -0
- package/dist/web/snapshot/deep.d.ts +36 -0
- package/dist/web/snapshot/deep.js +91 -0
- package/dist/web/snapshot/flatten.d.ts +101 -0
- package/dist/web/snapshot/flatten.js +131 -0
- package/dist/web/snapshot/index.d.ts +8 -0
- package/dist/web/snapshot/index.js +10 -0
- package/dist/web/snapshot/presented.d.ts +32 -0
- package/dist/web/snapshot/presented.js +74 -0
- package/dist/web/snapshot/query.d.ts +67 -0
- package/dist/web/snapshot/query.js +136 -0
- package/dist/web/sourcemap/index.d.ts +9 -0
- package/dist/web/sourcemap/index.js +9 -0
- package/dist/web/sourcemap/mappings.d.ts +111 -0
- package/dist/web/sourcemap/mappings.js +218 -0
- package/dist/web/styles/capture.d.ts +49 -0
- package/dist/web/styles/capture.js +85 -0
- package/dist/web/styles/cascade.d.ts +107 -0
- package/dist/web/styles/cascade.js +275 -0
- package/dist/web/styles/curation.d.ts +45 -0
- package/dist/web/styles/curation.js +282 -0
- package/dist/web/styles/index.d.ts +10 -0
- package/dist/web/styles/index.js +10 -0
- package/dist/web/target/index.d.ts +7 -0
- package/dist/web/target/index.js +7 -0
- package/dist/web/target/refusals.d.ts +59 -0
- package/dist/web/target/refusals.js +305 -0
- package/dist/web/target/target.d.ts +59 -0
- package/dist/web/target/target.js +94 -0
- package/dist/web/telemetry/buffer.d.ts +35 -0
- package/dist/web/telemetry/buffer.js +72 -0
- package/dist/web/telemetry/console.d.ts +127 -0
- package/dist/web/telemetry/console.js +217 -0
- package/dist/web/telemetry/dialogs.d.ts +41 -0
- package/dist/web/telemetry/dialogs.js +38 -0
- package/dist/web/telemetry/downloads.d.ts +42 -0
- package/dist/web/telemetry/downloads.js +65 -0
- package/dist/web/telemetry/failure.d.ts +31 -0
- package/dist/web/telemetry/failure.js +72 -0
- package/dist/web/telemetry/har.d.ts +97 -0
- package/dist/web/telemetry/har.js +227 -0
- package/dist/web/telemetry/index.d.ts +18 -0
- package/dist/web/telemetry/index.js +18 -0
- package/dist/web/telemetry/lifecycle.d.ts +69 -0
- package/dist/web/telemetry/lifecycle.js +120 -0
- package/dist/web/telemetry/network.d.ts +152 -0
- package/dist/web/telemetry/network.js +130 -0
- package/dist/web/telemetry/requests.d.ts +31 -0
- package/dist/web/telemetry/requests.js +119 -0
- package/dist/web/telemetry/sockets.d.ts +56 -0
- package/dist/web/telemetry/sockets.js +101 -0
- package/dist/web/telemetry/view.d.ts +16 -0
- package/dist/web/telemetry/view.js +125 -0
- package/dist/web/wait/conditions.d.ts +87 -0
- package/dist/web/wait/conditions.js +100 -0
- package/dist/web/wait/index.d.ts +6 -0
- package/dist/web/wait/index.js +6 -0
- package/dist/web/wait/settle.d.ts +54 -0
- package/dist/web/wait/settle.js +84 -0
- package/dist/work/ask.d.ts +45 -0
- package/dist/work/ask.js +85 -0
- package/dist/work/author.d.ts +61 -0
- package/dist/work/author.js +144 -0
- package/dist/work/broker.d.ts +151 -0
- package/dist/work/broker.js +165 -0
- package/dist/work/events.d.ts +98 -0
- package/dist/work/events.js +57 -0
- package/dist/work/history.d.ts +69 -0
- package/dist/work/history.js +174 -0
- package/dist/work/index.d.ts +49 -0
- package/dist/work/index.js +33 -0
- package/dist/work/inplay.d.ts +43 -0
- package/dist/work/inplay.js +42 -0
- package/dist/work/memory.d.ts +84 -0
- package/dist/work/memory.js +203 -0
- package/dist/work/objection.d.ts +92 -0
- package/dist/work/objection.js +72 -0
- package/dist/work/provider.d.ts +79 -0
- package/dist/work/provider.js +45 -0
- package/dist/work/providers/git.d.ts +29 -0
- package/dist/work/providers/git.js +87 -0
- package/dist/work/publish.d.ts +53 -0
- package/dist/work/publish.js +139 -0
- package/dist/work/rebase.d.ts +78 -0
- package/dist/work/rebase.js +261 -0
- package/dist/work/reclaim.d.ts +56 -0
- package/dist/work/reclaim.js +52 -0
- package/dist/work/register.d.ts +29 -0
- package/dist/work/register.js +41 -0
- package/dist/work/stack.d.ts +126 -0
- package/dist/work/stack.js +243 -0
- package/dist/work/stacks.d.ts +156 -0
- package/dist/work/stacks.js +524 -0
- package/dist/work/survey.d.ts +52 -0
- package/dist/work/survey.js +58 -0
- package/dist/work/tidy.d.ts +147 -0
- package/dist/work/tidy.js +136 -0
- package/dist/work/tree.d.ts +120 -0
- package/dist/work/tree.js +69 -0
- package/dist/work/unattended.d.ts +40 -0
- package/dist/work/unattended.js +57 -0
- package/package.json +145 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asking the flattened page questions.
|
|
3
|
+
*
|
|
4
|
+
* The queries here are the ones that cannot be asked any other
|
|
5
|
+
* way: how many of these are there, where are they, which ones
|
|
6
|
+
* are not rendered, what is inside that frame. A CSS selector
|
|
7
|
+
* run in the page answers some of this, but it answers it inside
|
|
8
|
+
* one document and it cannot see into a closed shadow root or
|
|
9
|
+
* across a frame boundary. The index can, because the browser
|
|
10
|
+
* already flattened all of it.
|
|
11
|
+
*/
|
|
12
|
+
/** Whether one node answers the query. */
|
|
13
|
+
export function matches(node, query) {
|
|
14
|
+
if (query.tag && node.nodeName.toLowerCase() !== query.tag.toLowerCase()) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
if (query.attribute !== undefined) {
|
|
18
|
+
const held = node.attributes[query.attribute];
|
|
19
|
+
if (held === undefined)
|
|
20
|
+
return false;
|
|
21
|
+
if (query.value !== undefined && held !== query.value)
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
else if (query.value !== undefined) {
|
|
25
|
+
// A value with no attribute to hold it. This used to fall
|
|
26
|
+
// through every predicate and return the whole document,
|
|
27
|
+
// rendered as a real total with the first page of nodes under
|
|
28
|
+
// it: an authoritative-looking answer to a filter that was
|
|
29
|
+
// never applied, which is the worst way for a read tool to
|
|
30
|
+
// fail. Match any attribute carrying the value instead.
|
|
31
|
+
const anywhere = Object.values(node.attributes).includes(query.value);
|
|
32
|
+
if (!anywhere)
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
if (query.className !== undefined) {
|
|
36
|
+
const classes = (node.attributes.class ?? "").split(/\s+/);
|
|
37
|
+
if (!classes.includes(query.className))
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
if (query.text !== undefined) {
|
|
41
|
+
const has = (node.text ?? "")
|
|
42
|
+
.toLowerCase()
|
|
43
|
+
.includes(query.text.toLowerCase());
|
|
44
|
+
if (!has)
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
if (query.rendered !== undefined && node.rendered !== query.rendered) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
if (query.inShadow !== undefined && node.inShadow !== query.inShadow) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
if (query.clickable !== undefined && node.clickable !== query.clickable) {
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
if (query.documentUrl !== undefined &&
|
|
57
|
+
node.documentUrl !== query.documentUrl) {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
/** Everything that answers the query, in document order. */
|
|
63
|
+
export function find(nodes, query) {
|
|
64
|
+
return nodes.filter((node) => matches(node, query));
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Count nodes by some property of them.
|
|
68
|
+
*
|
|
69
|
+
* A page with four hundred divs is not usefully listed, but it
|
|
70
|
+
* is usefully counted, and the counting is what tells you the
|
|
71
|
+
* listing would be a waste.
|
|
72
|
+
*/
|
|
73
|
+
export function tally(nodes, by) {
|
|
74
|
+
const counts = new Map();
|
|
75
|
+
for (const node of nodes) {
|
|
76
|
+
const key = by(node);
|
|
77
|
+
if (key === undefined)
|
|
78
|
+
continue;
|
|
79
|
+
counts.set(key, (counts.get(key) ?? 0) + 1);
|
|
80
|
+
}
|
|
81
|
+
return [...counts.entries()]
|
|
82
|
+
.map(([key, count]) => ({ key, count }))
|
|
83
|
+
.sort((a, b) => b.count - a.count || a.key.localeCompare(b.key));
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* How a node reads in a listing.
|
|
87
|
+
*
|
|
88
|
+
* The position says which space it is measured in. A snapshot
|
|
89
|
+
* measures down the document, while an element inspection reports
|
|
90
|
+
* the box model, which measures from the viewport. The same element
|
|
91
|
+
* on a scrolled page reads differently in each, and saying so is
|
|
92
|
+
* what stops the two being compared as though they agreed.
|
|
93
|
+
*/
|
|
94
|
+
export function describeNode(node) {
|
|
95
|
+
const tag = node.nodeName.toLowerCase();
|
|
96
|
+
const id = node.attributes.id ? `#${node.attributes.id}` : "";
|
|
97
|
+
const classes = node.attributes.class
|
|
98
|
+
? `.${node.attributes.class.trim().split(/\s+/).join(".")}`
|
|
99
|
+
: "";
|
|
100
|
+
const where = node.bounds ? ` at ${place(node.bounds)} on the page` : "";
|
|
101
|
+
const notes = [
|
|
102
|
+
node.rendered ? "" : "not rendered",
|
|
103
|
+
node.inShadow ? "in shadow" : "",
|
|
104
|
+
node.clickable ? "clickable" : "",
|
|
105
|
+
].filter(Boolean);
|
|
106
|
+
const tail = notes.length > 0 ? ` (${notes.join(", ")})` : "";
|
|
107
|
+
const words = node.text ? ` "${clip(node.text)}"` : "";
|
|
108
|
+
return `${tag}${id}${classes}${where}${tail}${words}`;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Say what a node's named properties compute to.
|
|
112
|
+
*
|
|
113
|
+
* A property the snapshot carries no value for is named rather than
|
|
114
|
+
* dropped. Leaving it out would read exactly like a property nobody
|
|
115
|
+
* asked about, and a caller would take the silence for a value.
|
|
116
|
+
*/
|
|
117
|
+
export function describeStyles(node, wanted) {
|
|
118
|
+
return wanted
|
|
119
|
+
.map((property) => {
|
|
120
|
+
const value = node.styles[property];
|
|
121
|
+
// An empty string is what the snapshot gives for a property
|
|
122
|
+
// the browser did not answer, so it is the same absence.
|
|
123
|
+
return `${property}: ${value ? value : "not reported"}`;
|
|
124
|
+
})
|
|
125
|
+
.join("; ");
|
|
126
|
+
}
|
|
127
|
+
/** How much of a text run is worth showing in a listing. */
|
|
128
|
+
const MAX_TEXT = 40;
|
|
129
|
+
function clip(text) {
|
|
130
|
+
const flat = text.replace(/\s+/g, " ").trim();
|
|
131
|
+
return flat.length > MAX_TEXT ? `${flat.slice(0, MAX_TEXT)}...` : flat;
|
|
132
|
+
}
|
|
133
|
+
function place(bounds) {
|
|
134
|
+
return (`${Math.round(bounds.x)},${Math.round(bounds.y)} ` +
|
|
135
|
+
`${Math.round(bounds.width)}x${Math.round(bounds.height)}`);
|
|
136
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telling a position in generated code where it was authored.
|
|
3
|
+
*
|
|
4
|
+
* The browser reports which map belongs to a script or a
|
|
5
|
+
* stylesheet and then leaves the resolving to whoever is asking,
|
|
6
|
+
* so this is the one corner of the library that decodes a format
|
|
7
|
+
* itself rather than deferring to a protocol call.
|
|
8
|
+
*/
|
|
9
|
+
export { type AuthoredPosition, authoredPosition, decodeMappings, decodeVlq, parseSourceMap, type RawSourceMap, readSourceMap, resolveMapUrl, type Segment, type SourceMap, } from "./mappings.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telling a position in generated code where it was authored.
|
|
3
|
+
*
|
|
4
|
+
* The browser reports which map belongs to a script or a
|
|
5
|
+
* stylesheet and then leaves the resolving to whoever is asking,
|
|
6
|
+
* so this is the one corner of the library that decodes a format
|
|
7
|
+
* itself rather than deferring to a protocol call.
|
|
8
|
+
*/
|
|
9
|
+
export { authoredPosition, decodeMappings, decodeVlq, parseSourceMap, readSourceMap, resolveMapUrl, } from "./mappings.js";
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading a source map, so a position in generated code can be
|
|
3
|
+
* told where it came from.
|
|
4
|
+
*
|
|
5
|
+
* This is the one place in the library that reimplements
|
|
6
|
+
* something rather than asking the browser, and the reason is
|
|
7
|
+
* that the browser does not do it either. Chrome ships the
|
|
8
|
+
* source map URL on Debugger.scriptParsed and CSS.styleSheetAdded
|
|
9
|
+
* and stops there; resolving a position through the map is work
|
|
10
|
+
* the devtools front end does for itself. There is no protocol
|
|
11
|
+
* call to defer to.
|
|
12
|
+
*
|
|
13
|
+
* The format is a v3 source map: a run of base64 VLQ segments,
|
|
14
|
+
* semicolons for generated lines, commas for segments within a
|
|
15
|
+
* line, and every field after the first stored as a delta from
|
|
16
|
+
* the previous segment.
|
|
17
|
+
*/
|
|
18
|
+
/** A source map as it arrives, before anything is decoded. */
|
|
19
|
+
export interface RawSourceMap {
|
|
20
|
+
readonly version?: number;
|
|
21
|
+
readonly file?: string;
|
|
22
|
+
readonly sourceRoot?: string;
|
|
23
|
+
readonly sources: readonly (string | null)[];
|
|
24
|
+
readonly sourcesContent?: readonly (string | null)[];
|
|
25
|
+
readonly names?: readonly string[];
|
|
26
|
+
readonly mappings: string;
|
|
27
|
+
}
|
|
28
|
+
/** One decoded mapping segment. */
|
|
29
|
+
export interface Segment {
|
|
30
|
+
/** Column in the generated file, zero based. */
|
|
31
|
+
readonly generatedColumn: number;
|
|
32
|
+
/** Index into the map's sources, absent for a bare segment. */
|
|
33
|
+
readonly sourceIndex?: number;
|
|
34
|
+
/** Line in the authored file, zero based. */
|
|
35
|
+
readonly sourceLine?: number;
|
|
36
|
+
/** Column in the authored file, zero based. */
|
|
37
|
+
readonly sourceColumn?: number;
|
|
38
|
+
/** Index into the map's names. */
|
|
39
|
+
readonly nameIndex?: number;
|
|
40
|
+
}
|
|
41
|
+
/** A source map with its mappings decoded, ready to query. */
|
|
42
|
+
export interface SourceMap {
|
|
43
|
+
readonly sources: readonly string[];
|
|
44
|
+
readonly sourcesContent: readonly (string | null)[];
|
|
45
|
+
readonly names: readonly string[];
|
|
46
|
+
/** Segments per generated line, each sorted by column. */
|
|
47
|
+
readonly lines: readonly (readonly Segment[])[];
|
|
48
|
+
}
|
|
49
|
+
/** Where a generated position came from. */
|
|
50
|
+
export interface AuthoredPosition {
|
|
51
|
+
readonly source: string;
|
|
52
|
+
/** Zero based, to match how the protocol counts. */
|
|
53
|
+
readonly line: number;
|
|
54
|
+
readonly column: number;
|
|
55
|
+
/** The authored name, when the map recorded one. */
|
|
56
|
+
readonly name?: string;
|
|
57
|
+
/** The authored source's text, when the map carried it. */
|
|
58
|
+
readonly content?: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Decode one comma-free run of base64 VLQ into its numbers.
|
|
62
|
+
*
|
|
63
|
+
* Returns nothing when the run contains a character outside the
|
|
64
|
+
* alphabet, since a partly decoded segment is worse than an
|
|
65
|
+
* absent one: it would point somewhere confidently wrong.
|
|
66
|
+
*/
|
|
67
|
+
export declare function decodeVlq(segment: string): number[] | undefined;
|
|
68
|
+
/**
|
|
69
|
+
* Decode a whole mappings string into segments by generated line.
|
|
70
|
+
*
|
|
71
|
+
* Every field but the generated column carries across lines,
|
|
72
|
+
* which is why the running totals sit outside the line loop.
|
|
73
|
+
*/
|
|
74
|
+
export declare function decodeMappings(mappings: string): (readonly Segment[])[];
|
|
75
|
+
/**
|
|
76
|
+
* Prepare a raw map for querying.
|
|
77
|
+
*
|
|
78
|
+
* The source root is folded into each source here rather than at
|
|
79
|
+
* lookup time, so every later answer is a path the caller can
|
|
80
|
+
* use without knowing the map existed.
|
|
81
|
+
*/
|
|
82
|
+
export declare function readSourceMap(raw: RawSourceMap): SourceMap;
|
|
83
|
+
/**
|
|
84
|
+
* Find where a generated position was authored.
|
|
85
|
+
*
|
|
86
|
+
* A map records the positions a compiler thought worth marking,
|
|
87
|
+
* not every column, so a lookup takes the nearest mapping at or
|
|
88
|
+
* before the column asked for. That is what makes a stack frame
|
|
89
|
+
* pointing into the middle of a minified expression resolve to
|
|
90
|
+
* the statement it belongs to.
|
|
91
|
+
*/
|
|
92
|
+
export declare function authoredPosition(map: SourceMap, generated: {
|
|
93
|
+
readonly line: number;
|
|
94
|
+
readonly column: number;
|
|
95
|
+
}): AuthoredPosition | undefined;
|
|
96
|
+
/**
|
|
97
|
+
* Work out where a map lives, given the file that named it.
|
|
98
|
+
*
|
|
99
|
+
* A map URL is usually relative to the file that references it,
|
|
100
|
+
* and is sometimes the map itself inlined as a data URL, which
|
|
101
|
+
* needs no fetching at all.
|
|
102
|
+
*/
|
|
103
|
+
export declare function resolveMapUrl(fileUrl: string, sourceMapUrl: string): {
|
|
104
|
+
readonly kind: "inline";
|
|
105
|
+
readonly json: string;
|
|
106
|
+
} | {
|
|
107
|
+
readonly kind: "fetch";
|
|
108
|
+
readonly url: string;
|
|
109
|
+
} | undefined;
|
|
110
|
+
/** Read a map's JSON, refusing anything that is not one. */
|
|
111
|
+
export declare function parseSourceMap(json: string): SourceMap | undefined;
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading a source map, so a position in generated code can be
|
|
3
|
+
* told where it came from.
|
|
4
|
+
*
|
|
5
|
+
* This is the one place in the library that reimplements
|
|
6
|
+
* something rather than asking the browser, and the reason is
|
|
7
|
+
* that the browser does not do it either. Chrome ships the
|
|
8
|
+
* source map URL on Debugger.scriptParsed and CSS.styleSheetAdded
|
|
9
|
+
* and stops there; resolving a position through the map is work
|
|
10
|
+
* the devtools front end does for itself. There is no protocol
|
|
11
|
+
* call to defer to.
|
|
12
|
+
*
|
|
13
|
+
* The format is a v3 source map: a run of base64 VLQ segments,
|
|
14
|
+
* semicolons for generated lines, commas for segments within a
|
|
15
|
+
* line, and every field after the first stored as a delta from
|
|
16
|
+
* the previous segment.
|
|
17
|
+
*/
|
|
18
|
+
const BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
19
|
+
const CHAR_VALUES = new Map([...BASE64].map((char, value) => [char, value]));
|
|
20
|
+
/** The low bit of a decoded VLQ carries the sign, not magnitude. */
|
|
21
|
+
const SIGN_BIT = 1;
|
|
22
|
+
/** Five bits of payload per character, the sixth is continuation. */
|
|
23
|
+
const PAYLOAD_BITS = 5;
|
|
24
|
+
const CONTINUATION = 1 << PAYLOAD_BITS;
|
|
25
|
+
const PAYLOAD_MASK = CONTINUATION - 1;
|
|
26
|
+
/**
|
|
27
|
+
* Decode one comma-free run of base64 VLQ into its numbers.
|
|
28
|
+
*
|
|
29
|
+
* Returns nothing when the run contains a character outside the
|
|
30
|
+
* alphabet, since a partly decoded segment is worse than an
|
|
31
|
+
* absent one: it would point somewhere confidently wrong.
|
|
32
|
+
*/
|
|
33
|
+
export function decodeVlq(segment) {
|
|
34
|
+
const values = [];
|
|
35
|
+
let accumulated = 0;
|
|
36
|
+
let shift = 0;
|
|
37
|
+
for (const char of segment) {
|
|
38
|
+
const digit = CHAR_VALUES.get(char);
|
|
39
|
+
if (digit === undefined)
|
|
40
|
+
return undefined;
|
|
41
|
+
accumulated += (digit & PAYLOAD_MASK) << shift;
|
|
42
|
+
if (digit & CONTINUATION) {
|
|
43
|
+
shift += PAYLOAD_BITS;
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
const negative = (accumulated & SIGN_BIT) === SIGN_BIT;
|
|
47
|
+
const magnitude = accumulated >> 1;
|
|
48
|
+
values.push(negative ? -magnitude : magnitude);
|
|
49
|
+
accumulated = 0;
|
|
50
|
+
shift = 0;
|
|
51
|
+
}
|
|
52
|
+
// A trailing continuation means the run ended mid-number.
|
|
53
|
+
return shift === 0 ? values : undefined;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Decode a whole mappings string into segments by generated line.
|
|
57
|
+
*
|
|
58
|
+
* Every field but the generated column carries across lines,
|
|
59
|
+
* which is why the running totals sit outside the line loop.
|
|
60
|
+
*/
|
|
61
|
+
export function decodeMappings(mappings) {
|
|
62
|
+
const lines = [];
|
|
63
|
+
let sourceIndex = 0;
|
|
64
|
+
let sourceLine = 0;
|
|
65
|
+
let sourceColumn = 0;
|
|
66
|
+
let nameIndex = 0;
|
|
67
|
+
for (const rawLine of mappings.split(";")) {
|
|
68
|
+
const segments = [];
|
|
69
|
+
// The generated column restarts at every line, unlike the rest.
|
|
70
|
+
let generatedColumn = 0;
|
|
71
|
+
for (const rawSegment of rawLine.split(",")) {
|
|
72
|
+
if (rawSegment === "")
|
|
73
|
+
continue;
|
|
74
|
+
const fields = decodeVlq(rawSegment);
|
|
75
|
+
if (!fields || fields.length === 0)
|
|
76
|
+
continue;
|
|
77
|
+
generatedColumn += fields[0] ?? 0;
|
|
78
|
+
if (fields.length < 4) {
|
|
79
|
+
// A one-field segment marks generated code with no
|
|
80
|
+
// authored origin at all, which is a real answer.
|
|
81
|
+
segments.push({ generatedColumn });
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
sourceIndex += fields[1] ?? 0;
|
|
85
|
+
sourceLine += fields[2] ?? 0;
|
|
86
|
+
sourceColumn += fields[3] ?? 0;
|
|
87
|
+
if (fields.length > 4)
|
|
88
|
+
nameIndex += fields[4] ?? 0;
|
|
89
|
+
segments.push({
|
|
90
|
+
generatedColumn,
|
|
91
|
+
sourceIndex,
|
|
92
|
+
sourceLine,
|
|
93
|
+
sourceColumn,
|
|
94
|
+
...(fields.length > 4 ? { nameIndex } : {}),
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
segments.sort((a, b) => a.generatedColumn - b.generatedColumn);
|
|
98
|
+
lines.push(segments);
|
|
99
|
+
}
|
|
100
|
+
return lines;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Prepare a raw map for querying.
|
|
104
|
+
*
|
|
105
|
+
* The source root is folded into each source here rather than at
|
|
106
|
+
* lookup time, so every later answer is a path the caller can
|
|
107
|
+
* use without knowing the map existed.
|
|
108
|
+
*/
|
|
109
|
+
export function readSourceMap(raw) {
|
|
110
|
+
const root = raw.sourceRoot ?? "";
|
|
111
|
+
return {
|
|
112
|
+
sources: raw.sources.map((source) => {
|
|
113
|
+
const named = source ?? "(anonymous)";
|
|
114
|
+
if (root === "")
|
|
115
|
+
return named;
|
|
116
|
+
return `${root.replace(/\/$/, "")}/${named.replace(/^\//, "")}`;
|
|
117
|
+
}),
|
|
118
|
+
sourcesContent: raw.sourcesContent ?? [],
|
|
119
|
+
names: raw.names ?? [],
|
|
120
|
+
lines: decodeMappings(raw.mappings),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Find where a generated position was authored.
|
|
125
|
+
*
|
|
126
|
+
* A map records the positions a compiler thought worth marking,
|
|
127
|
+
* not every column, so a lookup takes the nearest mapping at or
|
|
128
|
+
* before the column asked for. That is what makes a stack frame
|
|
129
|
+
* pointing into the middle of a minified expression resolve to
|
|
130
|
+
* the statement it belongs to.
|
|
131
|
+
*/
|
|
132
|
+
export function authoredPosition(map, generated) {
|
|
133
|
+
const segments = map.lines[generated.line];
|
|
134
|
+
if (!segments || segments.length === 0)
|
|
135
|
+
return undefined;
|
|
136
|
+
let found;
|
|
137
|
+
for (const segment of segments) {
|
|
138
|
+
if (segment.generatedColumn > generated.column)
|
|
139
|
+
break;
|
|
140
|
+
found = segment;
|
|
141
|
+
}
|
|
142
|
+
// Before the first mapping on the line there is nothing to say.
|
|
143
|
+
if (!found || found.sourceIndex === undefined)
|
|
144
|
+
return undefined;
|
|
145
|
+
const source = map.sources[found.sourceIndex];
|
|
146
|
+
if (source === undefined)
|
|
147
|
+
return undefined;
|
|
148
|
+
const content = map.sourcesContent[found.sourceIndex];
|
|
149
|
+
const name = found.nameIndex === undefined ? undefined : map.names[found.nameIndex];
|
|
150
|
+
return {
|
|
151
|
+
source,
|
|
152
|
+
line: found.sourceLine ?? 0,
|
|
153
|
+
column: found.sourceColumn ?? 0,
|
|
154
|
+
...(name === undefined ? {} : { name }),
|
|
155
|
+
...(content === undefined || content === null ? {} : { content }),
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Work out where a map lives, given the file that named it.
|
|
160
|
+
*
|
|
161
|
+
* A map URL is usually relative to the file that references it,
|
|
162
|
+
* and is sometimes the map itself inlined as a data URL, which
|
|
163
|
+
* needs no fetching at all.
|
|
164
|
+
*/
|
|
165
|
+
export function resolveMapUrl(fileUrl, sourceMapUrl) {
|
|
166
|
+
if (sourceMapUrl.startsWith("data:")) {
|
|
167
|
+
const comma = sourceMapUrl.indexOf(",");
|
|
168
|
+
if (comma < 0)
|
|
169
|
+
return undefined;
|
|
170
|
+
const meta = sourceMapUrl.slice(0, comma);
|
|
171
|
+
const payload = sourceMapUrl.slice(comma + 1);
|
|
172
|
+
// Both branches are guarded, not just the base64 one. A
|
|
173
|
+
// sourceMappingURL is written by the page, so a stray percent
|
|
174
|
+
// sign in a plain-text inline map is page input, and
|
|
175
|
+
// decodeURIComponent throws a URIError on it. That escaped a
|
|
176
|
+
// function whose own comment promised a malformed data URL
|
|
177
|
+
// was not worth a thrown error.
|
|
178
|
+
try {
|
|
179
|
+
return {
|
|
180
|
+
kind: "inline",
|
|
181
|
+
json: meta.includes(";base64")
|
|
182
|
+
? Buffer.from(payload, "base64").toString("utf8")
|
|
183
|
+
: decodeURIComponent(payload),
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
// The caller simply reports the generated position instead.
|
|
188
|
+
return undefined;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
try {
|
|
192
|
+
return { kind: "fetch", url: new URL(sourceMapUrl, fileUrl).toString() };
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
// Relative resolution fails when the file URL is not a URL,
|
|
196
|
+
// which happens for eval'd script with no origin.
|
|
197
|
+
return undefined;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
/** Read a map's JSON, refusing anything that is not one. */
|
|
201
|
+
export function parseSourceMap(json) {
|
|
202
|
+
try {
|
|
203
|
+
const raw = JSON.parse(json);
|
|
204
|
+
if (typeof raw !== "object" ||
|
|
205
|
+
raw === null ||
|
|
206
|
+
!("mappings" in raw) ||
|
|
207
|
+
typeof raw.mappings !== "string" ||
|
|
208
|
+
!Array.isArray(raw.sources)) {
|
|
209
|
+
return undefined;
|
|
210
|
+
}
|
|
211
|
+
return readSourceMap(raw);
|
|
212
|
+
}
|
|
213
|
+
catch {
|
|
214
|
+
// Not JSON at all, which usually means the map URL 404'd and
|
|
215
|
+
// a server returned an HTML error page.
|
|
216
|
+
return undefined;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asking the browser for style facts.
|
|
3
|
+
*
|
|
4
|
+
* These are page sources rather than functions, for the same
|
|
5
|
+
* reason the accessibility observer is: the compiler wraps
|
|
6
|
+
* named inner bindings in a __name helper the page has never
|
|
7
|
+
* heard of, so a serialized function that declares helpers of
|
|
8
|
+
* its own throws on arrival. Source text survives untouched.
|
|
9
|
+
*
|
|
10
|
+
* They exist so that nothing in this domain has to restate what
|
|
11
|
+
* a browser already computes. CSS knowledge written down here
|
|
12
|
+
* would drift from the engine it claims to describe.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Shorthands worth reading in place of the sides they cover.
|
|
16
|
+
*
|
|
17
|
+
* A computed-style enumeration yields longhands only, so a
|
|
18
|
+
* capture has to ask for these by name. The browser serializes
|
|
19
|
+
* them, which is why curation never composes one itself.
|
|
20
|
+
*/
|
|
21
|
+
export declare const SHORTHAND_PROPERTIES: readonly string[];
|
|
22
|
+
/**
|
|
23
|
+
* Read every computed property of an element, plus the
|
|
24
|
+
* shorthands the enumeration leaves out.
|
|
25
|
+
*
|
|
26
|
+
* A function declaration, to be invoked with the element as its
|
|
27
|
+
* receiver: Runtime.callFunctionOn with the element's objectId.
|
|
28
|
+
*/
|
|
29
|
+
export declare const COMPUTED_STYLE_PROBE = "function (shorthands) {\n var styles = getComputedStyle(this);\n var out = {};\n for (var i = 0; i < styles.length; i++) {\n var name = styles[i];\n out[name] = styles.getPropertyValue(name);\n }\n for (var j = 0; j < shorthands.length; j++) {\n out[shorthands[j]] = styles.getPropertyValue(shorthands[j]);\n }\n return out;\n}";
|
|
30
|
+
/**
|
|
31
|
+
* Read what every property computes to when nobody has set it.
|
|
32
|
+
*
|
|
33
|
+
* An element with all:initial reports the engine's own initial
|
|
34
|
+
* values, which is the honest answer to "was this touched".
|
|
35
|
+
* The element has to be in the document to have a computed
|
|
36
|
+
* style at all, so it is added and taken away again within the
|
|
37
|
+
* one evaluation, before anything can paint. It is left empty
|
|
38
|
+
* and otherwise unstyled: hiding it would report display none
|
|
39
|
+
* as the initial display and suppress that property everywhere.
|
|
40
|
+
*
|
|
41
|
+
* A function expression, to be invoked through asCall.
|
|
42
|
+
*/
|
|
43
|
+
export declare const INITIALS_PROBE = "(function (shorthands) {\n var host = document.createElement(\"div\");\n host.style.setProperty(\"all\", \"initial\");\n document.documentElement.appendChild(host);\n var styles = getComputedStyle(host);\n var out = {};\n for (var i = 0; i < styles.length; i++) {\n var name = styles[i];\n out[name] = styles.getPropertyValue(name);\n }\n for (var j = 0; j < shorthands.length; j++) {\n out[shorthands[j]] = styles.getPropertyValue(shorthands[j]);\n }\n host.remove();\n return out;\n})";
|
|
44
|
+
/**
|
|
45
|
+
* Turn a function-expression source into an expression that
|
|
46
|
+
* calls it, for protocols that evaluate an expression rather
|
|
47
|
+
* than invoke a function.
|
|
48
|
+
*/
|
|
49
|
+
export declare function asCall(source: string, ...args: readonly unknown[]): string;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asking the browser for style facts.
|
|
3
|
+
*
|
|
4
|
+
* These are page sources rather than functions, for the same
|
|
5
|
+
* reason the accessibility observer is: the compiler wraps
|
|
6
|
+
* named inner bindings in a __name helper the page has never
|
|
7
|
+
* heard of, so a serialized function that declares helpers of
|
|
8
|
+
* its own throws on arrival. Source text survives untouched.
|
|
9
|
+
*
|
|
10
|
+
* They exist so that nothing in this domain has to restate what
|
|
11
|
+
* a browser already computes. CSS knowledge written down here
|
|
12
|
+
* would drift from the engine it claims to describe.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Shorthands worth reading in place of the sides they cover.
|
|
16
|
+
*
|
|
17
|
+
* A computed-style enumeration yields longhands only, so a
|
|
18
|
+
* capture has to ask for these by name. The browser serializes
|
|
19
|
+
* them, which is why curation never composes one itself.
|
|
20
|
+
*/
|
|
21
|
+
export const SHORTHAND_PROPERTIES = [
|
|
22
|
+
"margin",
|
|
23
|
+
"padding",
|
|
24
|
+
"inset",
|
|
25
|
+
"border-width",
|
|
26
|
+
"border-style",
|
|
27
|
+
"border-color",
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* Read every computed property of an element, plus the
|
|
31
|
+
* shorthands the enumeration leaves out.
|
|
32
|
+
*
|
|
33
|
+
* A function declaration, to be invoked with the element as its
|
|
34
|
+
* receiver: Runtime.callFunctionOn with the element's objectId.
|
|
35
|
+
*/
|
|
36
|
+
export const COMPUTED_STYLE_PROBE = `function (shorthands) {
|
|
37
|
+
var styles = getComputedStyle(this);
|
|
38
|
+
var out = {};
|
|
39
|
+
for (var i = 0; i < styles.length; i++) {
|
|
40
|
+
var name = styles[i];
|
|
41
|
+
out[name] = styles.getPropertyValue(name);
|
|
42
|
+
}
|
|
43
|
+
for (var j = 0; j < shorthands.length; j++) {
|
|
44
|
+
out[shorthands[j]] = styles.getPropertyValue(shorthands[j]);
|
|
45
|
+
}
|
|
46
|
+
return out;
|
|
47
|
+
}`;
|
|
48
|
+
/**
|
|
49
|
+
* Read what every property computes to when nobody has set it.
|
|
50
|
+
*
|
|
51
|
+
* An element with all:initial reports the engine's own initial
|
|
52
|
+
* values, which is the honest answer to "was this touched".
|
|
53
|
+
* The element has to be in the document to have a computed
|
|
54
|
+
* style at all, so it is added and taken away again within the
|
|
55
|
+
* one evaluation, before anything can paint. It is left empty
|
|
56
|
+
* and otherwise unstyled: hiding it would report display none
|
|
57
|
+
* as the initial display and suppress that property everywhere.
|
|
58
|
+
*
|
|
59
|
+
* A function expression, to be invoked through asCall.
|
|
60
|
+
*/
|
|
61
|
+
export const INITIALS_PROBE = `(function (shorthands) {
|
|
62
|
+
var host = document.createElement("div");
|
|
63
|
+
host.style.setProperty("all", "initial");
|
|
64
|
+
document.documentElement.appendChild(host);
|
|
65
|
+
var styles = getComputedStyle(host);
|
|
66
|
+
var out = {};
|
|
67
|
+
for (var i = 0; i < styles.length; i++) {
|
|
68
|
+
var name = styles[i];
|
|
69
|
+
out[name] = styles.getPropertyValue(name);
|
|
70
|
+
}
|
|
71
|
+
for (var j = 0; j < shorthands.length; j++) {
|
|
72
|
+
out[shorthands[j]] = styles.getPropertyValue(shorthands[j]);
|
|
73
|
+
}
|
|
74
|
+
host.remove();
|
|
75
|
+
return out;
|
|
76
|
+
})`;
|
|
77
|
+
/**
|
|
78
|
+
* Turn a function-expression source into an expression that
|
|
79
|
+
* calls it, for protocols that evaluate an expression rather
|
|
80
|
+
* than invoke a function.
|
|
81
|
+
*/
|
|
82
|
+
export function asCall(source, ...args) {
|
|
83
|
+
const call = args.map((arg) => JSON.stringify(arg)).join(", ");
|
|
84
|
+
return `(${source})(${call})`;
|
|
85
|
+
}
|