@hominis/fireforge 0.54.0 → 0.60.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/CHANGELOG.md +287 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -438
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -332
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -420
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -422
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -208
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -692
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +113 -181
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -277
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +163 -653
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -712
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -91
- package/dist/src/commands/check-run.d.ts +0 -33
- package/dist/src/commands/check-run.js +0 -112
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -218
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -282
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -52
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -261
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -117
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -15
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -49
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -248
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -267
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -35
- package/dist/src/commands/re-export-hunks.js +0 -220
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -191
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -39
- package/dist/src/commands/re-export-single.js +0 -388
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -28
- package/dist/src/commands/re-export-summary.js +0 -36
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -29
- package/dist/src/commands/test-build-phase.js +0 -290
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -63
- package/dist/src/commands/test-orchestrate.js +0 -274
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -52
- package/dist/src/commands/test-stale-gate.js +0 -165
- package/dist/src/commands/test-verdict.d.ts +0 -92
- package/dist/src/commands/test-verdict.js +0 -162
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck.d.ts +0 -56
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -274
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -92
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -503
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -62
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -124
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -146
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -79
- package/dist/src/core/furnace-constants.js +0 -123
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -61
- package/dist/src/core/furnace-jsconfig.js +0 -208
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -302
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -318
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -204
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache.d.ts +0 -78
- package/dist/src/core/patch-lint-cache.js +0 -233
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -39
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -63
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -180
- package/dist/src/core/patch-lint-checkjs.js +0 -611
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -5
- package/dist/src/core/patch-lint-imports.js +0 -67
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -78
- package/dist/src/core/patch-lint-staged-registration.js +0 -110
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -57
- package/dist/src/core/patch-lint-token-scale.js +0 -286
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -191
- package/dist/src/core/patch-lint.js +0 -529
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -161
- package/dist/src/core/patch-parse.js +0 -347
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -216
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -507
- package/dist/src/core/typecheck.d.ts +0 -75
- package/dist/src/core/typecheck.js +0 -433
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1367
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -703
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -415
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* `fireforge token lint`: structural checks over the design-token system.
|
|
4
|
-
*
|
|
5
|
-
* - `token-lockstep`: a themed override block (the dark `@media` mirror, a
|
|
6
|
-
* `:root[variant]` block) declares only tokens the base `:root` declares.
|
|
7
|
-
* An override with no base is a token that exists only in one theme, so
|
|
8
|
-
* every other theme resolves it to nothing.
|
|
9
|
-
* - `token-undeclared`: a `var(--<prefix>…)` reference in the tokens CSS or
|
|
10
|
-
* in a CSS file the patch queue touches names a token no block of the
|
|
11
|
-
* tokens CSS declares. Same-file declarations, declarations of a sheet
|
|
12
|
-
* that loads beside it (see `token-sibling-sheets.ts`), `furnace.json`
|
|
13
|
-
* `tokenAllowlist` and `runtimeVariables` are exempt, matching the
|
|
14
|
-
* `token-prefix-violation` rule's notion of a runtime channel. A
|
|
15
|
-
* reference with a fallback (`var(--x, 0)`) is optional by construction
|
|
16
|
-
* (a host hook, a channel set from JS) and is not reported.
|
|
17
|
-
*
|
|
18
|
-
* Built on `token-category.ts`'s base-block and comment-mask primitives, so
|
|
19
|
-
* this report and `token add` agree on which block is the base.
|
|
20
|
-
*/
|
|
21
|
-
import { findBaseRootBounds, maskCommentLines } from './token-category.js';
|
|
22
|
-
const DECLARATION = /(?:^|[{;\s])(--[A-Za-z0-9_-]+)\s*:/g;
|
|
23
|
-
function selectorBefore(text) {
|
|
24
|
-
const selector = text.slice(Math.max(text.lastIndexOf('}'), text.lastIndexOf(';')) + 1).trim();
|
|
25
|
-
return selector.length > 0 ? selector.replace(/\s+/g, ' ') : '(block)';
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Every custom-property declaration in a CSS file with the selector trail
|
|
29
|
-
* of the block holding it, outermost first, joined with ` > `.
|
|
30
|
-
*/
|
|
31
|
-
function collectDeclarations(lines) {
|
|
32
|
-
const masked = maskCommentLines(lines);
|
|
33
|
-
const trail = [];
|
|
34
|
-
const found = [];
|
|
35
|
-
let pending = '';
|
|
36
|
-
for (const [index, line] of masked.entries()) {
|
|
37
|
-
for (const match of line.matchAll(DECLARATION)) {
|
|
38
|
-
found.push({
|
|
39
|
-
name: match[1] ?? '',
|
|
40
|
-
line: index + 1,
|
|
41
|
-
block: trail.length > 0 ? trail.join(' > ') : '(file scope)',
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
for (const char of line) {
|
|
45
|
-
if (char === '{') {
|
|
46
|
-
trail.push(selectorBefore(pending));
|
|
47
|
-
pending = '';
|
|
48
|
-
}
|
|
49
|
-
else if (char === '}') {
|
|
50
|
-
trail.pop();
|
|
51
|
-
pending = '';
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
pending += char;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
pending += '\n';
|
|
58
|
-
}
|
|
59
|
-
return found;
|
|
60
|
-
}
|
|
61
|
-
/** Every custom property the tokens CSS declares, in any block. */
|
|
62
|
-
export function collectDeclaredTokenNames(lines) {
|
|
63
|
-
return new Set(collectDeclarations(lines).map((declaration) => declaration.name));
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Themed override declarations of `tokenPrefix` tokens that the base
|
|
67
|
-
* `:root` block does not declare.
|
|
68
|
-
*
|
|
69
|
-
* @param lines - Tokens CSS split into lines
|
|
70
|
-
* @param tokensCssPath - Engine-relative path, for the findings
|
|
71
|
-
* @param tokenPrefix - Only tokens with this prefix are held to lockstep;
|
|
72
|
-
* a themed block may still override platform properties
|
|
73
|
-
*/
|
|
74
|
-
export function lintTokenLockstep(lines, tokensCssPath, tokenPrefix) {
|
|
75
|
-
const bounds = findBaseRootBounds(lines);
|
|
76
|
-
if (bounds === undefined)
|
|
77
|
-
return [];
|
|
78
|
-
const close = bounds.close === -1 ? lines.length : bounds.close;
|
|
79
|
-
const declarations = collectDeclarations(lines);
|
|
80
|
-
const inBase = (line) => line - 1 >= bounds.open && line - 1 <= close;
|
|
81
|
-
const base = new Set(declarations.filter((d) => inBase(d.line)).map((d) => d.name));
|
|
82
|
-
return declarations
|
|
83
|
-
.filter((d) => !inBase(d.line) && d.name.startsWith(tokenPrefix) && !base.has(d.name))
|
|
84
|
-
.map((d) => ({
|
|
85
|
-
check: 'token-lockstep',
|
|
86
|
-
file: tokensCssPath,
|
|
87
|
-
line: d.line,
|
|
88
|
-
token: d.name,
|
|
89
|
-
message: `${d.name} is declared in ${d.block} but not in the base :root block, so every other ` +
|
|
90
|
-
'theme resolves it to nothing. Declare the base value first (fireforge token add), ' +
|
|
91
|
-
'or drop the override.',
|
|
92
|
-
}));
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* `var(--<prefix>…)` references naming a token the tokens CSS never
|
|
96
|
-
* declares.
|
|
97
|
-
*
|
|
98
|
-
* @param file - Engine-relative path, for the findings
|
|
99
|
-
* @param css - The file's content
|
|
100
|
-
* @param tokenPrefix - Only references with this prefix are checked
|
|
101
|
-
* @param declared - {@link collectDeclaredTokenNames} of the tokens CSS
|
|
102
|
-
* @param exempt - `tokenAllowlist` and `runtimeVariables` names
|
|
103
|
-
*/
|
|
104
|
-
export function lintUndeclaredTokenReferences(file, css, tokenPrefix, declared, exempt) {
|
|
105
|
-
const lines = css.split('\n');
|
|
106
|
-
const local = collectDeclaredTokenNames(lines);
|
|
107
|
-
const findings = [];
|
|
108
|
-
const seen = new Set();
|
|
109
|
-
for (const [index, line] of maskCommentLines(lines).entries()) {
|
|
110
|
-
for (const match of line.matchAll(/var\(\s*(--[A-Za-z0-9_-]+)\s*(,)?/g)) {
|
|
111
|
-
const name = match[1] ?? '';
|
|
112
|
-
if (match[2] !== undefined)
|
|
113
|
-
continue;
|
|
114
|
-
if (!name.startsWith(tokenPrefix) || declared.has(name) || local.has(name))
|
|
115
|
-
continue;
|
|
116
|
-
if (exempt.has(name) || seen.has(name))
|
|
117
|
-
continue;
|
|
118
|
-
seen.add(name);
|
|
119
|
-
findings.push({
|
|
120
|
-
check: 'token-undeclared',
|
|
121
|
-
file,
|
|
122
|
-
line: index + 1,
|
|
123
|
-
token: name,
|
|
124
|
-
message: `var(${name}) names a token the tokens CSS does not declare, so it resolves to ` +
|
|
125
|
-
'nothing. Add the token, fix the name, or list a runtime channel in furnace.json ' +
|
|
126
|
-
'runtimeVariables.',
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
return findings;
|
|
131
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { type TokenDeclarationLocation } from './token-category.js';
|
|
2
|
-
/**
|
|
3
|
-
* Dark mode behaviour for a token.
|
|
4
|
-
*
|
|
5
|
-
* Derived from {@link TOKEN_MODES} so the runtime allowlist and the type
|
|
6
|
-
* cannot drift: adding a member here without updating the list (or the
|
|
7
|
-
* reverse) is impossible, because there is only one list.
|
|
8
|
-
*/
|
|
9
|
-
export declare const TOKEN_MODES: readonly ["auto", "static", "override"];
|
|
10
|
-
/** Dark mode behaviour for a token. */
|
|
11
|
-
export type TokenMode = (typeof TOKEN_MODES)[number];
|
|
12
|
-
/** Narrows an arbitrary string to a {@link TokenMode}. */
|
|
13
|
-
export declare const isTokenMode: (value: string) => value is "auto" | "override" | "static";
|
|
14
|
-
/**
|
|
15
|
-
* Options for adding a token.
|
|
16
|
-
*/
|
|
17
|
-
export interface AddTokenOptions {
|
|
18
|
-
/** Full token name including prefix (e.g., "--mybrowser-widget-dot-size") */
|
|
19
|
-
tokenName: string;
|
|
20
|
-
/** CSS value (e.g., "1px", "var(--space-small)", "light-dark(#fff, #000)") */
|
|
21
|
-
value: string;
|
|
22
|
-
/**
|
|
23
|
-
* Token category matching section headers in the CSS file. Required for a
|
|
24
|
-
* base declaration. Ignored, and not required, under
|
|
25
|
-
* {@link AddTokenOptions.variant}, which routes into a `:root<selector>`
|
|
26
|
-
* block and never touches a category section.
|
|
27
|
-
*/
|
|
28
|
-
category?: string | undefined;
|
|
29
|
-
/** Dark mode behavior */
|
|
30
|
-
mode: TokenMode;
|
|
31
|
-
/** Comment description for the CSS file */
|
|
32
|
-
description?: string | undefined;
|
|
33
|
-
/** Dark mode value (required if mode is "override") */
|
|
34
|
-
darkValue?: string | undefined;
|
|
35
|
-
/** Dry run mode */
|
|
36
|
-
dryRun?: boolean | undefined;
|
|
37
|
-
/** Declare the category banner in the tokens CSS when it does not exist yet. */
|
|
38
|
-
createCategory?: boolean | undefined;
|
|
39
|
-
/**
|
|
40
|
-
* Attribute selector fragment (e.g. `[data-skin="precision"]` or
|
|
41
|
-
* `[data-private]`) that routes the declaration into a top-level
|
|
42
|
-
* `:root<variant>` block instead of the base `:root` / category section.
|
|
43
|
-
* The block is created if absent and appended to if present. Variant
|
|
44
|
-
* overrides are CSS-only. The base token already owns its docs row.
|
|
45
|
-
*/
|
|
46
|
-
variant?: string | undefined;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Result of adding a token.
|
|
50
|
-
*/
|
|
51
|
-
export interface AddTokenResult {
|
|
52
|
-
/** Whether the token was added to CSS */
|
|
53
|
-
cssAdded: boolean;
|
|
54
|
-
/** Whether the token was added to the docs table */
|
|
55
|
-
docsAdded: boolean;
|
|
56
|
-
/** Whether it was added to the unmapped table */
|
|
57
|
-
unmappedAdded: boolean;
|
|
58
|
-
/** Whether the count table was updated */
|
|
59
|
-
countUpdated: boolean;
|
|
60
|
-
/** Whether the operation was skipped (already exists) */
|
|
61
|
-
skipped: boolean;
|
|
62
|
-
/** Whether a new category banner was declared by this add. */
|
|
63
|
-
categoryCreated?: boolean;
|
|
64
|
-
/**
|
|
65
|
-
* When the add skipped because the token already lives in the target
|
|
66
|
-
* category, names where the existing base-`:root` declaration sits so
|
|
67
|
-
* the skip message can point at it.
|
|
68
|
-
*/
|
|
69
|
-
skippedExisting?: TokenDeclarationLocation;
|
|
70
|
-
}
|
|
71
|
-
/** Returns the token CSS path relative to engine root for a given binary name. */
|
|
72
|
-
export declare function getTokensCssPath(binaryName: string): string;
|
|
73
|
-
/**
|
|
74
|
-
* Validates token-add inputs without mutating files.
|
|
75
|
-
*
|
|
76
|
-
* @param root - Project root directory
|
|
77
|
-
* @param options - Token options
|
|
78
|
-
*/
|
|
79
|
-
export declare function validateTokenAdd(root: string, options: AddTokenOptions): Promise<void>;
|
|
80
|
-
/**
|
|
81
|
-
* Adds a design token to the CSS file and documentation.
|
|
82
|
-
*
|
|
83
|
-
* @param root - Project root directory
|
|
84
|
-
* @param options - Token options
|
|
85
|
-
* @returns Result of the operation
|
|
86
|
-
*/
|
|
87
|
-
export declare function addToken(root: string, options: AddTokenOptions): Promise<AddTokenResult>;
|
|
@@ -1,407 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { GeneralError, InvalidArgumentError } from '../errors/base.js';
|
|
4
|
-
import { FurnaceError } from '../errors/furnace.js';
|
|
5
|
-
import { toError } from '../utils/errors.js';
|
|
6
|
-
import { pathExists, readText, writeText } from '../utils/fs.js';
|
|
7
|
-
import { info, warn } from '../utils/logger.js';
|
|
8
|
-
import { describeTokenNameProblem, makeEnumGuard } from '../utils/validation.js';
|
|
9
|
-
import { getProjectPaths, loadConfig } from './config.js';
|
|
10
|
-
import { loadFurnaceConfig } from './furnace-config.js';
|
|
11
|
-
import { assertTokenCategoryExists, categoryHeaderExists, declareCategoryBanner, findCategorySection, findTokenDeclarationInRoot, } from './token-category.js';
|
|
12
|
-
import { findDarkMediaCloseIndex, findDarkRootInsertionIndex } from './token-dark-mode.js';
|
|
13
|
-
import { addTokenToDocs } from './token-docs.js';
|
|
14
|
-
import { findVariantBlockDeclaration, insertVariantDeclaration, validateVariantSelector, variantBlockExists, variantBlockHasToken, variantBlockQualifier, } from './token-variant.js';
|
|
15
|
-
/**
|
|
16
|
-
* Dark mode behaviour for a token.
|
|
17
|
-
*
|
|
18
|
-
* Derived from {@link TOKEN_MODES} so the runtime allowlist and the type
|
|
19
|
-
* cannot drift: adding a member here without updating the list (or the
|
|
20
|
-
* reverse) is impossible, because there is only one list.
|
|
21
|
-
*/
|
|
22
|
-
export const TOKEN_MODES = ['auto', 'static', 'override'];
|
|
23
|
-
/** Narrows an arbitrary string to a {@link TokenMode}. */
|
|
24
|
-
export const isTokenMode = makeEnumGuard(TOKEN_MODES);
|
|
25
|
-
/** Returns the token CSS path relative to engine root for a given binary name. */
|
|
26
|
-
export function getTokensCssPath(binaryName) {
|
|
27
|
-
return `browser/themes/shared/${binaryName}-tokens.css`;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Determines the mode annotation string for the CSS comment.
|
|
31
|
-
*/
|
|
32
|
-
function getModeAnnotation(mode, value) {
|
|
33
|
-
if (mode === 'override')
|
|
34
|
-
return 'override';
|
|
35
|
-
if (mode === 'auto') {
|
|
36
|
-
if (value.includes('light-dark('))
|
|
37
|
-
return 'auto (light-dark)';
|
|
38
|
-
return 'auto';
|
|
39
|
-
}
|
|
40
|
-
// static
|
|
41
|
-
if (value.startsWith('var(--'))
|
|
42
|
-
return 'static';
|
|
43
|
-
return 'static, fork-specific';
|
|
44
|
-
}
|
|
45
|
-
async function resolveTokenAddContext(root) {
|
|
46
|
-
const { engine: engineDir } = getProjectPaths(root);
|
|
47
|
-
const forgeConfig = await loadConfig(root);
|
|
48
|
-
return {
|
|
49
|
-
engineDir,
|
|
50
|
-
tokensCssPath: getTokensCssPath(forgeConfig.binaryName),
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
async function validateTokenPrefix(root, options) {
|
|
54
|
-
try {
|
|
55
|
-
const config = await loadFurnaceConfig(root);
|
|
56
|
-
if (config.tokenPrefix && !options.tokenName.startsWith(config.tokenPrefix)) {
|
|
57
|
-
throw new InvalidArgumentError(`Token name "${options.tokenName}" does not match the configured prefix "${config.tokenPrefix}".`, 'tokenName');
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
catch (error) {
|
|
61
|
-
if (error instanceof InvalidArgumentError)
|
|
62
|
-
throw error;
|
|
63
|
-
// FurnaceError means furnace.json doesn't exist yet, so skip silently.
|
|
64
|
-
// Other errors (parse errors, permission errors) deserve a warning.
|
|
65
|
-
if (!(error instanceof FurnaceError)) {
|
|
66
|
-
const message = toError(error).message;
|
|
67
|
-
warn(`Skipping token prefix validation: ${message}`);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
function validateTokenNameSyntax(tokenName) {
|
|
72
|
-
const error = describeTokenNameProblem(tokenName);
|
|
73
|
-
if (error) {
|
|
74
|
-
throw new InvalidArgumentError(error, 'tokenName');
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
function validateDarkValue(options) {
|
|
78
|
-
if (options.mode === 'override' && !options.darkValue) {
|
|
79
|
-
throw new InvalidArgumentError('Override mode requires --dark-value to be specified.', 'darkValue');
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Validates and normalizes the `--variant` attribute selector. Returns the
|
|
84
|
-
* normalized (quoted) selector when set, or `undefined` when no variant was
|
|
85
|
-
* requested. Rejects combining `--variant` with `--mode override`: an
|
|
86
|
-
* override authors a dark `@media :root` block, which variant routing
|
|
87
|
-
* bypasses, so the combination would silently drop the dark value.
|
|
88
|
-
*/
|
|
89
|
-
function normalizeVariantOption(options) {
|
|
90
|
-
if (options.variant === undefined)
|
|
91
|
-
return undefined;
|
|
92
|
-
if (options.mode === 'override') {
|
|
93
|
-
throw new InvalidArgumentError('Cannot combine --variant with --mode override; author the variant declaration with ' +
|
|
94
|
-
'--mode auto/static instead.', 'variant');
|
|
95
|
-
}
|
|
96
|
-
if (options.createCategory === true) {
|
|
97
|
-
throw new InvalidArgumentError('--create-category cannot be combined with --variant; variant declarations are routed ' +
|
|
98
|
-
'into a :root<selector> block, not a category section. Add the BASE token first ' +
|
|
99
|
-
'(with --create-category) to author the category, then add each variant with ' +
|
|
100
|
-
'--variant.', 'variant');
|
|
101
|
-
}
|
|
102
|
-
const result = validateVariantSelector(options.variant);
|
|
103
|
-
if (!result.ok) {
|
|
104
|
-
throw new InvalidArgumentError(`--variant ${result.reason}.`, 'variant');
|
|
105
|
-
}
|
|
106
|
-
return result.value;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Narrows {@link AddTokenOptions.category} for the base-declaration path,
|
|
110
|
-
* which cannot proceed without one.
|
|
111
|
-
*
|
|
112
|
-
* `--category` is optional under `--variant`, where the declaration is
|
|
113
|
-
* routed into a `:root<selector>` block and the category names nothing
|
|
114
|
-
* about where the token lands, so requiring it there would make a
|
|
115
|
-
* mandatory argument describing nothing. Everywhere else this states the reason
|
|
116
|
-
* rather than leaving commander to print a bare "required option not
|
|
117
|
-
* specified".
|
|
118
|
-
*
|
|
119
|
-
* @param options - Token options
|
|
120
|
-
* @returns The category
|
|
121
|
-
*/
|
|
122
|
-
function requireCategory(options) {
|
|
123
|
-
if (options.category === undefined || options.category.trim() === '') {
|
|
124
|
-
throw new InvalidArgumentError('A base token declaration lands in a category section, so --category is required. ' +
|
|
125
|
-
'Pass --variant <selector> instead if this declaration belongs in a ' +
|
|
126
|
-
':root<selector> block, where no category applies.', 'category');
|
|
127
|
-
}
|
|
128
|
-
return options.category;
|
|
129
|
-
}
|
|
130
|
-
/** Throws when the tokens CSS file is missing (variant mode skips category checks). */
|
|
131
|
-
async function assertTokensCssExists(engineDir, tokensCssPath) {
|
|
132
|
-
if (!(await pathExists(join(engineDir, tokensCssPath)))) {
|
|
133
|
-
throw new GeneralError(`Token CSS file not found: ${tokensCssPath}`);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Routes a declaration into the top-level `:root<variant>` block, creating
|
|
138
|
-
* the block after the base `:root` block if absent, or appending to it if
|
|
139
|
-
* present. Idempotent within the block.
|
|
140
|
-
*
|
|
141
|
-
* A skip carries the location of the existing declaration, mirroring
|
|
142
|
-
* {@link evaluateBaseTokenIdempotency}. The bare `{ added: false }` it used
|
|
143
|
-
* to return told the caller nothing, so a re-run intending to change a
|
|
144
|
-
* value exited 0 having changed nothing and said only "already exists",
|
|
145
|
-
* while the base path had reported the category and line for the same
|
|
146
|
-
* situation all along.
|
|
147
|
-
*/
|
|
148
|
-
async function addVariantTokenToCSS(engineDir, options, tokensCssPath, variant) {
|
|
149
|
-
await assertTokensCssExists(engineDir, tokensCssPath);
|
|
150
|
-
const filePath = join(engineDir, tokensCssPath);
|
|
151
|
-
const lines = (await readText(filePath)).split('\n');
|
|
152
|
-
const declared = findVariantBlockDeclaration(lines, variant, options.tokenName);
|
|
153
|
-
if (declared !== undefined)
|
|
154
|
-
return { added: false, existing: declared };
|
|
155
|
-
const annotation = getModeAnnotation(options.mode, options.value);
|
|
156
|
-
insertVariantDeclaration(lines, variant, ` ${options.tokenName}: ${options.value}; /* ${annotation} */`);
|
|
157
|
-
await writeText(filePath, lines.join('\n'));
|
|
158
|
-
return { added: true };
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Evaluates base-`:root` idempotency for one add: a token already declared
|
|
162
|
-
* in the target category skips. A token declared anywhere else in the base
|
|
163
|
-
* block refuses loud. A whole-file substring check instead skips silently,
|
|
164
|
-
* discarding `--create-category`, and exits 0.
|
|
165
|
-
*/
|
|
166
|
-
function evaluateBaseTokenIdempotency(lines, options, tokensCssPath) {
|
|
167
|
-
const existing = findTokenDeclarationInRoot(lines, options.tokenName);
|
|
168
|
-
if (!existing)
|
|
169
|
-
return { skipped: false };
|
|
170
|
-
if (existing.category === options.category) {
|
|
171
|
-
return { skipped: true, existing };
|
|
172
|
-
}
|
|
173
|
-
const sectionSuffix = existing.category === undefined ? '' : `, section "${existing.category}"`;
|
|
174
|
-
const remedy = existing.category === undefined
|
|
175
|
-
? 'remove the stray declaration first'
|
|
176
|
-
: `pass --category "${existing.category}" to target the existing declaration, or remove it first`;
|
|
177
|
-
throw new GeneralError(`Token "${options.tokenName}" is already declared outside category "${options.category}" ` +
|
|
178
|
-
`(${tokensCssPath}:${existing.line}${sectionSuffix}). ` +
|
|
179
|
-
`A token belongs to exactly one category — ${remedy}.`);
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Validates token-add inputs without mutating files.
|
|
183
|
-
*
|
|
184
|
-
* @param root - Project root directory
|
|
185
|
-
* @param options - Token options
|
|
186
|
-
*/
|
|
187
|
-
export async function validateTokenAdd(root, options) {
|
|
188
|
-
const { engineDir, tokensCssPath } = await resolveTokenAddContext(root);
|
|
189
|
-
validateTokenNameSyntax(options.tokenName);
|
|
190
|
-
await validateTokenPrefix(root, options);
|
|
191
|
-
validateDarkValue(options);
|
|
192
|
-
// Variant mode targets a `:root<attr>` block, not a category section, so
|
|
193
|
-
// no category is consulted, and none is required. When one is passed it
|
|
194
|
-
// is still checked, so a typo'd category is not silently accepted just
|
|
195
|
-
// because the flag happens to be inert here.
|
|
196
|
-
if (normalizeVariantOption(options) !== undefined) {
|
|
197
|
-
if (options.category !== undefined && options.category.trim() !== '') {
|
|
198
|
-
await assertTokenCategoryExists(engineDir, tokensCssPath, options.category, false);
|
|
199
|
-
}
|
|
200
|
-
return;
|
|
201
|
-
}
|
|
202
|
-
await assertTokenCategoryExists(engineDir, tokensCssPath, requireCategory(options), options.createCategory === true);
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Adds a design token to the CSS file and documentation.
|
|
206
|
-
*
|
|
207
|
-
* @param root - Project root directory
|
|
208
|
-
* @param options - Token options
|
|
209
|
-
* @returns Result of the operation
|
|
210
|
-
*/
|
|
211
|
-
export async function addToken(root, options) {
|
|
212
|
-
const { engineDir, tokensCssPath } = await resolveTokenAddContext(root);
|
|
213
|
-
validateTokenNameSyntax(options.tokenName);
|
|
214
|
-
await validateTokenPrefix(root, options);
|
|
215
|
-
validateDarkValue(options);
|
|
216
|
-
const normalizedVariant = normalizeVariantOption(options);
|
|
217
|
-
if (options.dryRun) {
|
|
218
|
-
await validateTokenAdd(root, options);
|
|
219
|
-
const filePath = join(engineDir, tokensCssPath);
|
|
220
|
-
const content = await readText(filePath);
|
|
221
|
-
if (normalizedVariant !== undefined) {
|
|
222
|
-
const skipped = variantBlockHasToken(content.split('\n'), normalizedVariant, options.tokenName);
|
|
223
|
-
return {
|
|
224
|
-
cssAdded: !skipped,
|
|
225
|
-
docsAdded: false,
|
|
226
|
-
unmappedAdded: false,
|
|
227
|
-
countUpdated: false,
|
|
228
|
-
skipped,
|
|
229
|
-
};
|
|
230
|
-
}
|
|
231
|
-
const { skipped, existing } = evaluateBaseTokenIdempotency(content.split('\n'), options, tokensCssPath);
|
|
232
|
-
return {
|
|
233
|
-
cssAdded: !skipped,
|
|
234
|
-
docsAdded: !skipped,
|
|
235
|
-
unmappedAdded: !skipped && !options.value.startsWith('var('),
|
|
236
|
-
countUpdated: !skipped,
|
|
237
|
-
skipped,
|
|
238
|
-
...(existing !== undefined ? { skippedExisting: existing } : {}),
|
|
239
|
-
};
|
|
240
|
-
}
|
|
241
|
-
// Variant overrides are CSS-only: route the declaration into the
|
|
242
|
-
// `:root<attr>` block and leave docs untouched (the base token owns its
|
|
243
|
-
// docs row). Done before the base-CSS path so an override of an existing
|
|
244
|
-
// base token is not short-circuited by the global idempotency check.
|
|
245
|
-
if (normalizedVariant !== undefined) {
|
|
246
|
-
// A category is optional here and names nothing about where the
|
|
247
|
-
// declaration lands, but a category that was passed is still verified.
|
|
248
|
-
if (options.category !== undefined && options.category.trim() !== '') {
|
|
249
|
-
await assertTokenCategoryExists(engineDir, tokensCssPath, options.category, false);
|
|
250
|
-
}
|
|
251
|
-
const { added, existing } = await addVariantTokenToCSS(engineDir, options, tokensCssPath, normalizedVariant);
|
|
252
|
-
return {
|
|
253
|
-
cssAdded: added,
|
|
254
|
-
docsAdded: false,
|
|
255
|
-
unmappedAdded: false,
|
|
256
|
-
countUpdated: false,
|
|
257
|
-
skipped: !added,
|
|
258
|
-
...(existing !== undefined ? { skippedExisting: existing } : {}),
|
|
259
|
-
};
|
|
260
|
-
}
|
|
261
|
-
// --- CSS file ---
|
|
262
|
-
const { added: cssAdded, categoryCreated, existing, } = await addTokenToCSS(engineDir, options, tokensCssPath);
|
|
263
|
-
if (!cssAdded) {
|
|
264
|
-
return {
|
|
265
|
-
cssAdded: false,
|
|
266
|
-
docsAdded: false,
|
|
267
|
-
unmappedAdded: false,
|
|
268
|
-
countUpdated: false,
|
|
269
|
-
skipped: true,
|
|
270
|
-
...(existing !== undefined ? { skippedExisting: existing } : {}),
|
|
271
|
-
};
|
|
272
|
-
}
|
|
273
|
-
// --- Documentation ---
|
|
274
|
-
// Only the base path reaches here (variant declarations returned above),
|
|
275
|
-
// so a category is guaranteed. `requireCategory` already ran inside
|
|
276
|
-
// `addTokenToCSS`. Re-narrowing rather than asserting keeps the docs
|
|
277
|
-
// input's required `category` honest.
|
|
278
|
-
const docsResult = await addTokenToDocs(engineDir, { ...options, category: requireCategory(options) }, getModeAnnotation(options.mode, options.value));
|
|
279
|
-
return {
|
|
280
|
-
cssAdded,
|
|
281
|
-
docsAdded: docsResult.docsAdded,
|
|
282
|
-
unmappedAdded: docsResult.unmappedAdded,
|
|
283
|
-
countUpdated: docsResult.countUpdated,
|
|
284
|
-
skipped: false,
|
|
285
|
-
categoryCreated,
|
|
286
|
-
};
|
|
287
|
-
}
|
|
288
|
-
/**
|
|
289
|
-
* Explicit theme-attribute selectors the override path keeps in sync with
|
|
290
|
-
* the `@media (prefers-color-scheme: dark)` block. Consumer scaffolds that
|
|
291
|
-
* pair the media query with `:root[data-theme="dark"]` /
|
|
292
|
-
* `:root[data-theme="light"]` blocks (viewer-toggle theming) require every
|
|
293
|
-
* themed list to declare identical token sets, so an override add that only
|
|
294
|
-
* wrote the media block would be a guaranteed half-finished edit.
|
|
295
|
-
*/
|
|
296
|
-
const THEME_ATTRIBUTE_VARIANTS = [
|
|
297
|
-
{ variant: '[data-theme="dark"]', pick: 'dark' },
|
|
298
|
-
{ variant: '[data-theme="light"]', pick: 'light' },
|
|
299
|
-
];
|
|
300
|
-
/**
|
|
301
|
-
* Mirrors an override's light/dark values into existing top-level
|
|
302
|
-
* `:root[data-theme="dark"]` / `:root[data-theme="light"]` blocks. Blocks
|
|
303
|
-
* that do not exist are left alone (scaffolded files have none, so behavior
|
|
304
|
-
* is unchanged there). Idempotent per block. Returns the selectors written.
|
|
305
|
-
*/
|
|
306
|
-
function insertThemeAttributeOverrides(lines, options) {
|
|
307
|
-
if (options.mode !== 'override' || !options.darkValue)
|
|
308
|
-
return [];
|
|
309
|
-
const written = [];
|
|
310
|
-
for (const { variant, pick } of THEME_ATTRIBUTE_VARIANTS) {
|
|
311
|
-
if (!variantBlockExists(lines, variant))
|
|
312
|
-
continue;
|
|
313
|
-
if (variantBlockHasToken(lines, variant, options.tokenName))
|
|
314
|
-
continue;
|
|
315
|
-
const value = pick === 'dark' ? options.darkValue : options.value;
|
|
316
|
-
insertVariantDeclaration(lines, variant, ` ${options.tokenName}: ${value};`);
|
|
317
|
-
written.push(`:root${variant}`);
|
|
318
|
-
// A qualified block is matched. Skipping it is the worse failure, and
|
|
319
|
-
// the one that shipped, but the qualifier narrows where the token
|
|
320
|
-
// applies, so say which selector was written through rather than
|
|
321
|
-
// letting the operator meet the narrowing as a theme bug later.
|
|
322
|
-
const qualifier = variantBlockQualifier(lines, variant);
|
|
323
|
-
if (qualifier !== undefined && qualifier.length > 0) {
|
|
324
|
-
warn(`Wrote ${options.tokenName} into the qualified block ":root${variant}${qualifier}". ` +
|
|
325
|
-
`The "${qualifier}" qualifier narrows where this override applies; ` +
|
|
326
|
-
'add an unqualified block if it should apply to every case.');
|
|
327
|
-
}
|
|
328
|
-
}
|
|
329
|
-
return written;
|
|
330
|
-
}
|
|
331
|
-
function insertDarkModeOverride(lines, options) {
|
|
332
|
-
if (options.mode !== 'override' || !options.darkValue)
|
|
333
|
-
return;
|
|
334
|
-
const insertionIndex = findDarkRootInsertionIndex(lines);
|
|
335
|
-
if (insertionIndex === null)
|
|
336
|
-
return; // No @media block at all.
|
|
337
|
-
const darkEntry = ` ${options.tokenName}: ${options.darkValue};`;
|
|
338
|
-
if (insertionIndex === -1) {
|
|
339
|
-
// @media block exists but has no nested :root { }, so the scaffold
|
|
340
|
-
// drifted. Warn and fall back to appending a fresh nested :root
|
|
341
|
-
// block right before the @media block's closing brace so the
|
|
342
|
-
// generated CSS still parses, rather than dropping the dark value
|
|
343
|
-
// on the floor or producing a declaration outside any rule.
|
|
344
|
-
warn(`Dark-mode override block for "${options.tokenName}" could not find a nested ":root { }" inside @media (prefers-color-scheme: dark). Appending a fresh ":root { }" block — review the tokens CSS scaffold.`);
|
|
345
|
-
const outerCloseIndex = findDarkMediaCloseIndex(lines);
|
|
346
|
-
if (outerCloseIndex === -1)
|
|
347
|
-
return;
|
|
348
|
-
lines.splice(outerCloseIndex, 0, ' :root {', darkEntry, ' }');
|
|
349
|
-
return;
|
|
350
|
-
}
|
|
351
|
-
lines.splice(insertionIndex, 0, darkEntry);
|
|
352
|
-
}
|
|
353
|
-
/**
|
|
354
|
-
* Adds a token declaration to the CSS file in the correct category section.
|
|
355
|
-
*/
|
|
356
|
-
async function addTokenToCSS(engineDir, options, tokensCssPath) {
|
|
357
|
-
const filePath = join(engineDir, tokensCssPath);
|
|
358
|
-
const category = requireCategory(options);
|
|
359
|
-
await assertTokenCategoryExists(engineDir, tokensCssPath, category, options.createCategory === true);
|
|
360
|
-
const content = await readText(filePath);
|
|
361
|
-
const lines = content.split('\n');
|
|
362
|
-
// Per-category idempotency: a declaration in the target
|
|
363
|
-
// category skips. A declaration elsewhere in the base :root block
|
|
364
|
-
// throws instead of silently skipping (and silently discarding
|
|
365
|
-
// --create-category).
|
|
366
|
-
const idempotency = evaluateBaseTokenIdempotency(lines, options, tokensCssPath);
|
|
367
|
-
if (idempotency.skipped) {
|
|
368
|
-
return {
|
|
369
|
-
added: false,
|
|
370
|
-
categoryCreated: false,
|
|
371
|
-
...(idempotency.existing !== undefined ? { existing: idempotency.existing } : {}),
|
|
372
|
-
};
|
|
373
|
-
}
|
|
374
|
-
const annotation = getModeAnnotation(options.mode, options.value);
|
|
375
|
-
// Declare a missing category banner in the same in-memory edit as the
|
|
376
|
-
// token insertion. The file is written exactly once, so a failure
|
|
377
|
-
// between "banner declared" and "token inserted" cannot occur.
|
|
378
|
-
let categoryCreated = false;
|
|
379
|
-
if (options.createCategory === true && !categoryHeaderExists(lines, category)) {
|
|
380
|
-
declareCategoryBanner(lines, category, tokensCssPath);
|
|
381
|
-
categoryCreated = true;
|
|
382
|
-
}
|
|
383
|
-
const { categoryLine, sectionEnd } = findCategorySection(lines, category, tokensCssPath);
|
|
384
|
-
// Build the insertion lines
|
|
385
|
-
const insertLines = [];
|
|
386
|
-
if (options.description) {
|
|
387
|
-
insertLines.push(` /* ${options.description} */`);
|
|
388
|
-
}
|
|
389
|
-
insertLines.push(` ${options.tokenName}: ${options.value}; /* ${annotation} */`);
|
|
390
|
-
// Insert before the section end (before next header or closing brace)
|
|
391
|
-
// Find last non-blank line in the section to insert after it
|
|
392
|
-
let insertIndex = sectionEnd;
|
|
393
|
-
for (let i = sectionEnd - 1; i > categoryLine; i--) {
|
|
394
|
-
if ((lines[i] ?? '').trim()) {
|
|
395
|
-
insertIndex = i + 1;
|
|
396
|
-
break;
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
lines.splice(insertIndex, 0, ...insertLines);
|
|
400
|
-
insertDarkModeOverride(lines, options);
|
|
401
|
-
const themeBlocksWritten = insertThemeAttributeOverrides(lines, options);
|
|
402
|
-
if (themeBlocksWritten.length > 0) {
|
|
403
|
-
info(`Override also written to ${themeBlocksWritten.join(' and ')}.`);
|
|
404
|
-
}
|
|
405
|
-
await writeText(filePath, lines.join('\n'));
|
|
406
|
-
return { added: true, categoryCreated };
|
|
407
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Scaffolds the default tokens CSS file consumed by `fireforge token add`.
|
|
3
|
-
*
|
|
4
|
-
* Without it, `fireforge furnace init` writes `furnace.json` but not the
|
|
5
|
-
* tokens CSS, and every project's first `fireforge token add` hits
|
|
6
|
-
* `Token CSS file not found: browser/themes/shared/<binaryName>-tokens.css`.
|
|
7
|
-
* Init calls into this module to write a canonical `:root { … }` shell with
|
|
8
|
-
* a seed set of category headers that `assertTokenCategoryExists`
|
|
9
|
-
* recognises, and registers the tokens CSS path in
|
|
10
|
-
* `patchLint.rawColorAllowlist` so the first token that is an actual color
|
|
11
|
-
* value does not instantly fail `fireforge lint`.
|
|
12
|
-
*/
|
|
13
|
-
import type { ProjectLicense } from '../types/config.js';
|
|
14
|
-
/**
|
|
15
|
-
* The set of categories seeded by the default scaffold. `token add
|
|
16
|
-
* --category <name>` accepts any of these without further setup. An
|
|
17
|
-
* operator who needs another category only has to add a matching
|
|
18
|
-
* `/* = My Category = *\/` header inside the `:root` block by hand.
|
|
19
|
-
*
|
|
20
|
-
* The names intentionally mirror the vocabulary used in Firefox's own
|
|
21
|
-
* token files (the color and spacing categories listed below) so operators
|
|
22
|
-
* coming from upstream don't have to relearn a fork-specific taxonomy.
|
|
23
|
-
*/
|
|
24
|
-
export declare const DEFAULT_TOKEN_CATEGORIES: readonly string[];
|
|
25
|
-
/**
|
|
26
|
-
* Generates the default tokens CSS body. Extracted from the init
|
|
27
|
-
* command so tests can assert on the generated shape without running
|
|
28
|
-
* the interactive scaffold flow.
|
|
29
|
-
*
|
|
30
|
-
* @param binaryName - `fireforge.json` `binaryName` used in the
|
|
31
|
-
* rendered file banner so operators can identify the fork on-sight.
|
|
32
|
-
* @param license - Project license, piped through `getLicenseHeader`
|
|
33
|
-
* so the scaffold is SPDX-marked and survives `fireforge lint`'s
|
|
34
|
-
* license-header checks without operator intervention.
|
|
35
|
-
*/
|
|
36
|
-
export declare function generateDefaultTokensCss(binaryName: string, license: ProjectLicense): string;
|