@12ui/design 0.2.56 → 0.2.58
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/SKILL.md +1 -1
- package/dist/artifact-materializer.d.ts.map +1 -1
- package/dist/artifact-materializer.js +4 -1
- package/dist/artifact-materializer.js.map +1 -1
- package/dist/branch-client.d.ts +86 -2
- package/dist/branch-client.d.ts.map +1 -1
- package/dist/branch-client.js +31 -0
- package/dist/branch-client.js.map +1 -1
- package/dist/cli-arguments.d.ts.map +1 -1
- package/dist/cli-arguments.js +3 -1
- package/dist/cli-arguments.js.map +1 -1
- package/dist/cli-capabilities.d.ts +1 -1
- package/dist/cli-conversion-derivation.js +2 -2
- package/dist/cli-conversion-derivation.js.map +1 -1
- package/dist/cli-convert-command.d.ts +2 -0
- package/dist/cli-convert-command.d.ts.map +1 -1
- package/dist/cli-convert-command.js +176 -38
- package/dist/cli-convert-command.js.map +1 -1
- package/dist/cli-corpus-command.js +2 -2
- package/dist/cli-corpus-command.js.map +1 -1
- package/dist/cli-corpus-evidence.d.ts.map +1 -1
- package/dist/cli-corpus-evidence.js +2 -1
- package/dist/cli-corpus-evidence.js.map +1 -1
- package/dist/cli-corpus-reference-downloads.d.ts +1 -0
- package/dist/cli-corpus-reference-downloads.d.ts.map +1 -1
- package/dist/cli-corpus-reference-downloads.js +13 -3
- package/dist/cli-corpus-reference-downloads.js.map +1 -1
- package/dist/cli-corpus-types.d.ts +2 -0
- package/dist/cli-corpus-types.d.ts.map +1 -1
- package/dist/cli-draft-command.d.ts +9 -0
- package/dist/cli-draft-command.d.ts.map +1 -1
- package/dist/cli-draft-command.js +26 -1
- package/dist/cli-draft-command.js.map +1 -1
- package/dist/cli-help/design.d.ts +7 -4
- package/dist/cli-help/design.d.ts.map +1 -1
- package/dist/cli-help/design.js +23 -6
- package/dist/cli-help/design.js.map +1 -1
- package/dist/cli-help/index.d.ts +9 -6
- package/dist/cli-help/index.d.ts.map +1 -1
- package/dist/cli-help/meta.d.ts +2 -2
- package/dist/cli-help/meta.d.ts.map +1 -1
- package/dist/cli-help/meta.js +4 -1
- package/dist/cli-help/meta.js.map +1 -1
- package/dist/cli-improve-command.d.ts.map +1 -1
- package/dist/cli-improve-command.js +273 -28
- package/dist/cli-improve-command.js.map +1 -1
- package/dist/cli-redesign-command.d.ts.map +1 -1
- package/dist/cli-redesign-command.js +97 -24
- package/dist/cli-redesign-command.js.map +1 -1
- package/dist/cli-run.d.ts.map +1 -1
- package/dist/cli-run.js +13 -3
- package/dist/cli-run.js.map +1 -1
- package/dist/cli-spend-command.d.ts +12 -1
- package/dist/cli-spend-command.d.ts.map +1 -1
- package/dist/cli-spend-command.js +94 -2
- package/dist/cli-spend-command.js.map +1 -1
- package/dist/cli-usage.js +5 -5
- package/dist/cli-usage.js.map +1 -1
- package/dist/concept-input.d.ts +6 -56
- package/dist/concept-input.d.ts.map +1 -1
- package/dist/concept-input.js +6 -65
- package/dist/concept-input.js.map +1 -1
- package/dist/conversion-client.d.ts +92 -3
- package/dist/conversion-client.d.ts.map +1 -1
- package/dist/conversion-client.js +317 -23
- package/dist/conversion-client.js.map +1 -1
- package/dist/corpus-client.d.ts +7 -1
- package/dist/corpus-client.d.ts.map +1 -1
- package/dist/corpus-client.js +3 -2
- package/dist/corpus-client.js.map +1 -1
- package/dist/corpus-reference-download-retry.d.ts +68 -0
- package/dist/corpus-reference-download-retry.d.ts.map +1 -0
- package/dist/corpus-reference-download-retry.js +123 -0
- package/dist/corpus-reference-download-retry.js.map +1 -0
- package/dist/corpus-request-error.d.ts +17 -0
- package/dist/corpus-request-error.d.ts.map +1 -0
- package/dist/corpus-request-error.js +21 -0
- package/dist/corpus-request-error.js.map +1 -0
- package/dist/draft-run.d.ts +15 -0
- package/dist/draft-run.d.ts.map +1 -1
- package/dist/draft-run.js +32 -5
- package/dist/draft-run.js.map +1 -1
- package/dist/draft-workspace.d.ts +2 -1
- package/dist/draft-workspace.d.ts.map +1 -1
- package/dist/draft-workspace.js.map +1 -1
- package/dist/hosted-draft-identity.d.ts +9 -0
- package/dist/hosted-draft-identity.d.ts.map +1 -1
- package/dist/hosted-draft-identity.js +2 -0
- package/dist/hosted-draft-identity.js.map +1 -1
- package/dist/improve-added-specs.d.ts +12 -31
- package/dist/improve-added-specs.d.ts.map +1 -1
- package/dist/improve-added-specs.js +64 -152
- package/dist/improve-added-specs.js.map +1 -1
- package/dist/improve-artifact-writer.d.ts +13 -0
- package/dist/improve-artifact-writer.d.ts.map +1 -0
- package/dist/improve-artifact-writer.js +27 -0
- package/dist/improve-artifact-writer.js.map +1 -0
- package/dist/improve-bootstrap-history.d.ts +21 -0
- package/dist/improve-bootstrap-history.d.ts.map +1 -0
- package/dist/improve-bootstrap-history.js +43 -0
- package/dist/improve-bootstrap-history.js.map +1 -0
- package/dist/improve-bootstrap-secret.d.ts +35 -0
- package/dist/improve-bootstrap-secret.d.ts.map +1 -0
- package/dist/improve-bootstrap-secret.js +61 -0
- package/dist/improve-bootstrap-secret.js.map +1 -0
- package/dist/improve-branch-stage.d.ts +10 -0
- package/dist/improve-branch-stage.d.ts.map +1 -0
- package/dist/improve-branch-stage.js +325 -0
- package/dist/improve-branch-stage.js.map +1 -0
- package/dist/improve-capture-redirect.d.ts +65 -0
- package/dist/improve-capture-redirect.d.ts.map +1 -0
- package/dist/improve-capture-redirect.js +85 -0
- package/dist/improve-capture-redirect.js.map +1 -0
- package/dist/improve-capture-words.d.ts +43 -0
- package/dist/improve-capture-words.d.ts.map +1 -0
- package/dist/improve-capture-words.js +25 -0
- package/dist/improve-capture-words.js.map +1 -0
- package/dist/improve-concept.d.ts +6 -7
- package/dist/improve-concept.d.ts.map +1 -1
- package/dist/improve-concept.js +12 -38
- package/dist/improve-concept.js.map +1 -1
- package/dist/improve-conversion-attempts.d.ts +21 -9
- package/dist/improve-conversion-attempts.d.ts.map +1 -1
- package/dist/improve-conversion-attempts.js +6 -1
- package/dist/improve-conversion-attempts.js.map +1 -1
- package/dist/improve-conversion-stage.d.ts +20 -2
- package/dist/improve-conversion-stage.d.ts.map +1 -1
- package/dist/improve-conversion-stage.js +386 -178
- package/dist/improve-conversion-stage.js.map +1 -1
- package/dist/improve-convert-progress.d.ts +44 -0
- package/dist/improve-convert-progress.d.ts.map +1 -0
- package/dist/improve-convert-progress.js +47 -0
- package/dist/improve-convert-progress.js.map +1 -0
- package/dist/improve-convert-resilience.d.ts +96 -58
- package/dist/improve-convert-resilience.d.ts.map +1 -1
- package/dist/improve-convert-resilience.js +128 -72
- package/dist/improve-convert-resilience.js.map +1 -1
- package/dist/improve-core/concept-input.d.ts +80 -0
- package/dist/improve-core/concept-input.d.ts.map +1 -0
- package/dist/improve-core/concept-input.js +92 -0
- package/dist/improve-core/concept-input.js.map +1 -0
- package/dist/improve-core/improve-added-specs.d.ts +62 -0
- package/dist/improve-core/improve-added-specs.d.ts.map +1 -0
- package/dist/improve-core/improve-added-specs.js +160 -0
- package/dist/improve-core/improve-added-specs.js.map +1 -0
- package/dist/improve-core/improve-artifacts.d.ts +18 -0
- package/dist/improve-core/improve-artifacts.d.ts.map +1 -0
- package/dist/improve-core/improve-artifacts.js +4 -0
- package/dist/improve-core/improve-artifacts.js.map +1 -0
- package/dist/improve-core/improve-concept.d.ts +7 -0
- package/dist/improve-core/improve-concept.d.ts.map +1 -0
- package/dist/improve-core/improve-concept.js +185 -0
- package/dist/improve-core/improve-concept.js.map +1 -0
- package/dist/improve-core/improve-discovery.d.ts +84 -0
- package/dist/improve-core/improve-discovery.d.ts.map +1 -0
- package/dist/improve-core/improve-discovery.js +154 -0
- package/dist/improve-core/improve-discovery.js.map +1 -0
- package/dist/improve-core/improve-dom-anchor.d.ts.map +1 -0
- package/dist/{improve-dom-anchor.js → improve-core/improve-dom-anchor.js} +2 -0
- package/dist/improve-core/improve-dom-anchor.js.map +1 -0
- package/dist/improve-core/improve-dom-diff.d.ts +59 -0
- package/dist/improve-core/improve-dom-diff.d.ts.map +1 -0
- package/dist/improve-core/improve-dom-diff.js +151 -0
- package/dist/improve-core/improve-dom-diff.js.map +1 -0
- package/dist/improve-core/improve-dom-extract.d.ts.map +1 -0
- package/dist/{improve-dom-extract.js → improve-core/improve-dom-extract.js} +2 -0
- package/dist/improve-core/improve-dom-extract.js.map +1 -0
- package/dist/improve-core/improve-dom-gate.d.ts +49 -0
- package/dist/improve-core/improve-dom-gate.d.ts.map +1 -0
- package/dist/improve-core/improve-dom-gate.js +99 -0
- package/dist/improve-core/improve-dom-gate.js.map +1 -0
- package/dist/improve-core/improve-dom-neighbour.d.ts.map +1 -0
- package/dist/{improve-dom-neighbour.js → improve-core/improve-dom-neighbour.js} +2 -0
- package/dist/improve-core/improve-dom-neighbour.js.map +1 -0
- package/dist/improve-core/improve-dom-scale.d.ts.map +1 -0
- package/dist/{improve-dom-scale.js → improve-core/improve-dom-scale.js} +2 -0
- package/dist/improve-core/improve-dom-scale.js.map +1 -0
- package/dist/improve-core/improve-icon-svg.d.ts +29 -0
- package/dist/improve-core/improve-icon-svg.d.ts.map +1 -0
- package/dist/improve-core/improve-icon-svg.js +85 -0
- package/dist/improve-core/improve-icon-svg.js.map +1 -0
- package/dist/improve-core/improve-kit-asset-model.d.ts +177 -0
- package/dist/improve-core/improve-kit-asset-model.d.ts.map +1 -0
- package/dist/improve-core/improve-kit-asset-model.js +269 -0
- package/dist/improve-core/improve-kit-asset-model.js.map +1 -0
- package/dist/improve-core/improve-layerdoc-diff.d.ts.map +1 -0
- package/dist/{improve-layerdoc-diff.js → improve-core/improve-layerdoc-diff.js} +2 -0
- package/dist/improve-core/improve-layerdoc-diff.js.map +1 -0
- package/dist/{improve-layerdoc-types.d.ts → improve-core/improve-layerdoc-types.d.ts} +9 -0
- package/dist/improve-core/improve-layerdoc-types.d.ts.map +1 -0
- package/dist/improve-core/improve-layerdoc-types.js +4 -0
- package/dist/improve-core/improve-layerdoc-types.js.map +1 -0
- package/dist/improve-core/improve-page-words.d.ts +180 -0
- package/dist/improve-core/improve-page-words.d.ts.map +1 -0
- package/dist/improve-core/improve-page-words.js +303 -0
- package/dist/improve-core/improve-page-words.js.map +1 -0
- package/dist/{improve-plan-annotated-render.d.ts → improve-core/improve-plan-annotated-render.d.ts} +19 -2
- package/dist/improve-core/improve-plan-annotated-render.d.ts.map +1 -0
- package/dist/{improve-plan-annotated-render.js → improve-core/improve-plan-annotated-render.js} +77 -28
- package/dist/improve-core/improve-plan-annotated-render.js.map +1 -0
- package/dist/improve-core/improve-plan-annotator.d.ts +34 -0
- package/dist/improve-core/improve-plan-annotator.d.ts.map +1 -0
- package/dist/improve-core/improve-plan-annotator.js +52 -0
- package/dist/improve-core/improve-plan-annotator.js.map +1 -0
- package/dist/{improve-plan-render.d.ts → improve-core/improve-plan-render.d.ts} +2 -1
- package/dist/improve-core/improve-plan-render.d.ts.map +1 -0
- package/dist/{improve-plan-render.js → improve-core/improve-plan-render.js} +7 -1
- package/dist/improve-core/improve-plan-render.js.map +1 -0
- package/dist/improve-core/improve-plan-vector-keep.d.ts +29 -0
- package/dist/improve-core/improve-plan-vector-keep.d.ts.map +1 -0
- package/dist/improve-core/improve-plan-vector-keep.js +68 -0
- package/dist/improve-core/improve-plan-vector-keep.js.map +1 -0
- package/dist/{improve-raster-layers-section.d.ts → improve-core/improve-raster-layers-section.d.ts} +9 -1
- package/dist/improve-core/improve-raster-layers-section.d.ts.map +1 -0
- package/dist/{improve-raster-layers-section.js → improve-core/improve-raster-layers-section.js} +5 -2
- package/dist/improve-core/improve-raster-layers-section.js.map +1 -0
- package/dist/improve-core/improve-refusal.d.ts +6 -0
- package/dist/improve-core/improve-refusal.d.ts.map +1 -0
- package/dist/improve-core/improve-refusal.js +27 -0
- package/dist/improve-core/improve-refusal.js.map +1 -0
- package/dist/improve-core/improve-retain.d.ts +121 -0
- package/dist/improve-core/improve-retain.d.ts.map +1 -0
- package/dist/improve-core/improve-retain.js +115 -0
- package/dist/improve-core/improve-retain.js.map +1 -0
- package/dist/improve-core/improve-site-plan.d.ts +75 -0
- package/dist/improve-core/improve-site-plan.d.ts.map +1 -0
- package/dist/improve-core/improve-site-plan.js +135 -0
- package/dist/improve-core/improve-site-plan.js.map +1 -0
- package/dist/improve-core/improve-site-shell.d.ts +56 -0
- package/dist/improve-core/improve-site-shell.d.ts.map +1 -0
- package/dist/improve-core/improve-site-shell.js +152 -0
- package/dist/improve-core/improve-site-shell.js.map +1 -0
- package/dist/improve-core/improve-site-tokens.d.ts +44 -0
- package/dist/improve-core/improve-site-tokens.d.ts.map +1 -0
- package/dist/improve-core/improve-site-tokens.js +87 -0
- package/dist/improve-core/improve-site-tokens.js.map +1 -0
- package/dist/improve-core/improve-source-hints.d.ts +25 -0
- package/dist/improve-core/improve-source-hints.d.ts.map +1 -0
- package/dist/improve-core/improve-source-hints.js +17 -0
- package/dist/improve-core/improve-source-hints.js.map +1 -0
- package/dist/{improve-token-patch.d.ts → improve-core/improve-token-patch.d.ts} +2 -0
- package/dist/improve-core/improve-token-patch.d.ts.map +1 -0
- package/dist/{improve-token-patch.js → improve-core/improve-token-patch.js} +25 -5
- package/dist/improve-core/improve-token-patch.js.map +1 -0
- package/dist/improve-core/index.d.ts +47 -0
- package/dist/improve-core/index.d.ts.map +1 -0
- package/dist/improve-core/index.js +49 -0
- package/dist/improve-core/index.js.map +1 -0
- package/dist/improve-delivery-stages.d.ts +6 -0
- package/dist/improve-delivery-stages.d.ts.map +1 -1
- package/dist/improve-delivery-stages.js +91 -6
- package/dist/improve-delivery-stages.js.map +1 -1
- package/dist/improve-dom-diff.d.ts +8 -24
- package/dist/improve-dom-diff.d.ts.map +1 -1
- package/dist/improve-dom-diff.js +23 -123
- package/dist/improve-dom-diff.js.map +1 -1
- package/dist/improve-dom-gate.d.ts +1 -18
- package/dist/improve-dom-gate.d.ts.map +1 -1
- package/dist/improve-dom-gate.js +1 -46
- package/dist/improve-dom-gate.js.map +1 -1
- package/dist/improve-generation-stages.d.ts +0 -2
- package/dist/improve-generation-stages.d.ts.map +1 -1
- package/dist/improve-generation-stages.js +191 -15
- package/dist/improve-generation-stages.js.map +1 -1
- package/dist/improve-kit-assets.d.ts +8 -116
- package/dist/improve-kit-assets.d.ts.map +1 -1
- package/dist/improve-kit-assets.js +9 -229
- package/dist/improve-kit-assets.js.map +1 -1
- package/dist/improve-kit-ignore.d.ts +32 -0
- package/dist/improve-kit-ignore.d.ts.map +1 -0
- package/dist/improve-kit-ignore.js +111 -0
- package/dist/improve-kit-ignore.js.map +1 -0
- package/dist/improve-kit-readme.d.ts +4 -0
- package/dist/improve-kit-readme.d.ts.map +1 -1
- package/dist/improve-kit-readme.js +155 -24
- package/dist/improve-kit-readme.js.map +1 -1
- package/dist/improve-kit-stall.d.ts +51 -3
- package/dist/improve-kit-stall.d.ts.map +1 -1
- package/dist/improve-kit-stall.js +205 -21
- package/dist/improve-kit-stall.js.map +1 -1
- package/dist/improve-kit-status.d.ts +36 -0
- package/dist/improve-kit-status.d.ts.map +1 -1
- package/dist/improve-kit-status.js +82 -7
- package/dist/improve-kit-status.js.map +1 -1
- package/dist/improve-options.d.ts +14 -0
- package/dist/improve-options.d.ts.map +1 -1
- package/dist/improve-options.js +95 -12
- package/dist/improve-options.js.map +1 -1
- package/dist/improve-passthrough-flags.d.ts +8 -0
- package/dist/improve-passthrough-flags.d.ts.map +1 -0
- package/dist/improve-passthrough-flags.js +11 -0
- package/dist/improve-passthrough-flags.js.map +1 -0
- package/dist/improve-plan-annotator.d.ts +13 -2
- package/dist/improve-plan-annotator.d.ts.map +1 -1
- package/dist/improve-plan-annotator.js +35 -37
- package/dist/improve-plan-annotator.js.map +1 -1
- package/dist/improve-pricing-plan.d.ts +3 -0
- package/dist/improve-pricing-plan.d.ts.map +1 -1
- package/dist/improve-pricing-plan.js +33 -5
- package/dist/improve-pricing-plan.js.map +1 -1
- package/dist/improve-recheck.d.ts +9 -0
- package/dist/improve-recheck.d.ts.map +1 -0
- package/dist/improve-recheck.js +200 -0
- package/dist/improve-recheck.js.map +1 -0
- package/dist/improve-reset.d.ts.map +1 -1
- package/dist/improve-reset.js +11 -0
- package/dist/improve-reset.js.map +1 -1
- package/dist/improve-run-summary.d.ts +6 -0
- package/dist/improve-run-summary.d.ts.map +1 -1
- package/dist/improve-run-summary.js +77 -7
- package/dist/improve-run-summary.js.map +1 -1
- package/dist/improve-site-plan.d.ts +57 -0
- package/dist/improve-site-plan.d.ts.map +1 -0
- package/dist/improve-site-plan.js +79 -0
- package/dist/improve-site-plan.js.map +1 -0
- package/dist/improve-site-shell.d.ts +11 -0
- package/dist/improve-site-shell.d.ts.map +1 -0
- package/dist/improve-site-shell.js +24 -0
- package/dist/improve-site-shell.js.map +1 -0
- package/dist/improve-site-stage.d.ts +10 -0
- package/dist/improve-site-stage.d.ts.map +1 -0
- package/dist/improve-site-stage.js +84 -0
- package/dist/improve-site-stage.js.map +1 -0
- package/dist/improve-site-tokens.d.ts +9 -0
- package/dist/improve-site-tokens.d.ts.map +1 -0
- package/dist/improve-site-tokens.js +17 -0
- package/dist/improve-site-tokens.js.map +1 -0
- package/dist/improve-source-hints.d.ts +3 -12
- package/dist/improve-source-hints.d.ts.map +1 -1
- package/dist/improve-source-hints.js +4 -5
- package/dist/improve-source-hints.js.map +1 -1
- package/dist/improve-spend-ledger.d.ts +69 -0
- package/dist/improve-spend-ledger.d.ts.map +1 -0
- package/dist/improve-spend-ledger.js +118 -0
- package/dist/improve-spend-ledger.js.map +1 -0
- package/dist/improve-stage-runners.d.ts +5 -2
- package/dist/improve-stage-runners.d.ts.map +1 -1
- package/dist/improve-stage-runners.js +5 -2
- package/dist/improve-stage-runners.js.map +1 -1
- package/dist/improve-stage-shared.d.ts +49 -2
- package/dist/improve-stage-shared.d.ts.map +1 -1
- package/dist/improve-stage-shared.js +80 -3
- package/dist/improve-stage-shared.js.map +1 -1
- package/dist/improve-stop-handler.d.ts +15 -0
- package/dist/improve-stop-handler.d.ts.map +1 -1
- package/dist/improve-stop-handler.js +74 -3
- package/dist/improve-stop-handler.js.map +1 -1
- package/dist/improve-terminal-event.d.ts.map +1 -1
- package/dist/improve-terminal-event.js +13 -4
- package/dist/improve-terminal-event.js.map +1 -1
- package/dist/improve-workspace.d.ts +282 -9
- package/dist/improve-workspace.d.ts.map +1 -1
- package/dist/improve-workspace.js +250 -78
- package/dist/improve-workspace.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +202 -0
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/mcp-convert.js +1 -1
- package/dist/mcp-convert.js.map +1 -1
- package/dist/redesign-capture.d.ts +146 -15
- package/dist/redesign-capture.d.ts.map +1 -1
- package/dist/redesign-capture.js +182 -65
- package/dist/redesign-capture.js.map +1 -1
- package/dist/redesign-workspace.d.ts +13 -0
- package/dist/redesign-workspace.d.ts.map +1 -1
- package/dist/redesign-workspace.js +14 -0
- package/dist/redesign-workspace.js.map +1 -1
- package/dist/responsive-alternative-materializer.d.ts +24 -0
- package/dist/responsive-alternative-materializer.d.ts.map +1 -0
- package/dist/responsive-alternative-materializer.js +93 -0
- package/dist/responsive-alternative-materializer.js.map +1 -0
- package/dist/result-integrity.d.ts +38 -0
- package/dist/result-integrity.d.ts.map +1 -0
- package/dist/result-integrity.js +46 -0
- package/dist/result-integrity.js.map +1 -0
- package/dist/review-edit-source.d.ts.map +1 -1
- package/dist/review-edit-source.js +6 -2
- package/dist/review-edit-source.js.map +1 -1
- package/dist/review-edit.js +2 -2
- package/dist/review-edit.js.map +1 -1
- package/dist/review-prototype-gap.js +1 -1
- package/dist/review-prototype-gap.js.map +1 -1
- package/dist/spend-run-filter.d.ts +21 -0
- package/dist/spend-run-filter.d.ts.map +1 -0
- package/dist/spend-run-filter.js +65 -0
- package/dist/spend-run-filter.js.map +1 -0
- package/dist/spend-scoped-report-lines.d.ts +4 -0
- package/dist/spend-scoped-report-lines.d.ts.map +1 -0
- package/dist/spend-scoped-report-lines.js +46 -0
- package/dist/spend-scoped-report-lines.js.map +1 -0
- package/dist/spend-scoped-report.d.ts +28 -0
- package/dist/spend-scoped-report.d.ts.map +1 -0
- package/dist/spend-scoped-report.js +45 -0
- package/dist/spend-scoped-report.js.map +1 -0
- package/open-design.json +2 -2
- package/package.json +5 -5
- package/skills/12ui-design/SKILL.md +14 -4
- package/skills/12ui-design/improve.md +67 -5
- package/skills/12ui-design/inspire.md +1 -1
- package/dist/improve-dom-anchor.d.ts.map +0 -1
- package/dist/improve-dom-anchor.js.map +0 -1
- package/dist/improve-dom-extract.d.ts.map +0 -1
- package/dist/improve-dom-extract.js.map +0 -1
- package/dist/improve-dom-neighbour.d.ts.map +0 -1
- package/dist/improve-dom-neighbour.js.map +0 -1
- package/dist/improve-dom-scale.d.ts.map +0 -1
- package/dist/improve-dom-scale.js.map +0 -1
- package/dist/improve-layerdoc-diff.d.ts.map +0 -1
- package/dist/improve-layerdoc-diff.js.map +0 -1
- package/dist/improve-layerdoc-types.d.ts.map +0 -1
- package/dist/improve-layerdoc-types.js +0 -2
- package/dist/improve-layerdoc-types.js.map +0 -1
- package/dist/improve-plan-annotated-render.d.ts.map +0 -1
- package/dist/improve-plan-annotated-render.js.map +0 -1
- package/dist/improve-plan-render.d.ts.map +0 -1
- package/dist/improve-plan-render.js.map +0 -1
- package/dist/improve-raster-layers-section.d.ts.map +0 -1
- package/dist/improve-raster-layers-section.js.map +0 -1
- package/dist/improve-token-patch.d.ts.map +0 -1
- package/dist/improve-token-patch.js.map +0 -1
- /package/dist/{improve-dom-anchor.d.ts → improve-core/improve-dom-anchor.d.ts} +0 -0
- /package/dist/{improve-dom-extract.d.ts → improve-core/improve-dom-extract.d.ts} +0 -0
- /package/dist/{improve-dom-neighbour.d.ts → improve-core/improve-dom-neighbour.d.ts} +0 -0
- /package/dist/{improve-dom-scale.d.ts → improve-core/improve-dom-scale.d.ts} +0 -0
- /package/dist/{improve-layerdoc-diff.d.ts → improve-core/improve-layerdoc-diff.d.ts} +0 -0
package/dist/{improve-plan-annotated-render.js → improve-core/improve-plan-annotated-render.js}
RENAMED
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
1
3
|
import { selectorLabel } from './improve-dom-anchor.js';
|
|
2
|
-
import {
|
|
4
|
+
import { improveLowOverlapNote } from './improve-dom-gate.js';
|
|
5
|
+
import { formatImproveBounds, improveCarriedRasterLayers, improveFrameMappingLine, } from './improve-kit-asset-model.js';
|
|
3
6
|
import { renderImproveRasterLayers } from './improve-raster-layers-section.js';
|
|
7
|
+
import { improveVectorKeeps, renderImproveVectorKeeps, } from './improve-plan-vector-keep.js';
|
|
4
8
|
import { formatImproveSourceHint } from './improve-source-hints.js';
|
|
9
|
+
import { fontTokenName } from './improve-token-patch.js';
|
|
5
10
|
/** Tokens shown inline; the rest stay in `token-patch.css`, which keeps them all. */
|
|
6
11
|
export const IMPROVE_PLAN_TOKEN_LIMIT = 12;
|
|
7
12
|
/** Selectors per token line. Fifty-four on one line is not a readable plan. */
|
|
@@ -14,27 +19,43 @@ const MODE_MEANING = {
|
|
|
14
19
|
+ ' specification rather than a diff.',
|
|
15
20
|
};
|
|
16
21
|
const percent = (value) => `${(value * 100).toFixed(1)}%`;
|
|
17
|
-
const header = (args) =>
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
22
|
+
const header = (args) => {
|
|
23
|
+
const lowOverlap = improveLowOverlapNote(args.computed.gate);
|
|
24
|
+
return [
|
|
25
|
+
'# Annotated implementation plan',
|
|
26
|
+
'',
|
|
27
|
+
'## How to read this plan',
|
|
28
|
+
'',
|
|
29
|
+
`- Mode: **${args.mode}** — ${MODE_MEANING[args.mode]}`,
|
|
30
|
+
`- Coverage ${percent(args.computed.domCoverage)} before-side:`
|
|
31
|
+
+ ' the share of the existing interface\'s elements the target could be matched to.',
|
|
32
|
+
`- Coverage ${percent(args.computed.designCoverage)} target-side:`
|
|
33
|
+
+ ' the share of the target\'s elements that matched something already there.',
|
|
34
|
+
...(lowOverlap ? [`- ${lowOverlap}`] : []),
|
|
35
|
+
`- Frame: ${improveFrameMappingLine({
|
|
36
|
+
frame: args.computed.beforeCanvas,
|
|
37
|
+
design: args.computed.targetCanvas,
|
|
38
|
+
})}`,
|
|
39
|
+
'- Precedence: assets → tokens → matched changes → added elements. Work them in that order.',
|
|
40
|
+
'- Skip an item only with a stated reason in your report; never skip a raster layer.',
|
|
41
|
+
`- Source repository: ${args.repo ? `\`${args.repo}\`` : 'not supplied; file hints are unresolved'}`,
|
|
42
|
+
'',
|
|
43
|
+
];
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* The design's font, named as a fact rather than fetched (F23).
|
|
47
|
+
*
|
|
48
|
+
* The token patch used to open with a Google Fonts `@import`, which is a
|
|
49
|
+
* network dependency and a CSP hazard the repository never asked for. The plan
|
|
50
|
+
* says which family the design uses and leaves the loading to whatever the
|
|
51
|
+
* repository already does.
|
|
52
|
+
*/
|
|
53
|
+
export const improveFontLines = (fonts) => fonts.map(({ family, weights }) => (`- Fonts: **${family}** (weights ${weights.join(', ')}), declared as \`${fontTokenName(family)}\``
|
|
54
|
+
+ ' — the patch imports nothing. Load the family the way this repository already loads fonts:'
|
|
55
|
+
+ ' self-host it, or add it to the existing loader.'));
|
|
36
56
|
const tokens = (patch) => {
|
|
37
57
|
const lines = ['## Tokens — apply once', '', '- Apply `token-patch.css` through the existing global token or theme entry point.'];
|
|
58
|
+
lines.push(...improveFontLines(patch.fontLoads));
|
|
38
59
|
if (patch.tokens.length === 0) {
|
|
39
60
|
lines.push('- No recurring CSS-capable delta reached the two-node threshold.', '');
|
|
40
61
|
return lines;
|
|
@@ -98,6 +119,14 @@ const addedElements = (args) => {
|
|
|
98
119
|
if (repeated) {
|
|
99
120
|
lines.push('Entries that name an asset above are the same item, specified in full. Place each asset once.', '');
|
|
100
121
|
}
|
|
122
|
+
// Two files per icon, and which one a lane reaches for decides whether the
|
|
123
|
+
// icon renders in its colour or black (F30).
|
|
124
|
+
if (args.addedSpecs.some((spec) => spec.asset?.inline)) {
|
|
125
|
+
lines.push('Icon assets come as a pair. `<name>.svg` carries the design\'s declared colour and is the'
|
|
126
|
+
+ ' one to reference as an `<img>`, `background-image`, or `url()`;'
|
|
127
|
+
+ ' `<name>-inline.svg` paints with `currentColor` and works only inlined in the markup or'
|
|
128
|
+
+ ' as a `mask-image` whose call site sets the colour. Each spec below names its own pair.', '');
|
|
129
|
+
}
|
|
101
130
|
lines.push(...args.addedSpecs.map((spec) => {
|
|
102
131
|
const raster = args.rasterByIndex.get(spec.designIndex);
|
|
103
132
|
const kind = raster?.kind ?? args.computed.targetLeaves[spec.designIndex]?.kind ?? 'layer';
|
|
@@ -114,13 +143,19 @@ const addedElements = (args) => {
|
|
|
114
143
|
args.addedSpecs.forEach((spec) => lines.push(spec.markdown, ''));
|
|
115
144
|
return lines;
|
|
116
145
|
};
|
|
117
|
-
const checklist = (rasterLayers) => {
|
|
146
|
+
const checklist = (rasterLayers, keeps = []) => {
|
|
118
147
|
// The same list the section above printed, so the checklist cannot ask for a
|
|
119
|
-
// plate that section deliberately left out.
|
|
120
|
-
const
|
|
148
|
+
// plate that section deliberately left out — a kept vector included (F37).
|
|
149
|
+
const kept = new Set(keeps.map((keep) => keep.index));
|
|
150
|
+
const carried = improveCarriedRasterLayers(rasterLayers)
|
|
151
|
+
.filter((layer) => !kept.has(layer.index));
|
|
121
152
|
return [
|
|
122
153
|
'## Before you commit',
|
|
123
154
|
'',
|
|
155
|
+
...(keeps.length > 0
|
|
156
|
+
? [`- Every vector node above is still an element, not an image: ${keeps
|
|
157
|
+
.map((keep) => keep.selector).join(', ')}.`]
|
|
158
|
+
: []),
|
|
124
159
|
carried.length > 0
|
|
125
160
|
? `- Every raster layer above is present in the page: ${carried
|
|
126
161
|
.map((layer) => `${layer.kind}${layer.asset ? ` (\`${layer.asset.id}\`)` : ''}`).join(', ')}.`
|
|
@@ -145,12 +180,24 @@ const guardrails = () => [
|
|
|
145
180
|
];
|
|
146
181
|
export const renderImproveAnnotatedPlan = (args) => {
|
|
147
182
|
const selectorByTargetIndex = new Map();
|
|
183
|
+
const domByTargetIndex = new Map();
|
|
148
184
|
for (const entry of args.computed.result.matched) {
|
|
149
185
|
const leaf = args.computed.beforeLeaves[entry.beforeIndex];
|
|
150
|
-
if (leaf?.dom)
|
|
151
|
-
|
|
186
|
+
if (!leaf?.dom)
|
|
187
|
+
continue;
|
|
188
|
+
selectorByTargetIndex.set(entry.afterIndex, selectorLabel(leaf));
|
|
189
|
+
domByTargetIndex.set(entry.afterIndex, leaf.dom);
|
|
152
190
|
}
|
|
153
|
-
const
|
|
191
|
+
const rasterLayers = args.index.rasterLayers;
|
|
192
|
+
// A cutout must never be placed over a node the page already draws as a
|
|
193
|
+
// vector (F37). The anchor's tag is a declared fact of the capture, so this
|
|
194
|
+
// arbitrates on evidence rather than on a guess about the design.
|
|
195
|
+
const keeps = improveVectorKeeps({
|
|
196
|
+
layers: args.index.rasterLayers,
|
|
197
|
+
anchor: (layer) => domByTargetIndex.get(layer.index),
|
|
198
|
+
label: (layer) => selectorByTargetIndex.get(layer.index),
|
|
199
|
+
});
|
|
200
|
+
const rasterByIndex = new Map(rasterLayers.map((layer) => [layer.index, layer]));
|
|
154
201
|
return [
|
|
155
202
|
...header({
|
|
156
203
|
computed: args.computed,
|
|
@@ -158,9 +205,11 @@ export const renderImproveAnnotatedPlan = (args) => {
|
|
|
158
205
|
...(args.repo ? { repo: args.repo } : {}),
|
|
159
206
|
}),
|
|
160
207
|
...renderImproveRasterLayers({
|
|
161
|
-
layers:
|
|
208
|
+
layers: rasterLayers,
|
|
162
209
|
placement: (layer) => selectorByTargetIndex.get(layer.index),
|
|
210
|
+
exclude: new Set(keeps.map((keep) => keep.index)),
|
|
163
211
|
}),
|
|
212
|
+
...renderImproveVectorKeeps(keeps),
|
|
164
213
|
...tokens(args.tokenPatch),
|
|
165
214
|
...matchedChanges({
|
|
166
215
|
computed: args.computed,
|
|
@@ -168,7 +217,7 @@ export const renderImproveAnnotatedPlan = (args) => {
|
|
|
168
217
|
...(args.repo ? { repo: args.repo } : {}),
|
|
169
218
|
}),
|
|
170
219
|
...addedElements({ addedSpecs: args.addedSpecs, computed: args.computed, rasterByIndex }),
|
|
171
|
-
...checklist(
|
|
220
|
+
...checklist(rasterLayers, keeps),
|
|
172
221
|
...guardrails(),
|
|
173
222
|
].join('\n');
|
|
174
223
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-annotated-render.js","sourceRoot":"","sources":["../../src/improve-core/improve-plan-annotated-render.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type AddedElementSpec, type ImproveAssetResolver } from './improve-added-specs.js';
|
|
2
|
+
import { type AnnotatedEntry, type ImprovePlanMode } from './improve-plan-annotated-render.js';
|
|
3
|
+
import { type ImproveTokenPatch } from './improve-token-patch.js';
|
|
4
|
+
import type { ImproveArtifactMap, ImproveDescribePath } from './improve-artifacts.js';
|
|
5
|
+
import type { ImproveDomDiff } from './improve-dom-diff.js';
|
|
6
|
+
import { type ImproveKitAssetIndex } from './improve-kit-asset-model.js';
|
|
7
|
+
export type { AnnotatedEntry, ImprovePlanMode };
|
|
8
|
+
export declare const IMPROVE_ANNOTATED_PLAN_FILE = "plan-annotated.md";
|
|
9
|
+
export declare const IMPROVE_TOKEN_PATCH_FILE = "token-patch.css";
|
|
10
|
+
/**
|
|
11
|
+
* The plan half of a passing gate: the token patch, the annotated plan, and the
|
|
12
|
+
* SVG assets its added-element specs reference. Source hints arrive resolved
|
|
13
|
+
* because indexing a repository is a host capability, not a policy.
|
|
14
|
+
*/
|
|
15
|
+
export declare const planImproveAnnotatedArtifacts: (args: {
|
|
16
|
+
computed: ImproveDomDiff;
|
|
17
|
+
targetDoc: unknown;
|
|
18
|
+
entries: readonly AnnotatedEntry[];
|
|
19
|
+
describePath: ImproveDescribePath;
|
|
20
|
+
resolveAsset?: ImproveAssetResolver;
|
|
21
|
+
/**
|
|
22
|
+
* The kit's assets on disk, when the host has a filesystem to read them from.
|
|
23
|
+
* Without it the plan still names every raster layer the target declares —
|
|
24
|
+
* it just says their files are not in this kit.
|
|
25
|
+
*/
|
|
26
|
+
index?: ImproveKitAssetIndex;
|
|
27
|
+
repo?: string;
|
|
28
|
+
mode: ImprovePlanMode;
|
|
29
|
+
}) => {
|
|
30
|
+
artifacts: ImproveArtifactMap;
|
|
31
|
+
tokenPatch: ImproveTokenPatch;
|
|
32
|
+
addedSpecs: AddedElementSpec[];
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=improve-plan-annotator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-annotator.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-plan-annotator.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,eAAe,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAEhD,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAC/D,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,MAAM;IAClD,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;IACnC,YAAY,EAAE,mBAAmB,CAAC;IAClC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,eAAe,CAAC;CACvB,KAAG;IACF,SAAS,EAAE,kBAAkB,CAAC;IAC9B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,UAAU,EAAE,gBAAgB,EAAE,CAAC;CA0ChC,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
import { buildImproveAddedElementSpecs, } from './improve-added-specs.js';
|
|
4
|
+
import { renderImproveAnnotatedPlan, } from './improve-plan-annotated-render.js';
|
|
5
|
+
import { buildImproveTokenPatch } from './improve-token-patch.js';
|
|
6
|
+
import { improveRasterLayersOfDocument, } from './improve-kit-asset-model.js';
|
|
7
|
+
export const IMPROVE_ANNOTATED_PLAN_FILE = 'plan-annotated.md';
|
|
8
|
+
export const IMPROVE_TOKEN_PATCH_FILE = 'token-patch.css';
|
|
9
|
+
/**
|
|
10
|
+
* The plan half of a passing gate: the token patch, the annotated plan, and the
|
|
11
|
+
* SVG assets its added-element specs reference. Source hints arrive resolved
|
|
12
|
+
* because indexing a repository is a host capability, not a policy.
|
|
13
|
+
*/
|
|
14
|
+
export const planImproveAnnotatedArtifacts = (args) => {
|
|
15
|
+
const tokenPatch = buildImproveTokenPatch(args.entries, args.computed.beforeLeaves, args.computed.targetLeaves);
|
|
16
|
+
const added = buildImproveAddedElementSpecs({
|
|
17
|
+
targetDoc: args.targetDoc,
|
|
18
|
+
normalizedTarget: args.computed.targetLeaves,
|
|
19
|
+
before: args.computed.beforeLeaves,
|
|
20
|
+
canvas: args.computed.beforeCanvas,
|
|
21
|
+
diff: args.computed.result,
|
|
22
|
+
describePath: args.describePath,
|
|
23
|
+
...(args.resolveAsset ? { resolveAsset: args.resolveAsset } : {}),
|
|
24
|
+
});
|
|
25
|
+
const index = args.index ?? {
|
|
26
|
+
assets: [],
|
|
27
|
+
rasterLayers: improveRasterLayersOfDocument(args.targetDoc),
|
|
28
|
+
layerDocPresent: true,
|
|
29
|
+
manifestPresent: false,
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
artifacts: {
|
|
33
|
+
files: {
|
|
34
|
+
[IMPROVE_ANNOTATED_PLAN_FILE]: renderImproveAnnotatedPlan({
|
|
35
|
+
computed: args.computed,
|
|
36
|
+
entries: args.entries,
|
|
37
|
+
tokenPatch,
|
|
38
|
+
addedSpecs: added.specs,
|
|
39
|
+
index,
|
|
40
|
+
...(args.repo ? { repo: args.repo } : {}),
|
|
41
|
+
mode: args.mode,
|
|
42
|
+
}),
|
|
43
|
+
[IMPROVE_TOKEN_PATCH_FILE]: tokenPatch.css,
|
|
44
|
+
...added.files,
|
|
45
|
+
},
|
|
46
|
+
remove: [],
|
|
47
|
+
},
|
|
48
|
+
tokenPatch,
|
|
49
|
+
addedSpecs: added.specs,
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=improve-plan-annotator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-annotator.js","sourceRoot":"","sources":["../../src/improve-core/improve-plan-annotator.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,uEAAuE;AAEvE,OAAO,EACL,6BAA6B,GAG9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,0BAA0B,GAG3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAA0B,MAAM,0BAA0B,CAAC;AAG1F,OAAO,EACL,6BAA6B,GAE9B,MAAM,8BAA8B,CAAC;AAItC,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,IAc7C,EAIC,EAAE;IACF,MAAM,UAAU,GAAG,sBAAsB,CACvC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,CAAC,YAAY,EAC1B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAC3B,CAAC;IACF,MAAM,KAAK,GAAG,6BAA6B,CAAC;QAC1C,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;QAC5C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;QAClC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;QAClC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;QAC1B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC,CAAC;IACH,MAAM,KAAK,GAAyB,IAAI,CAAC,KAAK,IAAI;QAChD,MAAM,EAAE,EAAE;QACV,YAAY,EAAE,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC;QAC3D,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,KAAK;KACvB,CAAC;IACF,OAAO;QACL,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,CAAC,2BAA2B,CAAC,EAAE,0BAA0B,CAAC;oBACxD,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,UAAU;oBACV,UAAU,EAAE,KAAK,CAAC,KAAK;oBACvB,KAAK;oBACL,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzC,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC;gBACF,CAAC,wBAAwB,CAAC,EAAE,UAAU,CAAC,GAAG;gBAC1C,GAAG,KAAK,CAAC,KAAK;aACf;YACD,MAAM,EAAE,EAAE;SACX;QACD,UAAU;QACV,UAAU,EAAE,KAAK,CAAC,KAAK;KACxB,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LayerDelta, LayerDiffResult, LayerLeaf } from './improve-layerdoc-types.js';
|
|
1
|
+
import type { ImproveGate, LayerDelta, LayerDiffResult, LayerLeaf } from './improve-layerdoc-types.js';
|
|
2
2
|
export type RecurringDelta = LayerDelta & {
|
|
3
3
|
kind: string;
|
|
4
4
|
count: number;
|
|
@@ -18,6 +18,7 @@ export declare const renderDomChanges: (args: {
|
|
|
18
18
|
targetPath: string;
|
|
19
19
|
domCoverage: number;
|
|
20
20
|
designCoverage: number;
|
|
21
|
+
gate?: ImproveGate;
|
|
21
22
|
}) => string;
|
|
22
23
|
export declare const leafPalette: (document: unknown) => string[];
|
|
23
24
|
//# sourceMappingURL=improve-plan-render.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-render.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-plan-render.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAQvG,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,eAAO,MAAM,wBAAwB,GACnC,SAAS,SAAS,eAAe,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,KACrD,cAAc,EAahB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM;IACvC,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB,KAAG,MA+BH,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM;IACrC,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,EAAE,SAAS,SAAS,EAAE,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,KAAG,MA8BH,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,UAAU,OAAO,KAAG,MAAM,EAEpD,CAAC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
1
3
|
import { selectorLabel } from './improve-dom-anchor.js';
|
|
4
|
+
import { improveLowOverlapNote } from './improve-dom-gate.js';
|
|
2
5
|
import { flattenLayerDoc } from './improve-layerdoc-diff.js';
|
|
3
6
|
const format = (value) => value === undefined
|
|
4
7
|
? '∅'
|
|
@@ -50,13 +53,16 @@ export const renderLayerChanges = (args) => {
|
|
|
50
53
|
return `${lines.join('\n')}\n`;
|
|
51
54
|
};
|
|
52
55
|
export const renderDomChanges = (args) => {
|
|
56
|
+
const lowOverlap = args.gate ? improveLowOverlapNote(args.gate) : undefined;
|
|
53
57
|
const lines = [
|
|
54
58
|
'# Selector-anchored interface diff', '',
|
|
55
59
|
`- Before: \`${args.beforePath}\``,
|
|
56
60
|
`- Target: \`${args.targetPath}\``,
|
|
57
61
|
`- DOM-side coverage: **${(args.domCoverage * 100).toFixed(1)}%**`,
|
|
58
62
|
`- Design-side coverage: ${(args.designCoverage * 100).toFixed(1)}%`,
|
|
59
|
-
'- Coordinates were normalized fractionally; non-position lengths use the width ratio.',
|
|
63
|
+
'- Coordinates were normalized fractionally; non-position lengths use the width ratio.',
|
|
64
|
+
...(lowOverlap ? ['', `> ${lowOverlap}`] : []),
|
|
65
|
+
'',
|
|
60
66
|
'## Matched changes', '',
|
|
61
67
|
];
|
|
62
68
|
const changed = args.result.matched.filter((entry) => entry.changed);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-render.js","sourceRoot":"","sources":["../../src/improve-core/improve-plan-render.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type ImproveRasterLayer } from './improve-kit-asset-model.js';
|
|
2
|
+
import type { DomLeafIdentity } from './improve-layerdoc-types.js';
|
|
3
|
+
export type ImproveVectorKeep = {
|
|
4
|
+
/** The target layer index the cutout would have replaced. */
|
|
5
|
+
index: number;
|
|
6
|
+
kind: string;
|
|
7
|
+
name: string;
|
|
8
|
+
/** The label the plan prints for the anchored node. */
|
|
9
|
+
selector: string;
|
|
10
|
+
tag: string;
|
|
11
|
+
/** The asset that stays in the kit as a reference, when one exists. */
|
|
12
|
+
assetFile?: string;
|
|
13
|
+
bounds: ImproveRasterLayer['bounds'];
|
|
14
|
+
};
|
|
15
|
+
export declare const isImproveVectorAnchor: (dom: DomLeafIdentity | undefined) => boolean;
|
|
16
|
+
/**
|
|
17
|
+
* The layers a plan must keep as vectors, given what each one anchors to.
|
|
18
|
+
* `anchor` supplies the matched live node and `label` renders it consistently
|
|
19
|
+
* with the rest of the implementation plan.
|
|
20
|
+
*/
|
|
21
|
+
export declare const improveVectorKeeps: (args: {
|
|
22
|
+
layers: readonly ImproveRasterLayer[];
|
|
23
|
+
anchor: (layer: ImproveRasterLayer) => DomLeafIdentity | undefined;
|
|
24
|
+
label: (layer: ImproveRasterLayer) => string | undefined;
|
|
25
|
+
}) => ImproveVectorKeep[];
|
|
26
|
+
export declare const IMPROVE_VECTOR_KEEP_TITLE = "Vector nodes to keep \u2014 do not replace with a raster";
|
|
27
|
+
/** The section that replaces a contradictory raster-carriage instruction. */
|
|
28
|
+
export declare const renderImproveVectorKeeps: (keeps: readonly ImproveVectorKeep[]) => string[];
|
|
29
|
+
//# sourceMappingURL=improve-plan-vector-keep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-vector-keep.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-plan-vector-keep.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAkBnE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,KAAK,eAAe,GAAG,SAAS,KAAG,OAExE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM;IACvC,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtC,MAAM,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,eAAe,GAAG,SAAS,CAAC;IACnE,KAAK,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC;CAC1D,KAAG,iBAAiB,EAiBpB,CAAC;AAEF,eAAO,MAAM,yBAAyB,6DAAwD,CAAC;AAE/F,6EAA6E;AAC7E,eAAO,MAAM,wBAAwB,GAAI,OAAO,SAAS,iBAAiB,EAAE,KAAG,MAAM,EAqBpF,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
import { formatImproveBounds } from './improve-kit-asset-model.js';
|
|
4
|
+
/**
|
|
5
|
+
* The one module that decides when a plan must NOT swap declared vector
|
|
6
|
+
* structure for a raster cutout (F37; CLAUDE.md item 8, and the owner rule that
|
|
7
|
+
* raster-for-structure is a regression, not a fix).
|
|
8
|
+
*
|
|
9
|
+
* The DOM extraction records the anchored node's tag and the diff records which
|
|
10
|
+
* target layer matched it. A structural raster layer on an svg/use/symbol is
|
|
11
|
+
* therefore an evidence-backed keep, never a guess about the design.
|
|
12
|
+
*/
|
|
13
|
+
/** Elements that ARE vector structure. An `<img>` is a raster slot, not one. */
|
|
14
|
+
const VECTOR_TAGS = new Set(['svg', 'use', 'symbol']);
|
|
15
|
+
/** Layer kinds whose whole job is to be a mark. */
|
|
16
|
+
const STRUCTURAL_KINDS = new Set(['logo', 'icon', 'mark', 'glyph', 'emblem']);
|
|
17
|
+
export const isImproveVectorAnchor = (dom) => (Boolean(dom?.tag && VECTOR_TAGS.has(dom.tag.toLowerCase())));
|
|
18
|
+
/**
|
|
19
|
+
* The layers a plan must keep as vectors, given what each one anchors to.
|
|
20
|
+
* `anchor` supplies the matched live node and `label` renders it consistently
|
|
21
|
+
* with the rest of the implementation plan.
|
|
22
|
+
*/
|
|
23
|
+
export const improveVectorKeeps = (args) => {
|
|
24
|
+
const keeps = [];
|
|
25
|
+
for (const layer of args.layers) {
|
|
26
|
+
if (!STRUCTURAL_KINDS.has(layer.kind.toLowerCase()))
|
|
27
|
+
continue;
|
|
28
|
+
const dom = args.anchor(layer);
|
|
29
|
+
if (!isImproveVectorAnchor(dom))
|
|
30
|
+
continue;
|
|
31
|
+
keeps.push({
|
|
32
|
+
index: layer.index,
|
|
33
|
+
kind: layer.kind,
|
|
34
|
+
name: layer.name,
|
|
35
|
+
selector: args.label(layer) ?? `\`${dom?.selector ?? 'the matched node'}\``,
|
|
36
|
+
tag: (dom?.tag ?? 'svg').toLowerCase(),
|
|
37
|
+
...(layer.asset ? { assetFile: layer.asset.file } : {}),
|
|
38
|
+
bounds: layer.bounds,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return keeps;
|
|
42
|
+
};
|
|
43
|
+
export const IMPROVE_VECTOR_KEEP_TITLE = 'Vector nodes to keep — do not replace with a raster';
|
|
44
|
+
/** The section that replaces a contradictory raster-carriage instruction. */
|
|
45
|
+
export const renderImproveVectorKeeps = (keeps) => {
|
|
46
|
+
if (keeps.length === 0)
|
|
47
|
+
return [];
|
|
48
|
+
return [
|
|
49
|
+
`## ${IMPROVE_VECTOR_KEEP_TITLE}`,
|
|
50
|
+
'',
|
|
51
|
+
'The target cuts these as rasters, and the page already draws them as vectors. Keep the'
|
|
52
|
+
+ ' existing element and restyle it — colour, size, stroke, position — to match the target.'
|
|
53
|
+
+ ' Shipping the cutout over a live `<svg>` trades declared structure for pixels, which is a'
|
|
54
|
+
+ ' regression however the target looks.',
|
|
55
|
+
'',
|
|
56
|
+
...keeps.flatMap((keep) => [
|
|
57
|
+
`- **${keep.kind}** — ${keep.name}`,
|
|
58
|
+
` - Keep: ${keep.selector} — the page renders this as \`<${keep.tag}>\`.`,
|
|
59
|
+
` - Restyle to: ${formatImproveBounds(keep.bounds)}`,
|
|
60
|
+
keep.assetFile
|
|
61
|
+
? ` - Reference only: \`${keep.assetFile}\` — read it for colour and proportion.`
|
|
62
|
+
+ ' Do not place it.'
|
|
63
|
+
: ' - No cutout was extracted for it; the target describes it in the matched changes.',
|
|
64
|
+
]),
|
|
65
|
+
'',
|
|
66
|
+
];
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=improve-plan-vector-keep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-plan-vector-keep.js","sourceRoot":"","sources":["../../src/improve-core/improve-plan-vector-keep.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,uEAAuE;AAEvE,OAAO,EAAE,mBAAmB,EAA2B,MAAM,8BAA8B,CAAC;AAG5F;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEtD,mDAAmD;AACnD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAe9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAgC,EAAW,EAAE,CAAC,CAClF,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAC5D,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAIlC,EAAuB,EAAE;IACxB,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAAE,SAAS;QAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC;YAAE,SAAS;QAC1C,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE,QAAQ,IAAI,kBAAkB,IAAI;YAC3E,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;YACtC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,qDAAqD,CAAC;AAE/F,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAmC,EAAY,EAAE;IACxF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO;QACL,MAAM,yBAAyB,EAAE;QACjC,EAAE;QACF,wFAAwF;cACtF,0FAA0F;cAC1F,2FAA2F;cAC3F,uCAAuC;QACzC,EAAE;QACF,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,EAAE;YACnC,aAAa,IAAI,CAAC,QAAQ,kCAAkC,IAAI,CAAC,GAAG,MAAM;YAC1E,mBAAmB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACrD,IAAI,CAAC,SAAS;gBACZ,CAAC,CAAC,yBAAyB,IAAI,CAAC,SAAS,yCAAyC;sBAChF,mBAAmB;gBACrB,CAAC,CAAC,qFAAqF;SAC1F,CAAC;QACF,EAAE;KACH,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/{improve-raster-layers-section.d.ts → improve-core/improve-raster-layers-section.d.ts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ImproveRasterLayer } from './improve-kit-
|
|
1
|
+
import { type ImproveRasterLayer } from './improve-kit-asset-model.js';
|
|
2
2
|
/**
|
|
3
3
|
* "Raster layers to carry" — the section that has to come first.
|
|
4
4
|
*
|
|
@@ -17,5 +17,13 @@ export declare const renderImproveRasterLayers: (args: {
|
|
|
17
17
|
layers: readonly ImproveRasterLayer[];
|
|
18
18
|
/** Where the layer lands in the page, when the diff anchored it to a selector. */
|
|
19
19
|
placement?: (layer: ImproveRasterLayer) => string | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Target-layer indexes this section must NOT print: they anchor to vector
|
|
22
|
+
* structure the page already has, and `improve-plan-vector-keep.ts` renders
|
|
23
|
+
* them as keeps instead (F37). They are filtered here, beside the alternate
|
|
24
|
+
* backdrop, for the same reason — "never skip one" binds every line this
|
|
25
|
+
* prints, so a layer the plan does not want carried must not appear under it.
|
|
26
|
+
*/
|
|
27
|
+
exclude?: ReadonlySet<number>;
|
|
20
28
|
}) => string[];
|
|
21
29
|
//# sourceMappingURL=improve-raster-layers-section.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-raster-layers-section.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-raster-layers-section.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AAErE,eAAO,MAAM,yBAAyB,GAAI,MAAM;IAC9C,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtC,kFAAkF;IAClF,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC;IAC9D;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC/B,KAAG,MAAM,EAmCT,CAAC"}
|
package/dist/{improve-raster-layers-section.js → improve-core/improve-raster-layers-section.js}
RENAMED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
import { formatImproveBounds, improveCarriedRasterLayers, isImproveAlternateBackdrop, } from './improve-kit-asset-model.js';
|
|
2
4
|
/**
|
|
3
5
|
* "Raster layers to carry" — the section that has to come first.
|
|
4
6
|
*
|
|
@@ -21,7 +23,8 @@ export const renderImproveRasterLayers = (args) => {
|
|
|
21
23
|
+ ' Never redraw one of these in CSS, and never skip one.',
|
|
22
24
|
'',
|
|
23
25
|
];
|
|
24
|
-
const layers = improveCarriedRasterLayers(args.layers)
|
|
26
|
+
const layers = improveCarriedRasterLayers(args.layers)
|
|
27
|
+
.filter((layer) => !args.exclude?.has(layer.index));
|
|
25
28
|
if (layers.length === 0) {
|
|
26
29
|
lines.push('_The target LayerDoc declares no raster layer._', '');
|
|
27
30
|
return lines;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-raster-layers-section.js","sourceRoot":"","sources":["../../src/improve-core/improve-raster-layers-section.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,uEAAuE;AAEvE,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAE3B,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;;;;;;GAYG;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,wBAAwB,CAAC;AAErE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,IAYzC,EAAY,EAAE;IACb,MAAM,KAAK,GAAG;QACZ,MAAM,4BAA4B,EAAE;QACpC,EAAE;QACF,oEAAoE;cAClE,wDAAwD;QAC1D,EAAE;KACH,CAAC;IACF,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC;SACnD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,iDAAiD,EAAE,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;QAC1C,KAAK,CAAC,IAAI,CACR,OAAO,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,EAC3E,KAAK,CAAC,KAAK;YACT,CAAC,CAAC,gBAAgB,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE;YACjE,CAAC,CAAC,gGAAgG,EACpG,eAAe,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAClD,iBAAiB,SAAS,IAAI,4CAA4C,EAAE,EAC5E,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1F,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC1B,CAAC,CAAC,CAAC,uBAAuB,UAAU;yBACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,GAAG,CAAC;yBACxD,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC;gBACvC,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,CAAC,EAAE,CACL,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare class ImproveRefusal extends Error {
|
|
2
|
+
readonly code: string;
|
|
3
|
+
constructor(message: string, code: string, options?: ErrorOptions);
|
|
4
|
+
}
|
|
5
|
+
export declare const isImproveRefusal: (error: unknown) => error is ImproveRefusal;
|
|
6
|
+
//# sourceMappingURL=improve-refusal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-refusal.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-refusal.ts"],"names":[],"mappings":"AAiBA,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAQlE;AAED,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,cAE1D,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
/**
|
|
4
|
+
* A refusal is the plan core declining to build an artifact, with nothing
|
|
5
|
+
* started and nothing bought.
|
|
6
|
+
*
|
|
7
|
+
* The core cannot throw the CLI's `CliRefusal` — it has no CLI to depend on,
|
|
8
|
+
* and the same functions run in the browser — so it throws this instead and
|
|
9
|
+
* carries the same closed-vocabulary `code`. `packages/12ui` translates it back
|
|
10
|
+
* into `CliRefusal` at its boundary so the run journal's `error_class` is
|
|
11
|
+
* unchanged; the web surfaces the message and the code directly.
|
|
12
|
+
*/
|
|
13
|
+
/** Journal `error_class` slugs are lowercase, underscored, and short. */
|
|
14
|
+
const REFUSAL_CODE = /^[a-z][a-z0-9_]{0,63}$/u;
|
|
15
|
+
export class ImproveRefusal extends Error {
|
|
16
|
+
code;
|
|
17
|
+
constructor(message, code, options) {
|
|
18
|
+
super(message, options);
|
|
19
|
+
this.name = 'ImproveRefusal';
|
|
20
|
+
if (!REFUSAL_CODE.test(code)) {
|
|
21
|
+
throw new TypeError(`Invalid refusal code: ${code}`);
|
|
22
|
+
}
|
|
23
|
+
this.code = code;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export const isImproveRefusal = (error) => (error instanceof ImproveRefusal);
|
|
27
|
+
//# sourceMappingURL=improve-refusal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-refusal.js","sourceRoot":"","sources":["../../src/improve-core/improve-refusal.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,uEAAuE;AAEvE;;;;;;;;;GASG;AAEH,yEAAyE;AACzE,MAAM,YAAY,GAAG,yBAAyB,CAAC;AAE/C,MAAM,OAAO,cAAe,SAAQ,KAAK;IAC9B,IAAI,CAAS;IAEtB,YAAY,OAAe,EAAE,IAAY,EAAE,OAAsB;QAC/D,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,SAAS,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAA2B,EAAE,CAAC,CAC3E,KAAK,YAAY,cAAc,CAChC,CAAC"}
|