@ethlete/cli 3.0.0-next.26 → 3.0.0-next.28
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 +481 -0
- package/build-info.json +1 -0
- package/design/arrow-anchor.ts +55 -0
- package/design/define-call.ts +75 -30
- package/design/define-part.ts +64 -4
- package/design/icon-sheet.ts +1 -1
- package/design/interaction-rows.ts +13 -6
- package/design/mark-part.ts +51 -1
- package/design/token-sheet.ts +1 -1
- package/design/web/frame-fit.ts +7 -0
- package/design/web/frame-surfaces.ts +294 -0
- package/design/web/frame.ts +69 -15
- package/design/web/surface-interactive.css +42 -0
- package/design/with-action.ts +29 -0
- package/package.json +3 -1
- package/src/index.js +9 -1
- package/src/index.js.map +1 -1
- package/src/lib/api/compose.js +3 -2
- package/src/lib/api/compose.js.map +1 -1
- package/src/lib/api/git.js +2 -1
- package/src/lib/api/git.js.map +1 -1
- package/src/lib/api/setup.js +2 -2
- package/src/lib/api/setup.js.map +1 -1
- package/src/lib/design/asset-shot.js +4 -4
- package/src/lib/design/asset-shot.js.map +1 -1
- package/src/lib/design/blank-png.d.ts +2 -0
- package/src/lib/design/blank-png.js +28 -0
- package/src/lib/design/blank-png.js.map +1 -0
- package/src/lib/design/build-watch.d.ts +26 -0
- package/src/lib/design/build-watch.js +138 -0
- package/src/lib/design/build-watch.js.map +1 -0
- package/src/lib/design/cache-entry.d.ts +8 -0
- package/src/lib/design/cache-entry.js +30 -0
- package/src/lib/design/cache-entry.js.map +1 -0
- package/src/lib/design/calls-tsconfig.js +20 -13
- package/src/lib/design/calls-tsconfig.js.map +1 -1
- package/src/lib/design/calls.js +3 -3
- package/src/lib/design/calls.js.map +1 -1
- package/src/lib/design/changed-parts.d.ts +1 -1
- package/src/lib/design/check.d.ts +2 -0
- package/src/lib/design/check.js +217 -24
- package/src/lib/design/check.js.map +1 -1
- package/src/lib/design/code-hash.d.ts +30 -0
- package/src/lib/design/code-hash.js +118 -0
- package/src/lib/design/code-hash.js.map +1 -0
- package/src/lib/design/commit-hunks.d.ts +22 -0
- package/src/lib/design/commit-hunks.js +173 -0
- package/src/lib/design/commit-hunks.js.map +1 -0
- package/src/lib/design/design-command.d.ts +2 -0
- package/src/lib/design/design-command.js +271 -27
- package/src/lib/design/design-command.js.map +1 -1
- package/src/lib/design/{paths.d.ts → design-config.d.ts} +34 -28
- package/src/lib/design/design-config.js +35 -0
- package/src/lib/design/design-config.js.map +1 -0
- package/src/lib/design/design-lint.d.ts +68 -0
- package/src/lib/design/design-lint.js +183 -0
- package/src/lib/design/design-lint.js.map +1 -0
- package/src/lib/design/draw-ledger.d.ts +6 -0
- package/src/lib/design/draw-ledger.js +10 -0
- package/src/lib/design/draw-ledger.js.map +1 -1
- package/src/lib/design/force-interactions.d.ts +3 -1
- package/src/lib/design/force-interactions.js +8 -4
- package/src/lib/design/force-interactions.js.map +1 -1
- package/src/lib/design/generated-stylesheets.d.ts +1 -1
- package/src/lib/design/generated-stylesheets.js +2 -2
- package/src/lib/design/generated-stylesheets.js.map +1 -1
- package/src/lib/design/git-top.d.ts +5 -0
- package/src/lib/design/git-top.js +16 -0
- package/src/lib/design/git-top.js.map +1 -0
- package/src/lib/design/hooks-problem.d.ts +2 -0
- package/src/lib/design/hooks-problem.js +23 -0
- package/src/lib/design/hooks-problem.js.map +1 -0
- package/src/lib/design/inbox-command.js +9 -5
- package/src/lib/design/inbox-command.js.map +1 -1
- package/src/lib/design/index.d.ts +4 -1
- package/src/lib/design/index.js +4 -1
- package/src/lib/design/index.js.map +1 -1
- package/src/lib/design/is-running.d.ts +1 -0
- package/src/lib/design/is-running.js +14 -0
- package/src/lib/design/is-running.js.map +1 -0
- package/src/lib/design/legacy.js +3 -3
- package/src/lib/design/legacy.js.map +1 -1
- package/src/lib/design/mcp-command.d.ts +5 -1
- package/src/lib/design/mcp-command.js +27 -16
- package/src/lib/design/mcp-command.js.map +1 -1
- package/src/lib/design/merge-compare.d.ts +10 -2
- package/src/lib/design/merge-compare.js +63 -11
- package/src/lib/design/merge-compare.js.map +1 -1
- package/src/lib/design/motion-command.js +4 -4
- package/src/lib/design/motion-command.js.map +1 -1
- package/src/lib/design/motion-shot.js +3 -2
- package/src/lib/design/motion-shot.js.map +1 -1
- package/src/lib/design/new-call.js +22 -13
- package/src/lib/design/new-call.js.map +1 -1
- package/src/lib/design/old-shot-folders.d.ts +2 -0
- package/src/lib/design/old-shot-folders.js +26 -0
- package/src/lib/design/old-shot-folders.js.map +1 -0
- package/src/lib/design/package-root.d.ts +21 -0
- package/src/lib/design/package-root.js +79 -0
- package/src/lib/design/package-root.js.map +1 -0
- package/src/lib/design/parent-watch.d.ts +7 -0
- package/src/lib/design/parent-watch.js +23 -0
- package/src/lib/design/parent-watch.js.map +1 -0
- package/src/lib/design/part-marks.d.ts +3 -2
- package/src/lib/design/part-marks.js +15 -7
- package/src/lib/design/part-marks.js.map +1 -1
- package/src/lib/design/phase-timing.d.ts +5 -0
- package/src/lib/design/phase-timing.js +27 -0
- package/src/lib/design/phase-timing.js.map +1 -0
- package/src/lib/design/physical-cores.d.ts +12 -0
- package/src/lib/design/physical-cores.js +43 -0
- package/src/lib/design/physical-cores.js.map +1 -0
- package/src/lib/design/product-command.d.ts +1 -1
- package/src/lib/design/product-command.js +16 -18
- package/src/lib/design/product-command.js.map +1 -1
- package/src/lib/design/push-status.d.ts +30 -0
- package/src/lib/design/push-status.js +122 -0
- package/src/lib/design/push-status.js.map +1 -0
- package/src/lib/design/ready-shots.d.ts +21 -12
- package/src/lib/design/ready-shots.js +79 -44
- package/src/lib/design/ready-shots.js.map +1 -1
- package/src/lib/design/render-packages.d.ts +7 -18
- package/src/lib/design/render-packages.js +24 -63
- package/src/lib/design/render-packages.js.map +1 -1
- package/src/lib/design/render-worker.js +24 -6
- package/src/lib/design/render-worker.js.map +1 -1
- package/src/lib/design/render.d.ts +26 -3
- package/src/lib/design/render.js +52 -13
- package/src/lib/design/render.js.map +1 -1
- package/src/lib/design/resident/client.d.ts +52 -0
- package/src/lib/design/resident/client.js +263 -0
- package/src/lib/design/resident/client.js.map +1 -0
- package/src/lib/design/resident/discovery.d.ts +21 -0
- package/src/lib/design/resident/discovery.js +63 -0
- package/src/lib/design/resident/discovery.js.map +1 -0
- package/src/lib/design/resident/resident-process.d.ts +19 -0
- package/src/lib/design/resident/resident-process.js +189 -0
- package/src/lib/design/resident/resident-process.js.map +1 -0
- package/src/lib/design/resident/server.d.ts +52 -0
- package/src/lib/design/resident/server.js +212 -0
- package/src/lib/design/resident/server.js.map +1 -0
- package/src/lib/design/run-abort.d.ts +9 -0
- package/src/lib/design/run-abort.js +45 -0
- package/src/lib/design/run-abort.js.map +1 -0
- package/src/lib/design/run-deadline.d.ts +19 -0
- package/src/lib/design/run-deadline.js +104 -0
- package/src/lib/design/run-deadline.js.map +1 -0
- package/src/lib/design/run-yield.d.ts +8 -0
- package/src/lib/design/run-yield.js +43 -0
- package/src/lib/design/run-yield.js.map +1 -0
- package/src/lib/design/serve-state.d.ts +15 -0
- package/src/lib/design/serve-state.js +56 -0
- package/src/lib/design/serve-state.js.map +1 -0
- package/src/lib/design/serve.d.ts +41 -3
- package/src/lib/design/serve.js +272 -54
- package/src/lib/design/serve.js.map +1 -1
- package/src/lib/design/server-identity.d.ts +40 -0
- package/src/lib/design/server-identity.js +71 -0
- package/src/lib/design/server-identity.js.map +1 -0
- package/src/lib/design/settle-frames.d.ts +4 -0
- package/src/lib/design/settle-frames.js +22 -0
- package/src/lib/design/settle-frames.js.map +1 -0
- package/src/lib/design/shot-board.d.ts +26 -0
- package/src/lib/design/shot-board.js +80 -0
- package/src/lib/design/shot-board.js.map +1 -0
- package/src/lib/design/shot-command.d.ts +26 -5
- package/src/lib/design/shot-command.js +143 -50
- package/src/lib/design/shot-command.js.map +1 -1
- package/src/lib/design/shot-store.d.ts +29 -3
- package/src/lib/design/shot-store.js +206 -36
- package/src/lib/design/shot-store.js.map +1 -1
- package/src/lib/design/shot.d.ts +60 -2
- package/src/lib/design/shot.js +238 -28
- package/src/lib/design/shot.js.map +1 -1
- package/src/lib/design/sketch-at.js +2 -1
- package/src/lib/design/sketch-at.js.map +1 -1
- package/src/lib/design/sketch-command.d.ts +19 -1
- package/src/lib/design/sketch-command.js +664 -159
- package/src/lib/design/sketch-command.js.map +1 -1
- package/src/lib/design/ssr-shims.d.ts +1 -0
- package/src/lib/design/ssr-shims.js +3 -3
- package/src/lib/design/ssr-shims.js.map +1 -1
- package/src/lib/design/stale-cli-dist.d.ts +11 -0
- package/src/lib/design/stale-cli-dist.js +56 -0
- package/src/lib/design/stale-cli-dist.js.map +1 -0
- package/src/lib/design/stamp.d.ts +23 -1
- package/src/lib/design/stamp.js +56 -9
- package/src/lib/design/stamp.js.map +1 -1
- package/src/lib/design/started-by-studio.d.ts +1 -0
- package/src/lib/design/started-by-studio.js +6 -0
- package/src/lib/design/started-by-studio.js.map +1 -0
- package/src/lib/design/status.d.ts +1 -1
- package/src/lib/design/status.js +15 -4
- package/src/lib/design/status.js.map +1 -1
- package/src/lib/design/studio-api.d.ts +21 -10
- package/src/lib/design/studio-api.js +192 -88
- package/src/lib/design/studio-api.js.map +1 -1
- package/src/lib/design/system/accepted-pictures.d.ts +69 -0
- package/src/lib/design/system/accepted-pictures.js +346 -0
- package/src/lib/design/system/accepted-pictures.js.map +1 -0
- package/src/lib/design/system/action-cache.d.ts +45 -0
- package/src/lib/design/system/action-cache.js +72 -0
- package/src/lib/design/system/action-cache.js.map +1 -0
- package/src/lib/design/system/action-lost.d.ts +61 -0
- package/src/lib/design/system/action-lost.js +116 -0
- package/src/lib/design/system/action-lost.js.map +1 -0
- package/src/lib/design/system/action-press.d.ts +29 -0
- package/src/lib/design/system/action-press.js +88 -0
- package/src/lib/design/system/action-press.js.map +1 -0
- package/src/lib/design/system/action-undeclared.d.ts +34 -0
- package/src/lib/design/system/action-undeclared.js +81 -0
- package/src/lib/design/system/action-undeclared.js.map +1 -0
- package/src/lib/design/system/actions-command.d.ts +108 -0
- package/src/lib/design/system/actions-command.js +816 -0
- package/src/lib/design/system/actions-command.js.map +1 -0
- package/src/lib/design/system/actions.d.ts +181 -0
- package/src/lib/design/system/actions.js +333 -0
- package/src/lib/design/system/actions.js.map +1 -0
- package/src/lib/design/system/anti-alias.d.ts +2 -0
- package/src/lib/design/system/anti-alias.js +11 -0
- package/src/lib/design/system/anti-alias.js.map +1 -0
- package/src/lib/design/system/app-files.d.ts +10 -0
- package/src/lib/design/system/app-files.js +175 -0
- package/src/lib/design/system/app-files.js.map +1 -0
- package/src/lib/design/system/arrow-anchor.d.ts +9 -0
- package/src/lib/design/system/arrow-anchor.js +40 -0
- package/src/lib/design/system/arrow-anchor.js.map +1 -0
- package/src/lib/design/system/base-issues.d.ts +28 -0
- package/src/lib/design/system/base-issues.js +80 -0
- package/src/lib/design/system/base-issues.js.map +1 -0
- package/src/lib/design/system/base.d.ts +1 -1
- package/src/lib/design/system/base.js +2 -2
- package/src/lib/design/system/base.js.map +1 -1
- package/src/lib/design/system/baseline-history.d.ts +13 -0
- package/src/lib/design/system/baseline-history.js +40 -0
- package/src/lib/design/system/baseline-history.js.map +1 -0
- package/src/lib/design/system/bespoke-controls.d.ts +33 -0
- package/src/lib/design/system/bespoke-controls.js +149 -0
- package/src/lib/design/system/bespoke-controls.js.map +1 -0
- package/src/lib/design/system/build-ready-contract.d.ts +33 -0
- package/src/lib/design/system/build-ready-contract.js +18 -0
- package/src/lib/design/system/build-ready-contract.js.map +1 -0
- package/src/lib/design/system/build-running.d.ts +13 -0
- package/src/lib/design/system/build-running.js +48 -0
- package/src/lib/design/system/build-running.js.map +1 -0
- package/src/lib/design/system/check-record.d.ts +18 -0
- package/src/lib/design/system/check-record.js +47 -0
- package/src/lib/design/system/check-record.js.map +1 -0
- package/src/lib/design/system/check-rules.d.ts +1 -0
- package/src/lib/design/system/check-rules.js +100 -0
- package/src/lib/design/system/check-rules.js.map +1 -0
- package/src/lib/design/system/check-system.d.ts +83 -7
- package/src/lib/design/system/check-system.js +647 -68
- package/src/lib/design/system/check-system.js.map +1 -1
- package/src/lib/design/system/comments/comment.d.ts +4 -1
- package/src/lib/design/system/comments/comment.js +13 -4
- package/src/lib/design/system/comments/comment.js.map +1 -1
- package/src/lib/design/system/comments/inbox.d.ts +1 -1
- package/src/lib/design/system/comments/inbox.js +2 -2
- package/src/lib/design/system/comments/inbox.js.map +1 -1
- package/src/lib/design/system/compare-cache.d.ts +20 -0
- package/src/lib/design/system/compare-cache.js +92 -0
- package/src/lib/design/system/compare-cache.js.map +1 -0
- package/src/lib/design/system/compare-command.d.ts +150 -0
- package/src/lib/design/system/compare-command.js +580 -0
- package/src/lib/design/system/compare-command.js.map +1 -0
- package/src/lib/design/system/complete-command.js +1 -1
- package/src/lib/design/system/complete-command.js.map +1 -1
- package/src/lib/design/system/complete.d.ts +63 -2
- package/src/lib/design/system/complete.js +281 -71
- package/src/lib/design/system/complete.js.map +1 -1
- package/src/lib/design/system/component-outputs.d.ts +20 -0
- package/src/lib/design/system/component-outputs.js +86 -0
- package/src/lib/design/system/component-outputs.js.map +1 -0
- package/src/lib/design/system/contrast-check.d.ts +1 -1
- package/src/lib/design/system/contrast-check.js +14 -3
- package/src/lib/design/system/contrast-check.js.map +1 -1
- package/src/lib/design/system/decision-refs.d.ts +5 -0
- package/src/lib/design/system/decision-refs.js +21 -0
- package/src/lib/design/system/decision-refs.js.map +1 -0
- package/src/lib/design/system/demo-backdrop.d.ts +11 -0
- package/src/lib/design/system/demo-backdrop.js +41 -0
- package/src/lib/design/system/demo-backdrop.js.map +1 -0
- package/src/lib/design/system/design-hash.d.ts +52 -0
- package/src/lib/design/system/design-hash.js +132 -0
- package/src/lib/design/system/design-hash.js.map +1 -0
- package/src/lib/design/system/disabled-interaction.d.ts +8 -0
- package/src/lib/design/system/disabled-interaction.js +37 -0
- package/src/lib/design/system/disabled-interaction.js.map +1 -0
- package/src/lib/design/system/dom-command.d.ts +36 -0
- package/src/lib/design/system/dom-command.js +178 -0
- package/src/lib/design/system/dom-command.js.map +1 -0
- package/src/lib/design/system/drawn-open-points.d.ts +26 -4
- package/src/lib/design/system/drawn-open-points.js +65 -14
- package/src/lib/design/system/drawn-open-points.js.map +1 -1
- package/src/lib/design/system/dropped-props.d.ts +39 -0
- package/src/lib/design/system/dropped-props.js +271 -0
- package/src/lib/design/system/dropped-props.js.map +1 -0
- package/src/lib/design/system/embedded-actions.d.ts +21 -0
- package/src/lib/design/system/embedded-actions.js +37 -0
- package/src/lib/design/system/embedded-actions.js.map +1 -0
- package/src/lib/design/system/exceptions.js +2 -1
- package/src/lib/design/system/exceptions.js.map +1 -1
- package/src/lib/design/system/flows/flow.js +2 -1
- package/src/lib/design/system/flows/flow.js.map +1 -1
- package/src/lib/design/system/frozen-animations.d.ts +13 -0
- package/src/lib/design/system/frozen-animations.js +51 -0
- package/src/lib/design/system/frozen-animations.js.map +1 -0
- package/src/lib/design/system/grid-report.d.ts +5 -0
- package/src/lib/design/system/grid-report.js +78 -0
- package/src/lib/design/system/grid-report.js.map +1 -0
- package/src/lib/design/system/handoff.js +2 -1
- package/src/lib/design/system/handoff.js.map +1 -1
- package/src/lib/design/system/harness-build-cache.d.ts +49 -0
- package/src/lib/design/system/harness-build-cache.js +188 -0
- package/src/lib/design/system/harness-build-cache.js.map +1 -0
- package/src/lib/design/system/harness-command.d.ts +7 -0
- package/src/lib/design/system/harness-command.js +51 -0
- package/src/lib/design/system/harness-command.js.map +1 -0
- package/src/lib/design/system/harness-config.d.ts +9 -0
- package/src/lib/design/system/harness-config.js +65 -0
- package/src/lib/design/system/harness-config.js.map +1 -0
- package/src/lib/design/system/harness-inputs.d.ts +17 -0
- package/src/lib/design/system/harness-inputs.js +160 -0
- package/src/lib/design/system/harness-inputs.js.map +1 -0
- package/src/lib/design/system/harness-map.d.ts +44 -0
- package/src/lib/design/system/harness-map.js +126 -0
- package/src/lib/design/system/harness-map.js.map +1 -0
- package/src/lib/design/system/harness-samples.d.ts +20 -0
- package/src/lib/design/system/harness-samples.js +92 -0
- package/src/lib/design/system/harness-samples.js.map +1 -0
- package/src/lib/design/system/harness-server.d.ts +51 -0
- package/src/lib/design/system/harness-server.js +306 -0
- package/src/lib/design/system/harness-server.js.map +1 -0
- package/src/lib/design/system/harness-shot.d.ts +78 -0
- package/src/lib/design/system/harness-shot.js +349 -0
- package/src/lib/design/system/harness-shot.js.map +1 -0
- package/src/lib/design/system/harness-watch.d.ts +79 -0
- package/src/lib/design/system/harness-watch.js +334 -0
- package/src/lib/design/system/harness-watch.js.map +1 -0
- package/src/lib/design/system/implementation-baseline.d.ts +20 -0
- package/src/lib/design/system/implementation-baseline.js +44 -0
- package/src/lib/design/system/implementation-baseline.js.map +1 -0
- package/src/lib/design/system/imports.js +14 -1
- package/src/lib/design/system/imports.js.map +1 -1
- package/src/lib/design/system/in-order-at-once.d.ts +6 -0
- package/src/lib/design/system/in-order-at-once.js +28 -0
- package/src/lib/design/system/in-order-at-once.js.map +1 -0
- package/src/lib/design/system/inventory-approval.js +2 -1
- package/src/lib/design/system/inventory-approval.js.map +1 -1
- package/src/lib/design/system/inventory.d.ts +13 -4
- package/src/lib/design/system/inventory.js +36 -7
- package/src/lib/design/system/inventory.js.map +1 -1
- package/src/lib/design/system/leftover-gate-files.d.ts +2 -0
- package/src/lib/design/system/leftover-gate-files.js +15 -0
- package/src/lib/design/system/leftover-gate-files.js.map +1 -0
- package/src/lib/design/system/lib-build-lock.d.ts +18 -0
- package/src/lib/design/system/lib-build-lock.js +111 -0
- package/src/lib/design/system/lib-build-lock.js.map +1 -0
- package/src/lib/design/system/link-free.d.ts +12 -0
- package/src/lib/design/system/link-free.js +125 -0
- package/src/lib/design/system/link-free.js.map +1 -0
- package/src/lib/design/system/list-system.d.ts +8 -8
- package/src/lib/design/system/list-system.js +19 -80
- package/src/lib/design/system/list-system.js.map +1 -1
- package/src/lib/design/system/live-actions.d.ts +121 -0
- package/src/lib/design/system/live-actions.js +674 -0
- package/src/lib/design/system/live-actions.js.map +1 -0
- package/src/lib/design/system/live-compare.d.ts +136 -0
- package/src/lib/design/system/live-compare.js +441 -0
- package/src/lib/design/system/live-compare.js.map +1 -0
- package/src/lib/design/system/live-uncovered.d.ts +45 -0
- package/src/lib/design/system/live-uncovered.js +158 -0
- package/src/lib/design/system/live-uncovered.js.map +1 -0
- package/src/lib/design/system/nested-scroll.d.ts +7 -0
- package/src/lib/design/system/nested-scroll.js +25 -0
- package/src/lib/design/system/nested-scroll.js.map +1 -0
- package/src/lib/design/system/no-verdict.d.ts +13 -0
- package/src/lib/design/system/no-verdict.js +17 -0
- package/src/lib/design/system/no-verdict.js.map +1 -0
- package/src/lib/design/system/notes/note.js +2 -1
- package/src/lib/design/system/notes/note.js.map +1 -1
- package/src/lib/design/system/occluded.d.ts +13 -0
- package/src/lib/design/system/occluded.js +111 -0
- package/src/lib/design/system/occluded.js.map +1 -0
- package/src/lib/design/system/off-centre.d.ts +11 -0
- package/src/lib/design/system/off-centre.js +74 -0
- package/src/lib/design/system/off-centre.js.map +1 -0
- package/src/lib/design/system/open-points-cache.d.ts +11 -0
- package/src/lib/design/system/open-points-cache.js +27 -0
- package/src/lib/design/system/open-points-cache.js.map +1 -0
- package/src/lib/design/system/open-points-runner.d.ts +43 -0
- package/src/lib/design/system/open-points-runner.js +119 -0
- package/src/lib/design/system/open-points-runner.js.map +1 -0
- package/src/lib/design/system/open-points-worker.d.ts +1 -0
- package/src/lib/design/system/open-points-worker.js +28 -0
- package/src/lib/design/system/open-points-worker.js.map +1 -0
- package/src/lib/design/system/open-points.d.ts +24 -6
- package/src/lib/design/system/open-points.js +59 -30
- package/src/lib/design/system/open-points.js.map +1 -1
- package/src/lib/design/system/part-build-ready.d.ts +45 -0
- package/src/lib/design/system/part-build-ready.js +135 -0
- package/src/lib/design/system/part-build-ready.js.map +1 -0
- package/src/lib/design/system/part-command.js +2 -9
- package/src/lib/design/system/part-command.js.map +1 -1
- package/src/lib/design/system/part-compare.d.ts +139 -0
- package/src/lib/design/system/part-compare.js +501 -0
- package/src/lib/design/system/part-compare.js.map +1 -0
- package/src/lib/design/system/part-picture-cache.d.ts +23 -0
- package/src/lib/design/system/part-picture-cache.js +68 -0
- package/src/lib/design/system/part-picture-cache.js.map +1 -0
- package/src/lib/design/system/part-ready.d.ts +71 -7
- package/src/lib/design/system/part-ready.js +128 -19
- package/src/lib/design/system/part-ready.js.map +1 -1
- package/src/lib/design/system/part-task.d.ts +167 -0
- package/src/lib/design/system/part-task.js +331 -0
- package/src/lib/design/system/part-task.js.map +1 -0
- package/src/lib/design/system/pixel-cache.d.ts +16 -0
- package/src/lib/design/system/pixel-cache.js +79 -0
- package/src/lib/design/system/pixel-cache.js.map +1 -0
- package/src/lib/design/system/pointer-focus.d.ts +89 -0
- package/src/lib/design/system/pointer-focus.js +175 -0
- package/src/lib/design/system/pointer-focus.js.map +1 -0
- package/src/lib/design/system/prettier.d.ts +10 -0
- package/src/lib/design/system/prettier.js +37 -0
- package/src/lib/design/system/prettier.js.map +1 -0
- package/src/lib/design/system/problem.d.ts +6 -0
- package/src/lib/design/system/product.js +2 -2
- package/src/lib/design/system/product.js.map +1 -1
- package/src/lib/design/system/reach.d.ts +12 -0
- package/src/lib/design/system/reach.js +186 -0
- package/src/lib/design/system/reach.js.map +1 -0
- package/src/lib/design/system/reachable-controls.d.ts +6 -0
- package/src/lib/design/system/reachable-controls.js +19 -0
- package/src/lib/design/system/reachable-controls.js.map +1 -0
- package/src/lib/design/system/reachable-files.d.ts +14 -0
- package/src/lib/design/system/reachable-files.js +101 -0
- package/src/lib/design/system/reachable-files.js.map +1 -0
- package/src/lib/design/system/reached-state.d.ts +23 -0
- package/src/lib/design/system/reached-state.js +53 -0
- package/src/lib/design/system/reached-state.js.map +1 -0
- package/src/lib/design/system/read-open-points.d.ts +9 -3
- package/src/lib/design/system/read-open-points.js +38 -9
- package/src/lib/design/system/read-open-points.js.map +1 -1
- package/src/lib/design/system/ready-command.d.ts +6 -2
- package/src/lib/design/system/ready-command.js +52 -15
- package/src/lib/design/system/ready-command.js.map +1 -1
- package/src/lib/design/system/record-settled.d.ts +24 -0
- package/src/lib/design/system/record-settled.js +50 -0
- package/src/lib/design/system/record-settled.js.map +1 -0
- package/src/lib/design/system/render-check.d.ts +68 -1
- package/src/lib/design/system/render-check.js +427 -114
- package/src/lib/design/system/render-check.js.map +1 -1
- package/src/lib/design/system/render-issue-key.d.ts +9 -0
- package/src/lib/design/system/render-issue-key.js +27 -0
- package/src/lib/design/system/render-issue-key.js.map +1 -0
- package/src/lib/design/system/resolve-product.d.ts +4 -1
- package/src/lib/design/system/resolve-product.js +19 -3
- package/src/lib/design/system/resolve-product.js.map +1 -1
- package/src/lib/design/system/rule-baseline.d.ts +53 -0
- package/src/lib/design/system/rule-baseline.js +124 -0
- package/src/lib/design/system/rule-baseline.js.map +1 -0
- package/src/lib/design/system/rule-skips.d.ts +20 -0
- package/src/lib/design/system/rule-skips.js +36 -0
- package/src/lib/design/system/rule-skips.js.map +1 -0
- package/src/lib/design/system/rules/app-spec.d.ts +30 -0
- package/src/lib/design/system/rules/app-spec.js +87 -0
- package/src/lib/design/system/rules/app-spec.js.map +1 -0
- package/src/lib/design/system/rules/canonical-class.d.ts +6 -0
- package/src/lib/design/system/rules/canonical-class.js +92 -113
- package/src/lib/design/system/rules/canonical-class.js.map +1 -1
- package/src/lib/design/system/rules/capability-place.d.ts +46 -0
- package/src/lib/design/system/rules/capability-place.js +129 -0
- package/src/lib/design/system/rules/capability-place.js.map +1 -0
- package/src/lib/design/system/rules/command-text.d.ts +7 -0
- package/src/lib/design/system/rules/command-text.js +72 -0
- package/src/lib/design/system/rules/command-text.js.map +1 -0
- package/src/lib/design/system/rules/denied-class.d.ts +9 -0
- package/src/lib/design/system/rules/denied-class.js +121 -0
- package/src/lib/design/system/rules/denied-class.js.map +1 -0
- package/src/lib/design/system/rules/design-coverage.d.ts +30 -0
- package/src/lib/design/system/rules/design-coverage.js +205 -0
- package/src/lib/design/system/rules/design-coverage.js.map +1 -0
- package/src/lib/design/system/rules/exemptions.d.ts +18 -0
- package/src/lib/design/system/rules/exemptions.js +18 -0
- package/src/lib/design/system/rules/exemptions.js.map +1 -0
- package/src/lib/design/system/rules/flow.js +1 -1
- package/src/lib/design/system/rules/flow.js.map +1 -1
- package/src/lib/design/system/rules/glued-interpolation.d.ts +8 -0
- package/src/lib/design/system/rules/glued-interpolation.js +77 -0
- package/src/lib/design/system/rules/glued-interpolation.js.map +1 -0
- package/src/lib/design/system/rules/hard-coded-colour.js +2 -1
- package/src/lib/design/system/rules/hard-coded-colour.js.map +1 -1
- package/src/lib/design/system/rules/implemented-components.d.ts +22 -0
- package/src/lib/design/system/rules/implemented-components.js +45 -0
- package/src/lib/design/system/rules/implemented-components.js.map +1 -0
- package/src/lib/design/system/rules/implements-unrendered.d.ts +13 -0
- package/src/lib/design/system/rules/implements-unrendered.js +63 -0
- package/src/lib/design/system/rules/implements-unrendered.js.map +1 -0
- package/src/lib/design/system/rules/implements.d.ts +2 -1
- package/src/lib/design/system/rules/implements.js +26 -21
- package/src/lib/design/system/rules/implements.js.map +1 -1
- package/src/lib/design/system/rules/inline-svg.js +4 -1
- package/src/lib/design/system/rules/inline-svg.js.map +1 -1
- package/src/lib/design/system/rules/inline-ui-in-page-open.d.ts +13 -0
- package/src/lib/design/system/rules/inline-ui-in-page-open.js +5 -0
- package/src/lib/design/system/rules/inline-ui-in-page-open.js.map +1 -0
- package/src/lib/design/system/rules/inline-ui-in-page.d.ts +18 -0
- package/src/lib/design/system/rules/inline-ui-in-page.js +123 -0
- package/src/lib/design/system/rules/inline-ui-in-page.js.map +1 -0
- package/src/lib/design/system/rules/inline-ui.d.ts +16 -0
- package/src/lib/design/system/rules/inline-ui.js +100 -0
- package/src/lib/design/system/rules/inline-ui.js.map +1 -0
- package/src/lib/design/system/rules/motion.d.ts +1 -1
- package/src/lib/design/system/rules/motion.js +31 -17
- package/src/lib/design/system/rules/motion.js.map +1 -1
- package/src/lib/design/system/rules/native-title.d.ts +7 -0
- package/src/lib/design/system/rules/native-title.js +74 -0
- package/src/lib/design/system/rules/native-title.js.map +1 -0
- package/src/lib/design/system/rules/option-values.d.ts +1 -1
- package/src/lib/design/system/rules/orphan-endpoint-known.d.ts +12 -0
- package/src/lib/design/system/rules/orphan-endpoint-known.js +20 -0
- package/src/lib/design/system/rules/orphan-endpoint-known.js.map +1 -0
- package/src/lib/design/system/rules/orphan-endpoint.d.ts +23 -0
- package/src/lib/design/system/rules/orphan-endpoint.js +166 -0
- package/src/lib/design/system/rules/orphan-endpoint.js.map +1 -0
- package/src/lib/design/system/rules/part-rewrite.d.ts +13 -0
- package/src/lib/design/system/rules/part-rewrite.js +125 -0
- package/src/lib/design/system/rules/part-rewrite.js.map +1 -0
- package/src/lib/design/system/rules/pending-state.d.ts +39 -0
- package/src/lib/design/system/rules/pending-state.js +289 -0
- package/src/lib/design/system/rules/pending-state.js.map +1 -0
- package/src/lib/design/system/rules/sample-default-known.d.ts +5 -0
- package/src/lib/design/system/rules/sample-default-known.js +17 -0
- package/src/lib/design/system/rules/sample-default-known.js.map +1 -0
- package/src/lib/design/system/rules/sample-default.d.ts +22 -0
- package/src/lib/design/system/rules/sample-default.js +92 -0
- package/src/lib/design/system/rules/sample-default.js.map +1 -0
- package/src/lib/design/system/rules/sdk-attribute-value.d.ts +10 -0
- package/src/lib/design/system/rules/sdk-attribute-value.js +78 -0
- package/src/lib/design/system/rules/sdk-attribute-value.js.map +1 -0
- package/src/lib/design/system/rules/sdk-private-var.d.ts +9 -0
- package/src/lib/design/system/rules/sdk-private-var.js +54 -0
- package/src/lib/design/system/rules/sdk-private-var.js.map +1 -0
- package/src/lib/design/system/rules/skips.d.ts +4 -0
- package/src/lib/design/system/rules/skips.js +27 -0
- package/src/lib/design/system/rules/skips.js.map +1 -0
- package/src/lib/design/system/rules/stale-replace.js +5 -0
- package/src/lib/design/system/rules/stale-replace.js.map +1 -1
- package/src/lib/design/system/rules/state-in-component.d.ts +16 -0
- package/src/lib/design/system/rules/state-in-component.js +101 -0
- package/src/lib/design/system/rules/state-in-component.js.map +1 -0
- package/src/lib/design/system/rules/tailwind-classes.d.ts +52 -0
- package/src/lib/design/system/rules/tailwind-classes.js +237 -0
- package/src/lib/design/system/rules/tailwind-classes.js.map +1 -0
- package/src/lib/design/system/rules/token-selectors.js +10 -3
- package/src/lib/design/system/rules/token-selectors.js.map +1 -1
- package/src/lib/design/system/rules/top-level-await.d.ts +9 -0
- package/src/lib/design/system/rules/top-level-await.js +62 -0
- package/src/lib/design/system/rules/top-level-await.js.map +1 -0
- package/src/lib/design/system/rules/unbound-input-known.d.ts +7 -0
- package/src/lib/design/system/rules/unbound-input-known.js +44 -0
- package/src/lib/design/system/rules/unbound-input-known.js.map +1 -0
- package/src/lib/design/system/rules/unbound-input.d.ts +24 -0
- package/src/lib/design/system/rules/unbound-input.js +67 -0
- package/src/lib/design/system/rules/unbound-input.js.map +1 -0
- package/src/lib/design/system/rules/uncovered-region.d.ts +13 -0
- package/src/lib/design/system/rules/uncovered-region.js +36 -0
- package/src/lib/design/system/rules/uncovered-region.js.map +1 -0
- package/src/lib/design/system/rules/undefined-class.d.ts +9 -0
- package/src/lib/design/system/rules/undefined-class.js +41 -0
- package/src/lib/design/system/rules/undefined-class.js.map +1 -0
- package/src/lib/design/system/rules/undefined-token.d.ts +1 -1
- package/src/lib/design/system/rules/undefined-token.js +7 -61
- package/src/lib/design/system/rules/undefined-token.js.map +1 -1
- package/src/lib/design/system/rules/utility-css.d.ts +2 -1
- package/src/lib/design/system/rules/utility-css.js +40 -13
- package/src/lib/design/system/rules/utility-css.js.map +1 -1
- package/src/lib/design/system/rules/view-coverage.d.ts +8 -0
- package/src/lib/design/system/rules/view-coverage.js +51 -0
- package/src/lib/design/system/rules/view-coverage.js.map +1 -0
- package/src/lib/design/system/rules/visible-change.d.ts +19 -0
- package/src/lib/design/system/rules/visible-change.js +48 -0
- package/src/lib/design/system/rules/visible-change.js.map +1 -0
- package/src/lib/design/system/sdk-declarations.d.ts +10 -0
- package/src/lib/design/system/sdk-declarations.js +177 -0
- package/src/lib/design/system/sdk-declarations.js.map +1 -0
- package/src/lib/design/system/sdk-errors.d.ts +14 -0
- package/src/lib/design/system/sdk-errors.js +38 -0
- package/src/lib/design/system/sdk-errors.js.map +1 -0
- package/src/lib/design/system/sdk-selectors.d.ts +18 -0
- package/src/lib/design/system/sdk-selectors.js +131 -0
- package/src/lib/design/system/sdk-selectors.js.map +1 -0
- package/src/lib/design/system/see-through.d.ts +12 -0
- package/src/lib/design/system/see-through.js +112 -0
- package/src/lib/design/system/see-through.js.map +1 -0
- package/src/lib/design/system/served-cache.d.ts +99 -0
- package/src/lib/design/system/served-cache.js +202 -0
- package/src/lib/design/system/served-cache.js.map +1 -0
- package/src/lib/design/system/settled-panes.d.ts +23 -0
- package/src/lib/design/system/settled-panes.js +71 -0
- package/src/lib/design/system/settled-panes.js.map +1 -0
- package/src/lib/design/system/sketch/after-merge.d.ts +11 -0
- package/src/lib/design/system/sketch/after-merge.js +51 -0
- package/src/lib/design/system/sketch/after-merge.js.map +1 -0
- package/src/lib/design/system/sketch/aktuell-placeholders.d.ts +30 -0
- package/src/lib/design/system/sketch/aktuell-placeholders.js +87 -0
- package/src/lib/design/system/sketch/aktuell-placeholders.js.map +1 -0
- package/src/lib/design/system/sketch/baseline.d.ts +36 -2
- package/src/lib/design/system/sketch/baseline.js +76 -13
- package/src/lib/design/system/sketch/baseline.js.map +1 -1
- package/src/lib/design/system/sketch/check-format.js +3 -9
- package/src/lib/design/system/sketch/check-format.js.map +1 -1
- package/src/lib/design/system/sketch/check-sketches.d.ts +10 -0
- package/src/lib/design/system/sketch/check-sketches.js +50 -4
- package/src/lib/design/system/sketch/check-sketches.js.map +1 -1
- package/src/lib/design/system/sketch/clean-copy.d.ts +18 -0
- package/src/lib/design/system/sketch/clean-copy.js +104 -0
- package/src/lib/design/system/sketch/clean-copy.js.map +1 -0
- package/src/lib/design/system/sketch/cli-args.d.ts +13 -3
- package/src/lib/design/system/sketch/cli-args.js +20 -5
- package/src/lib/design/system/sketch/cli-args.js.map +1 -1
- package/src/lib/design/system/sketch/covered-diffs.d.ts +40 -0
- package/src/lib/design/system/sketch/covered-diffs.js +106 -0
- package/src/lib/design/system/sketch/covered-diffs.js.map +1 -0
- package/src/lib/design/system/sketch/edit-sketch.d.ts +29 -0
- package/src/lib/design/system/sketch/edit-sketch.js +169 -0
- package/src/lib/design/system/sketch/edit-sketch.js.map +1 -0
- package/src/lib/design/system/sketch/frame-budget.d.ts +24 -0
- package/src/lib/design/system/sketch/frame-budget.js +23 -0
- package/src/lib/design/system/sketch/frame-budget.js.map +1 -0
- package/src/lib/design/system/sketch/identical-renders.d.ts +31 -0
- package/src/lib/design/system/sketch/identical-renders.js +143 -0
- package/src/lib/design/system/sketch/identical-renders.js.map +1 -0
- package/src/lib/design/system/sketch/merge-commit.d.ts +20 -0
- package/src/lib/design/system/sketch/merge-commit.js +72 -0
- package/src/lib/design/system/sketch/merge-commit.js.map +1 -0
- package/src/lib/design/system/sketch/merge-runner.d.ts +20 -0
- package/src/lib/design/system/sketch/merge-runner.js +73 -0
- package/src/lib/design/system/sketch/merge-runner.js.map +1 -0
- package/src/lib/design/system/sketch/merge-shared.d.ts +2 -0
- package/src/lib/design/system/sketch/merge-shared.js +7 -10
- package/src/lib/design/system/sketch/merge-shared.js.map +1 -1
- package/src/lib/design/system/sketch/merge-step.d.ts +47 -0
- package/src/lib/design/system/sketch/merge-step.js +110 -0
- package/src/lib/design/system/sketch/merge-step.js.map +1 -0
- package/src/lib/design/system/sketch/merge-worker.d.ts +1 -0
- package/src/lib/design/system/sketch/merge-worker.js +14 -0
- package/src/lib/design/system/sketch/merge-worker.js.map +1 -0
- package/src/lib/design/system/sketch/merge.d.ts +19 -5
- package/src/lib/design/system/sketch/merge.js +245 -82
- package/src/lib/design/system/sketch/merge.js.map +1 -1
- package/src/lib/design/system/sketch/merged-layout.d.ts +17 -0
- package/src/lib/design/system/sketch/merged-layout.js +57 -0
- package/src/lib/design/system/sketch/merged-layout.js.map +1 -0
- package/src/lib/design/system/sketch/merged-parts.d.ts +31 -30
- package/src/lib/design/system/sketch/merged-parts.js +99 -84
- package/src/lib/design/system/sketch/merged-parts.js.map +1 -1
- package/src/lib/design/system/sketch/no-visible-change.d.ts +10 -0
- package/src/lib/design/system/sketch/no-visible-change.js +16 -6
- package/src/lib/design/system/sketch/no-visible-change.js.map +1 -1
- package/src/lib/design/system/sketch/note-language.d.ts +7 -0
- package/src/lib/design/system/sketch/note-language.js +83 -0
- package/src/lib/design/system/sketch/note-language.js.map +1 -0
- package/src/lib/design/system/sketch/part-definition.d.ts +27 -1
- package/src/lib/design/system/sketch/part-definition.js +109 -17
- package/src/lib/design/system/sketch/part-definition.js.map +1 -1
- package/src/lib/design/system/sketch/rebase-port.d.ts +24 -0
- package/src/lib/design/system/sketch/rebase-port.js +215 -0
- package/src/lib/design/system/sketch/rebase-port.js.map +1 -0
- package/src/lib/design/system/sketch/sample-mark-drift.d.ts +33 -0
- package/src/lib/design/system/sketch/sample-mark-drift.js +88 -0
- package/src/lib/design/system/sketch/sample-mark-drift.js.map +1 -0
- package/src/lib/design/system/sketch/sketch-check-cache.d.ts +11 -0
- package/src/lib/design/system/sketch/sketch-check-cache.js +22 -0
- package/src/lib/design/system/sketch/sketch-check-cache.js.map +1 -0
- package/src/lib/design/system/sketch/sketch-check-worker.d.ts +1 -0
- package/src/lib/design/system/sketch/sketch-check-worker.js +32 -0
- package/src/lib/design/system/sketch/sketch-check-worker.js.map +1 -0
- package/src/lib/design/system/sketch/sketch-checker.d.ts +40 -0
- package/src/lib/design/system/sketch/sketch-checker.js +109 -0
- package/src/lib/design/system/sketch/sketch-checker.js.map +1 -0
- package/src/lib/design/system/sketch/sketch.d.ts +100 -8
- package/src/lib/design/system/sketch/sketch.js +279 -36
- package/src/lib/design/system/sketch/sketch.js.map +1 -1
- package/src/lib/design/system/sketch/stale-base.d.ts +22 -0
- package/src/lib/design/system/sketch/stale-base.js +56 -0
- package/src/lib/design/system/sketch/stale-base.js.map +1 -0
- package/src/lib/design/system/sketch/unchanged-states.d.ts +39 -3
- package/src/lib/design/system/sketch/unchanged-states.js +75 -23
- package/src/lib/design/system/sketch/unchanged-states.js.map +1 -1
- package/src/lib/design/system/sketch/unused-closure.js +16 -4
- package/src/lib/design/system/sketch/unused-closure.js.map +1 -1
- package/src/lib/design/system/sketch/viewed-shots.d.ts +32 -0
- package/src/lib/design/system/sketch/viewed-shots.js +54 -0
- package/src/lib/design/system/sketch/viewed-shots.js.map +1 -0
- package/src/lib/design/system/skip-classes.d.ts +3 -0
- package/src/lib/design/system/skip-classes.js +17 -0
- package/src/lib/design/system/skip-classes.js.map +1 -0
- package/src/lib/design/system/slot-hosts.d.ts +38 -0
- package/src/lib/design/system/slot-hosts.js +93 -0
- package/src/lib/design/system/slot-hosts.js.map +1 -0
- package/src/lib/design/system/slow-checks.d.ts +44 -0
- package/src/lib/design/system/slow-checks.js +250 -0
- package/src/lib/design/system/slow-checks.js.map +1 -0
- package/src/lib/design/system/slow-run.d.ts +67 -0
- package/src/lib/design/system/slow-run.js +312 -0
- package/src/lib/design/system/slow-run.js.map +1 -0
- package/src/lib/design/system/stale-design-mocks.d.ts +20 -0
- package/src/lib/design/system/stale-design-mocks.js +59 -0
- package/src/lib/design/system/stale-design-mocks.js.map +1 -0
- package/src/lib/design/system/stale-dist.d.ts +61 -0
- package/src/lib/design/system/stale-dist.js +141 -0
- package/src/lib/design/system/stale-dist.js.map +1 -0
- package/src/lib/design/system/stale-parts.d.ts +45 -0
- package/src/lib/design/system/stale-parts.js +168 -0
- package/src/lib/design/system/stale-parts.js.map +1 -0
- package/src/lib/design/system/surface-nesting.d.ts +11 -0
- package/src/lib/design/system/surface-nesting.js +86 -0
- package/src/lib/design/system/surface-nesting.js.map +1 -0
- package/src/lib/design/system/system-command.js +11 -9
- package/src/lib/design/system/system-command.js.map +1 -1
- package/src/lib/design/system/system-modules.d.ts +17 -2
- package/src/lib/design/system/system-modules.js +18 -2
- package/src/lib/design/system/system-modules.js.map +1 -1
- package/src/lib/design/system/system-tsconfig.d.ts +9 -2
- package/src/lib/design/system/system-tsconfig.js +73 -13
- package/src/lib/design/system/system-tsconfig.js.map +1 -1
- package/src/lib/design/system/task-command.d.ts +52 -0
- package/src/lib/design/system/task-command.js +271 -0
- package/src/lib/design/system/task-command.js.map +1 -0
- package/src/lib/design/system/theming-text.d.ts +2 -0
- package/src/lib/design/system/theming-text.js +6 -0
- package/src/lib/design/system/theming-text.js.map +1 -0
- package/src/lib/design/system/touched-parts.d.ts +16 -0
- package/src/lib/design/system/touched-parts.js +121 -0
- package/src/lib/design/system/touched-parts.js.map +1 -0
- package/src/lib/design/system/tracked-reads.d.ts +27 -0
- package/src/lib/design/system/tracked-reads.js +100 -0
- package/src/lib/design/system/tracked-reads.js.map +1 -0
- package/src/lib/design/system/ts-source.d.ts +2 -0
- package/src/lib/design/system/ts-source.js +15 -1
- package/src/lib/design/system/ts-source.js.map +1 -1
- package/src/lib/design/system/unchanged-rows.d.ts +24 -0
- package/src/lib/design/system/unchanged-rows.js +212 -0
- package/src/lib/design/system/unchanged-rows.js.map +1 -0
- package/src/lib/design/system/uncommitted-decisions.d.ts +4 -0
- package/src/lib/design/system/uncommitted-decisions.js +35 -0
- package/src/lib/design/system/uncommitted-decisions.js.map +1 -0
- package/src/lib/design/system/uncovered-regions.d.ts +61 -0
- package/src/lib/design/system/uncovered-regions.js +171 -0
- package/src/lib/design/system/uncovered-regions.js.map +1 -0
- package/src/lib/design/system/unused-base-parts.d.ts +7 -0
- package/src/lib/design/system/unused-base-parts.js +76 -0
- package/src/lib/design/system/unused-base-parts.js.map +1 -0
- package/src/lib/design/system/visible-change-command.d.ts +60 -0
- package/src/lib/design/system/visible-change-command.js +310 -0
- package/src/lib/design/system/visible-change-command.js.map +1 -0
- package/src/lib/design/system/visible-change-parts.d.ts +28 -0
- package/src/lib/design/system/visible-change-parts.js +96 -0
- package/src/lib/design/system/visible-change-parts.js.map +1 -0
- package/src/lib/design/system/visible-change.d.ts +82 -0
- package/src/lib/design/system/visible-change.js +149 -0
- package/src/lib/design/system/visible-change.js.map +1 -0
- package/src/lib/design/system/write-origin.d.ts +12 -0
- package/src/lib/design/system/write-origin.js +18 -0
- package/src/lib/design/system/write-origin.js.map +1 -0
- package/src/lib/design/system-use.js +4 -4
- package/src/lib/design/system-use.js.map +1 -1
- package/src/lib/design/thumb.d.ts +37 -4
- package/src/lib/design/thumb.js +118 -21
- package/src/lib/design/thumb.js.map +1 -1
- package/src/lib/design/timings-command.d.ts +22 -0
- package/src/lib/design/timings-command.js +175 -0
- package/src/lib/design/timings-command.js.map +1 -0
- package/src/lib/design/timings.d.ts +117 -0
- package/src/lib/design/timings.js +296 -0
- package/src/lib/design/timings.js.map +1 -0
- package/src/lib/design/typecheck.d.ts +1 -1
- package/src/lib/design/typecheck.js +5 -5
- package/src/lib/design/typecheck.js.map +1 -1
- package/src/lib/design/unstable-cells.d.ts +23 -0
- package/src/lib/design/unstable-cells.js +40 -0
- package/src/lib/design/unstable-cells.js.map +1 -0
- package/src/lib/design/variant-diff.js +1 -1
- package/src/lib/design/variant-diff.js.map +1 -1
- package/src/lib/design/vite-cache.d.ts +11 -0
- package/src/lib/design/vite-cache.js +61 -0
- package/src/lib/design/vite-cache.js.map +1 -0
- package/src/lib/design/wait.d.ts +15 -0
- package/src/lib/design/wait.js +30 -0
- package/src/lib/design/wait.js.map +1 -0
- package/src/lib/design/warm-draw.d.ts +33 -0
- package/src/lib/design/warm-draw.js +74 -0
- package/src/lib/design/warm-draw.js.map +1 -0
- package/src/lib/design/warm-pages.d.ts +10 -2
- package/src/lib/design/warm-pages.js +6 -2
- package/src/lib/design/warm-pages.js.map +1 -1
- package/src/lib/design/work-root.d.ts +2 -0
- package/src/lib/design/work-root.js +8 -0
- package/src/lib/design/work-root.js.map +1 -0
- package/src/lib/json-file.d.ts +11 -0
- package/src/lib/json-file.js +21 -0
- package/src/lib/json-file.js.map +1 -0
- package/src/lib/plain-output.d.ts +27 -0
- package/src/lib/plain-output.js +66 -0
- package/src/lib/plain-output.js.map +1 -0
- package/src/lib/release.js +11 -3
- package/src/lib/release.js.map +1 -1
- package/src/lib/source-hash.d.ts +7 -0
- package/src/lib/source-hash.js +62 -0
- package/src/lib/source-hash.js.map +1 -0
- package/src/lib/update/agent-setup.js +2 -1
- package/src/lib/update/agent-setup.js.map +1 -1
- package/src/lib/update/commits.js +2 -2
- package/src/lib/update/commits.js.map +1 -1
- package/src/lib/update/migration-manifest.d.ts +12 -0
- package/src/lib/update/migration-manifest.js +13 -0
- package/src/lib/update/migration-manifest.js.map +1 -1
- package/src/lib/update/migration-record.js +2 -1
- package/src/lib/update/migration-record.js.map +1 -1
- package/src/lib/update/packages.js +4 -2
- package/src/lib/update/packages.js.map +1 -1
- package/src/lib/update/pending.js +2 -1
- package/src/lib/update/pending.js.map +1 -1
- package/src/lib/update/run-migrations.d.ts +3 -2
- package/src/lib/update/run-migrations.js +38 -5
- package/src/lib/update/run-migrations.js.map +1 -1
- package/src/lib/update/scan.js +8 -2
- package/src/lib/update/scan.js.map +1 -1
- package/src/lib/update/tasks.js +2 -1
- package/src/lib/update/tasks.js.map +1 -1
- package/src/lib/design/paths.js +0 -138
- package/src/lib/design/paths.js.map +0 -1
- package/src/lib/design/system/accept-command.d.ts +0 -7
- package/src/lib/design/system/accept-command.js +0 -55
- package/src/lib/design/system/accept-command.js.map +0 -1
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
12
|
var t = {};
|
|
4
13
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -11,9 +20,12 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
11
20
|
return t;
|
|
12
21
|
};
|
|
13
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.
|
|
23
|
+
exports.addVariant = exports.rebaseSketch = exports.decideSketch = exports.withdrawVariant = exports.releaseSketch = exports.holdSketch = exports.heldProblemOf = exports.reopenChangedReady = exports.variantContentHashOf = exports.markSketchReady = exports.finishSketchReport = exports.clearSketchReport = exports.readSketchReport = exports.reportSketch = exports.sketchReportPath = exports.withAuthor = exports.removeTarget = exports.addTarget = exports.createSketch = exports.sketchSourceOf = exports.writeSketchFile = exports.findSketch = exports.listSketchesInTurns = exports.listSketches = exports.readSketch = exports.authorsOf = exports.rejectedProblemOf = exports.rejectionOf = exports.runningRoundOf = exports.removeSketchDir = exports.isVariantName = exports.sketchIdOfName = exports.parseTarget = exports.rewriteSharedImports = exports.rebaseOutsideImports = exports.relativeSpecifierOf = exports.withSharedImports = exports.sourceFilesIn = exports.SOURCE_FILE = exports.variantSharedDirOf = exports.sharedDirOf = exports.SHARED_FOLDER = exports.variantDirOf = exports.sketchDirOf = exports.sketchIdOf = exports.sketchFolderOf = exports.sketchesDirOf = exports.SKETCH_FILE = exports.SKETCH_MERGES = exports.SKETCH_STATUSES = void 0;
|
|
24
|
+
exports.editRound = exports.editVariantNote = void 0;
|
|
25
|
+
const crypto_1 = require("crypto");
|
|
15
26
|
const fs_1 = require("fs");
|
|
16
27
|
const path_1 = require("path");
|
|
28
|
+
const promises_1 = require("timers/promises");
|
|
17
29
|
const json_layout_1 = require("../../json-layout");
|
|
18
30
|
const status_1 = require("../../status");
|
|
19
31
|
const assets_1 = require("../assets");
|
|
@@ -23,6 +35,7 @@ const base_1 = require("../base");
|
|
|
23
35
|
const layers_1 = require("../layers");
|
|
24
36
|
const resolve_product_1 = require("../resolve-product");
|
|
25
37
|
const baseline_1 = require("./baseline");
|
|
38
|
+
const write_origin_1 = require("../write-origin");
|
|
26
39
|
const part_definition_1 = require("./part-definition");
|
|
27
40
|
exports.SKETCH_STATUSES = ['in progress', 'ready'];
|
|
28
41
|
exports.SKETCH_MERGES = ['override', 'into-base'];
|
|
@@ -30,8 +43,10 @@ const NAME = /^[a-z0-9][a-z0-9-]*$/u;
|
|
|
30
43
|
exports.SKETCH_FILE = 'sketch.json';
|
|
31
44
|
const sketchesDirOf = (productDir) => (0, path_1.resolve)(productDir, 'sketches');
|
|
32
45
|
exports.sketchesDirOf = sketchesDirOf;
|
|
33
|
-
const sketchFolderOf = (target) => `${target.layer}-${target.name}`;
|
|
46
|
+
const sketchFolderOf = (target) => `${target.layer}-${target.name}${target.sketch ? `.${target.sketch}` : ''}`;
|
|
34
47
|
exports.sketchFolderOf = sketchFolderOf;
|
|
48
|
+
const sketchIdOf = (target) => `${(0, resolve_product_1.partKeyOf)(target)}${target.sketch ? `@${target.sketch}` : ''}`;
|
|
49
|
+
exports.sketchIdOf = sketchIdOf;
|
|
35
50
|
const sketchDirOf = (options) => (0, path_1.resolve)((0, exports.sketchesDirOf)(options.productDir), (0, exports.sketchFolderOf)(options.sketch));
|
|
36
51
|
exports.sketchDirOf = sketchDirOf;
|
|
37
52
|
const variantDirOf = (sketch, variant) => (0, path_1.resolve)(sketch.dir, variant);
|
|
@@ -41,29 +56,72 @@ exports.sharedDirOf = sharedDirOf;
|
|
|
41
56
|
/** A variant's own `shared/` folder: a file there wins over the sketch's `shared/` file of the same path. */
|
|
42
57
|
const variantSharedDirOf = (sketch, variant) => (0, path_1.resolve)((0, exports.variantDirOf)(sketch, variant), imports_1.SHARED_FOLDER);
|
|
43
58
|
exports.variantSharedDirOf = variantSharedDirOf;
|
|
44
|
-
|
|
59
|
+
exports.SOURCE_FILE = /\.(?:ts|js|mjs)$/u;
|
|
45
60
|
const sourceFilesIn = (dir) => (0, fs_1.existsSync)(dir)
|
|
46
61
|
? (0, fs_1.readdirSync)(dir, { recursive: true })
|
|
47
|
-
.filter((path) =>
|
|
62
|
+
.filter((path) => exports.SOURCE_FILE.test(path))
|
|
48
63
|
.map((path) => (0, path_1.resolve)(dir, path))
|
|
49
64
|
: [];
|
|
50
65
|
exports.sourceFilesIn = sourceFilesIn;
|
|
51
|
-
|
|
52
|
-
|
|
66
|
+
/** `source`, the file `file` of the part in `partDir`, with its relative imports of the part's own `shared/` folder as `@shared/`. */
|
|
67
|
+
const withSharedImports = (options) => {
|
|
68
|
+
const { source, file, partDir } = options;
|
|
53
69
|
const shared = (0, path_1.resolve)(partDir, imports_1.SHARED_FOLDER);
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
70
|
+
return source.replace(/(['"])(\.{1,2}\/[^'"]+)\1/gu, (...[match = '', quote = '', specifier = '']) => {
|
|
71
|
+
const path = (0, path_1.relative)(shared, (0, path_1.resolve)((0, path_1.dirname)(file), specifier));
|
|
72
|
+
return path.startsWith('..') || (0, path_1.isAbsolute)(path)
|
|
73
|
+
? match
|
|
74
|
+
: `${quote}${imports_1.SHARED_PREFIX}${path.split(path_1.sep).join('/')}${quote}`;
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
exports.withSharedImports = withSharedImports;
|
|
78
|
+
const insideOf = (dir, path) => {
|
|
79
|
+
const rest = (0, path_1.relative)(dir, path);
|
|
80
|
+
return !rest.startsWith('..') && !(0, path_1.isAbsolute)(rest);
|
|
81
|
+
};
|
|
82
|
+
const relativeSpecifierOf = (options) => {
|
|
83
|
+
const path = (0, path_1.relative)((0, path_1.dirname)(options.from), options.to).split(path_1.sep).join('/');
|
|
84
|
+
return path.startsWith('.') ? path : `./${path}`;
|
|
85
|
+
};
|
|
86
|
+
exports.relativeSpecifierOf = relativeSpecifierOf;
|
|
87
|
+
/**
|
|
88
|
+
* Rewrites the relative imports of the files in `dir`, a copy of the folder `from`, that leave `from` - and `within`,
|
|
89
|
+
* when given - so they reach the same files from `dir`.
|
|
90
|
+
*/
|
|
91
|
+
const rebaseOutsideImports = (options) => {
|
|
92
|
+
const { dir, from, within, settledIn, skip } = options;
|
|
93
|
+
for (const file of (0, exports.sourceFilesIn)(dir)) {
|
|
94
|
+
if (skip !== undefined && insideOf((0, path_1.resolve)(dir, skip), file))
|
|
95
|
+
continue;
|
|
96
|
+
const original = (0, path_1.resolve)(from, (0, path_1.relative)(dir, file));
|
|
57
97
|
const source = (0, fs_1.readFileSync)(file, 'utf8');
|
|
58
98
|
const rewritten = source.replace(/(['"])(\.{1,2}\/[^'"]+)\1/gu, (...[match = '', quote = '', specifier = '']) => {
|
|
59
|
-
const path = (0, path_1.
|
|
60
|
-
return path
|
|
99
|
+
const path = (0, path_1.resolve)((0, path_1.dirname)(original), specifier);
|
|
100
|
+
return insideOf(from, path) || (within !== undefined && insideOf(within, path))
|
|
61
101
|
? match
|
|
62
|
-
: `${quote}${
|
|
102
|
+
: `${quote}${(0, exports.relativeSpecifierOf)({ from: settledIn ? (0, path_1.resolve)(settledIn, (0, path_1.relative)(dir, file)) : file, to: path })}${quote}`;
|
|
63
103
|
});
|
|
64
104
|
if (rewritten !== source)
|
|
65
105
|
(0, fs_1.writeFileSync)(file, rewritten);
|
|
66
106
|
}
|
|
107
|
+
};
|
|
108
|
+
exports.rebaseOutsideImports = rebaseOutsideImports;
|
|
109
|
+
/** Rewrites the relative imports of the part's own `shared/` folder in its files to `@shared/`. */
|
|
110
|
+
const rewriteSharedImports = (partDir) => {
|
|
111
|
+
for (const file of (0, exports.sourceFilesIn)(partDir)) {
|
|
112
|
+
const source = (0, fs_1.readFileSync)(file, 'utf8');
|
|
113
|
+
const rewritten = (0, exports.withSharedImports)({ source, file, partDir });
|
|
114
|
+
if (rewritten !== source)
|
|
115
|
+
(0, fs_1.writeFileSync)(file, rewritten);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
exports.rewriteSharedImports = rewriteSharedImports;
|
|
119
|
+
const liftShared = (options) => {
|
|
120
|
+
const { partDir, sketchSharedDir } = options;
|
|
121
|
+
const shared = (0, path_1.resolve)(partDir, imports_1.SHARED_FOLDER);
|
|
122
|
+
if (!(0, fs_1.existsSync)(shared))
|
|
123
|
+
return;
|
|
124
|
+
(0, exports.rewriteSharedImports)(partDir);
|
|
67
125
|
(0, fs_1.cpSync)(shared, sketchSharedDir, { recursive: true });
|
|
68
126
|
(0, fs_1.rmSync)(shared, { recursive: true });
|
|
69
127
|
};
|
|
@@ -86,12 +144,25 @@ const sharedClashOf = (parts) => {
|
|
|
86
144
|
};
|
|
87
145
|
/** Reads `<layer>/<name>` as a sketch target, or answers with why it is not one. */
|
|
88
146
|
const parseTarget = (value) => {
|
|
89
|
-
const [
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
147
|
+
const [asked = '', sketch, ...more] = (value !== null && value !== void 0 ? value : '').split('@');
|
|
148
|
+
const [layer = '', name = '', ...rest] = asked.split('/');
|
|
149
|
+
if (!(0, layers_1.isLayer)(layer) ||
|
|
150
|
+
!NAME.test(name) ||
|
|
151
|
+
rest.length > 0 ||
|
|
152
|
+
more.length > 0 ||
|
|
153
|
+
(sketch !== undefined && !NAME.test(sketch)))
|
|
154
|
+
return `"${value !== null && value !== void 0 ? value : ''}" is no target - pass <layer>/<name>[@<sketch name>], the layer one of foundations, components, elements, pages`;
|
|
155
|
+
return sketch === undefined ? { layer, name } : { layer, name, sketch };
|
|
93
156
|
};
|
|
94
157
|
exports.parseTarget = parseTarget;
|
|
158
|
+
/** Reads a sketch id (`<layer>/<name>[@<sketch>]`), `<layer>/<name>.<sketch>` or a sketch folder name (`<layer>-<name>[.<sketch>]`) as a sketch id, or `null` when it is none of them. */
|
|
159
|
+
const sketchIdOfName = (value) => {
|
|
160
|
+
const dotted = value.includes('/')
|
|
161
|
+
? value.replace(/\.([^./@]+)$/u, '@$1')
|
|
162
|
+
: value.replace(/^([^-/]+)-/u, '$1/').replace(/\.([^./@]+)$/u, '@$1');
|
|
163
|
+
return typeof (0, exports.parseTarget)(dotted) === 'string' ? null : dotted;
|
|
164
|
+
};
|
|
165
|
+
exports.sketchIdOfName = sketchIdOfName;
|
|
95
166
|
const isVariantName = (name) => NAME.test(name) && name !== imports_1.SHARED_FOLDER;
|
|
96
167
|
exports.isVariantName = isVariantName;
|
|
97
168
|
const foldersOf = (dir) => (0, fs_1.existsSync)(dir)
|
|
@@ -99,6 +170,18 @@ const foldersOf = (dir) => (0, fs_1.existsSync)(dir)
|
|
|
99
170
|
.filter((name) => { var _a; return (_a = (0, fs_1.statSync)((0, path_1.resolve)(dir, name), { throwIfNoEntry: false })) === null || _a === void 0 ? void 0 : _a.isDirectory(); })
|
|
100
171
|
.sort()
|
|
101
172
|
: [];
|
|
173
|
+
const GENERATED_FILE = 'tsconfig.json';
|
|
174
|
+
const holdsFiles = (dir) => (0, fs_1.readdirSync)(dir, { recursive: true, withFileTypes: true }).some((entry) => entry.isFile() && !(entry.name === GENERATED_FILE && (0, path_1.resolve)(entry.parentPath) === (0, path_1.resolve)(dir)));
|
|
175
|
+
const sketchFoldersOf = (productDir) => foldersOf((0, exports.sketchesDirOf)(productDir)).filter((folder) => holdsFiles((0, path_1.resolve)((0, exports.sketchesDirOf)(productDir), folder)));
|
|
176
|
+
const isOpenSketchDir = (dir) => (0, fs_1.existsSync)(dir) && holdsFiles(dir);
|
|
177
|
+
/** Deletes a sketch folder, then its `sketches/` folder when nothing else is left in it. */
|
|
178
|
+
const removeSketchDir = (dir) => {
|
|
179
|
+
(0, fs_1.rmSync)(dir, { recursive: true, force: true });
|
|
180
|
+
const parent = (0, path_1.resolve)(dir, '..');
|
|
181
|
+
if ((0, fs_1.existsSync)(parent) && (0, fs_1.readdirSync)(parent).length === 0)
|
|
182
|
+
(0, fs_1.rmSync)(parent, { recursive: true, force: true });
|
|
183
|
+
};
|
|
184
|
+
exports.removeSketchDir = removeSketchDir;
|
|
102
185
|
const isStatus = (value) => exports.SKETCH_STATUSES.includes(value);
|
|
103
186
|
const isAuthors = (value) => value === undefined || (Array.isArray(value) && value.every((author) => typeof author === 'string' && author !== ''));
|
|
104
187
|
const isVariantInfo = (value) => typeof value === 'object' &&
|
|
@@ -128,6 +211,8 @@ const isRejection = (value) => {
|
|
|
128
211
|
typeof rejection.decidedAt === 'string' &&
|
|
129
212
|
isOptionalText(rejection.reason) &&
|
|
130
213
|
(rejection.reasonBy === undefined || isVerdictBy(rejection.reasonBy)) &&
|
|
214
|
+
(rejection.status === undefined || rejection.status === 'withdrawn') &&
|
|
215
|
+
(rejection.withdrawnBy === undefined || typeof rejection.withdrawnBy === 'string') &&
|
|
131
216
|
(rejection.reopened === undefined || isReopening(rejection.reopened)));
|
|
132
217
|
};
|
|
133
218
|
const isRejections = (value) => typeof value === 'object' &&
|
|
@@ -154,6 +239,24 @@ const isHold = (value) => {
|
|
|
154
239
|
typeof hold.by === 'string' &&
|
|
155
240
|
typeof hold.heldAt === 'string');
|
|
156
241
|
};
|
|
242
|
+
const isStringList = (value) => Array.isArray(value) && value.every((entry) => typeof entry === 'string');
|
|
243
|
+
const isMergeHold = (value) => {
|
|
244
|
+
const hold = value;
|
|
245
|
+
return (typeof hold === 'object' &&
|
|
246
|
+
hold !== null &&
|
|
247
|
+
typeof hold.reason === 'string' &&
|
|
248
|
+
typeof hold.at === 'string' &&
|
|
249
|
+
(hold.dirty === undefined || isStringList(hold.dirty)));
|
|
250
|
+
};
|
|
251
|
+
const isPortMark = (value) => {
|
|
252
|
+
const mark = value;
|
|
253
|
+
return (typeof mark === 'object' &&
|
|
254
|
+
mark !== null &&
|
|
255
|
+
isStringList(mark.merged) &&
|
|
256
|
+
isStringList(mark.parts) &&
|
|
257
|
+
isStringList(mark.reasons) &&
|
|
258
|
+
typeof mark.at === 'string');
|
|
259
|
+
};
|
|
157
260
|
const FIRST_ROUND = 'r1';
|
|
158
261
|
const firstRoundOf = (title = '', note = '') => ({ key: FIRST_ROUND, title, note: note.trim() });
|
|
159
262
|
const nextRoundKeyOf = (rounds) => `r${Math.max(0, ...rounds.map((round) => { var _a, _b; return Number((_b = (_a = /^r(\d+)$/u.exec(round.key)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : 0); })) + 1}`;
|
|
@@ -207,7 +310,7 @@ const readSketch = (options) => {
|
|
|
207
310
|
if (parsed.variantInfo !== undefined && !isVariantInfo(parsed.variantInfo))
|
|
208
311
|
return `${file}: variantInfo must be { <variant>: { authors?: string[], round?: string, note?: string } }`;
|
|
209
312
|
if (parsed.rejections !== undefined && !isRejections(parsed.rejections))
|
|
210
|
-
return `${file}: rejections must be { <variant>: [{ by: designer | agent, decidedAt, reason?, reasonBy?, reopened?: { by, decidedAt, reason? } }] }, each but the last reopened`;
|
|
313
|
+
return `${file}: rejections must be { <variant>: [{ by: designer | agent, decidedAt, reason?, reasonBy?, status?: withdrawn, withdrawnBy?, reopened?: { by, decidedAt, reason? } }] }, each but the last reopened`;
|
|
211
314
|
if (parsed.rounds !== undefined && !isRounds(parsed.rounds))
|
|
212
315
|
return `${file}: rounds must be a non-empty list of { key, title, note } with unique keys`;
|
|
213
316
|
if (parsed.merge !== undefined && !exports.SKETCH_MERGES.includes(parsed.merge))
|
|
@@ -216,6 +319,17 @@ const readSketch = (options) => {
|
|
|
216
319
|
return `${file}: hold must be { until, by, heldAt }`;
|
|
217
320
|
if (parsed.hold !== undefined && parsed.status !== 'in progress')
|
|
218
321
|
return `${file}: a held sketch must be in progress`;
|
|
322
|
+
if (parsed.readyContent !== undefined &&
|
|
323
|
+
(!parsed.readyContent ||
|
|
324
|
+
typeof parsed.readyContent !== 'object' ||
|
|
325
|
+
Object.values(parsed.readyContent).some((hash) => typeof hash !== 'string')))
|
|
326
|
+
return `${file}: readyContent must be { <variant>: <content hash> }`;
|
|
327
|
+
if (parsed.portAfterMerge !== undefined && !isPortMark(parsed.portAfterMerge))
|
|
328
|
+
return `${file}: portAfterMerge must be { merged: string[], parts: string[], reasons: string[], at }`;
|
|
329
|
+
if (parsed.mergeHold !== undefined && !isMergeHold(parsed.mergeHold))
|
|
330
|
+
return `${file}: mergeHold must be { reason, at }`;
|
|
331
|
+
if (parsed.covers !== undefined && !isStringList(parsed.covers))
|
|
332
|
+
return `${file}: covers must be a list of <state> or <state>@<x>,<y>,<w>,<h>`;
|
|
219
333
|
const rounds = (_b = parsed.rounds) !== null && _b !== void 0 ? _b : [firstRoundOf()];
|
|
220
334
|
const running = (0, exports.runningRoundOf)({ rounds }).key;
|
|
221
335
|
const variants = foldersOf(dir).filter((folder) => folder !== imports_1.SHARED_FOLDER);
|
|
@@ -233,20 +347,33 @@ const readSketch = (options) => {
|
|
|
233
347
|
};
|
|
234
348
|
exports.readSketch = readSketch;
|
|
235
349
|
/** Every sketch folder of a product, read; a folder that cannot be read answers with its problem. */
|
|
236
|
-
const listSketches = (options) =>
|
|
350
|
+
const listSketches = (options) => sketchFoldersOf(options.productDir).map((folder) => (0, exports.readSketch)({ product: options.product, dir: (0, path_1.resolve)((0, exports.sketchesDirOf)(options.productDir), folder) }));
|
|
237
351
|
exports.listSketches = listSketches;
|
|
352
|
+
/** `listSketches`, letting the server answer other requests before each sketch it reads. */
|
|
353
|
+
const listSketchesInTurns = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
354
|
+
const listed = [];
|
|
355
|
+
for (const folder of sketchFoldersOf(options.productDir)) {
|
|
356
|
+
yield (0, promises_1.setImmediate)();
|
|
357
|
+
listed.push((0, exports.readSketch)({ product: options.product, dir: (0, path_1.resolve)((0, exports.sketchesDirOf)(options.productDir), folder) }));
|
|
358
|
+
}
|
|
359
|
+
return listed;
|
|
360
|
+
});
|
|
361
|
+
exports.listSketchesInTurns = listSketchesInTurns;
|
|
238
362
|
/** The open sketch that targets `sketch`, found by its first target or by any other it names; `null` when none does. */
|
|
239
363
|
const findSketch = (options) => {
|
|
240
364
|
var _a;
|
|
241
365
|
const dir = (0, exports.sketchDirOf)(options);
|
|
242
|
-
if ((
|
|
366
|
+
if (isOpenSketchDir(dir))
|
|
243
367
|
return (0, exports.readSketch)({ product: options.product, dir });
|
|
244
368
|
const key = (0, resolve_product_1.partKeyOf)(options.sketch);
|
|
245
|
-
return ((_a = (0, exports.listSketches)(options).find((sketch) => typeof sketch !== 'string' &&
|
|
369
|
+
return ((_a = (0, exports.listSketches)(options).find((sketch) => typeof sketch !== 'string' &&
|
|
370
|
+
sketch.targets.includes(key) &&
|
|
371
|
+
parseSketchName(sketch.target) === options.sketch.sketch)) !== null && _a !== void 0 ? _a : null);
|
|
246
372
|
};
|
|
247
373
|
exports.findSketch = findSketch;
|
|
374
|
+
const parseSketchName = (target) => target.split('@')[1];
|
|
248
375
|
const writeSketchFile = (sketch) => {
|
|
249
|
-
const file = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ target:
|
|
376
|
+
const file = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ target: sketch.target }, (sketch.targets.length > 1 ? { targets: sketch.targets } : {})), { status: sketch.status, createdAt: sketch.createdAt }), (sketch.baseline ? { baseline: sketch.baseline } : {})), (sketch.decision ? { decision: sketch.decision } : {})), { rounds: sketch.rounds }), (Object.keys(sketch.variantInfo).length > 0 ? { variantInfo: sketch.variantInfo } : {})), (sketch.rejections && Object.keys(sketch.rejections).length > 0 ? { rejections: sketch.rejections } : {})), (sketch.merge ? { merge: sketch.merge } : {})), (sketch.hold ? { hold: sketch.hold } : {})), (sketch.readyContent && sketch.status === 'ready' ? { readyContent: sketch.readyContent } : {})), (sketch.covers && sketch.covers.length > 0 ? { covers: sketch.covers } : {})), (sketch.portAfterMerge ? { portAfterMerge: sketch.portAfterMerge } : {})), (sketch.mergeHold && sketch.status === 'ready' ? { mergeHold: sketch.mergeHold } : {}));
|
|
250
377
|
(0, fs_1.writeFileSync)((0, path_1.resolve)(sketch.dir, exports.SKETCH_FILE), (0, json_layout_1.jsonLayoutOf)(file));
|
|
251
378
|
};
|
|
252
379
|
exports.writeSketchFile = writeSketchFile;
|
|
@@ -349,13 +476,24 @@ const seedTarget = (options) => {
|
|
|
349
476
|
const folder = (0, path_1.resolve)(dir, variant, target.layer, target.name);
|
|
350
477
|
const existing = product.parts.find((part) => (0, resolve_product_1.partKeyOf)(part) === (0, resolve_product_1.partKeyOf)(target));
|
|
351
478
|
(0, fs_1.mkdirSync)(folder, { recursive: true });
|
|
479
|
+
const seeded = (from) => {
|
|
480
|
+
const sketchSharedDir = (0, path_1.resolve)(dir, imports_1.SHARED_FOLDER);
|
|
481
|
+
(0, exports.rebaseOutsideImports)({ dir: folder, from, skip: imports_1.SHARED_FOLDER });
|
|
482
|
+
if ((0, fs_1.existsSync)((0, path_1.resolve)(folder, imports_1.SHARED_FOLDER)))
|
|
483
|
+
(0, exports.rebaseOutsideImports)({
|
|
484
|
+
dir: (0, path_1.resolve)(folder, imports_1.SHARED_FOLDER),
|
|
485
|
+
from: (0, path_1.resolve)(from, imports_1.SHARED_FOLDER),
|
|
486
|
+
settledIn: sketchSharedDir,
|
|
487
|
+
});
|
|
488
|
+
liftShared({ partDir: folder, sketchSharedDir });
|
|
489
|
+
};
|
|
352
490
|
if (like) {
|
|
353
491
|
copyPartAs({ from: like, to: folder, name: target.name });
|
|
354
|
-
|
|
492
|
+
seeded(like.folder);
|
|
355
493
|
}
|
|
356
494
|
else if (existing) {
|
|
357
495
|
(0, fs_1.cpSync)((0, path_1.resolve)(existing.file, '..'), folder, { recursive: true });
|
|
358
|
-
|
|
496
|
+
seeded((0, path_1.resolve)(existing.file, '..'));
|
|
359
497
|
}
|
|
360
498
|
else if (target.layer === 'pages') {
|
|
361
499
|
const widths = [...new Set(Object.values(product.presets).map((preset) => preset.width))].sort((a, b) => a - b);
|
|
@@ -366,28 +504,28 @@ const seedTarget = (options) => {
|
|
|
366
504
|
(0, fs_1.writeFileSync)((0, path_1.resolve)(folder, `${target.name}.css`), '');
|
|
367
505
|
}
|
|
368
506
|
};
|
|
507
|
+
const alreadySketched = (target) => `${target} already has an open sketch - merge or discard it first, or extract the region into a part and sketch that`;
|
|
369
508
|
/**
|
|
370
509
|
* Opens a sketch on a target, in progress, with one folder per variant, all in round 1 and with `author` as their
|
|
371
510
|
* author. Each variant starts from `like` when given - renamed to the target, without its `madeBy`, and with its
|
|
372
511
|
* sketch's `shared/` folder - else from the part the product resolves for the target, or from an empty part when the
|
|
373
512
|
* target is new. A part's own `shared/` folder becomes the sketch's, imported as `@shared/`. A target holds one open
|
|
374
|
-
* sketch at a time. Each of `others` joins every variant the same way, as a further target; `like` takes one target only.
|
|
513
|
+
* sketch at a time, or one per sketch name when `sketch.sketch` names it. Each of `others` joins every variant the same way, as a further target; `like` takes one target only.
|
|
375
514
|
* A target the product overrides in its base needs `merge`: `override` or `into-base`.
|
|
376
515
|
*/
|
|
377
516
|
const createSketch = (options) => {
|
|
378
517
|
var _a;
|
|
379
518
|
const { product, sketch, variants, roundTitle, roundNote, author, like, variantNotes, merge } = options;
|
|
380
519
|
const dir = (0, exports.sketchDirOf)({ productDir: product.dir, sketch });
|
|
381
|
-
const
|
|
382
|
-
const all = [sketch, ...((_a = options.others) !== null && _a !== void 0 ? _a : [])];
|
|
520
|
+
const all = [sketch, ...((_a = options.others) !== null && _a !== void 0 ? _a : []).map((other) => (Object.assign(Object.assign({}, other), { sketch: sketch.sketch })))];
|
|
383
521
|
const targets = all.map(resolve_product_1.partKeyOf);
|
|
384
522
|
if (new Set(targets).size !== targets.length)
|
|
385
523
|
return 'name each target once';
|
|
386
524
|
if (like && all.length > 1)
|
|
387
525
|
return '--like starts one target - open a sketch with several targets without it';
|
|
388
526
|
const taken = all.find((target) => (0, exports.findSketch)({ productDir: product.dir, product: product.name, sketch: target }) !== null);
|
|
389
|
-
if ((
|
|
390
|
-
return
|
|
527
|
+
if (isOpenSketchDir(dir) || taken)
|
|
528
|
+
return alreadySketched((0, exports.sketchIdOf)(taken !== null && taken !== void 0 ? taken : sketch));
|
|
391
529
|
if (variants.length === 0)
|
|
392
530
|
return 'name at least one variant';
|
|
393
531
|
const mergeProblem = mergeProblemOf({ product, targets, merge });
|
|
@@ -410,7 +548,7 @@ const createSketch = (options) => {
|
|
|
410
548
|
}
|
|
411
549
|
if (like === null || like === void 0 ? void 0 : like.shared)
|
|
412
550
|
(0, fs_1.cpSync)(like.shared, (0, path_1.resolve)(dir, imports_1.SHARED_FOLDER), { recursive: true });
|
|
413
|
-
const created = Object.assign({ target:
|
|
551
|
+
const created = Object.assign({ target: (0, exports.sketchIdOf)(sketch), targets, status: 'in progress', createdAt: new Date().toISOString(), baseline: (0, baseline_1.baselineOf)(product), rounds: [firstRoundOf(roundTitle, roundNote)], variantInfo: Object.fromEntries(variants.map((variant) => [
|
|
414
552
|
variant,
|
|
415
553
|
variantInfoOf({ round: FIRST_ROUND, author, note: variantNotes === null || variantNotes === void 0 ? void 0 : variantNotes.get(variant) }),
|
|
416
554
|
])), product: product.name, layer: sketch.layer, name: sketch.name, dir, variants: [...variants].sort() }, (merge ? { merge } : {}));
|
|
@@ -427,9 +565,16 @@ const addTarget = (options) => {
|
|
|
427
565
|
const key = (0, resolve_product_1.partKeyOf)(part);
|
|
428
566
|
if (sketch.targets.includes(key))
|
|
429
567
|
return `${sketch.target} targets ${key} already`;
|
|
430
|
-
const
|
|
568
|
+
const layerProblem = layerProblemOf({ sketch, part });
|
|
569
|
+
if (layerProblem)
|
|
570
|
+
return layerProblem;
|
|
571
|
+
const taken = (0, exports.findSketch)({
|
|
572
|
+
productDir: product.dir,
|
|
573
|
+
product: product.name,
|
|
574
|
+
sketch: Object.assign(Object.assign({}, part), { sketch: parseSketchName(sketch.target) }),
|
|
575
|
+
});
|
|
431
576
|
if (taken !== null)
|
|
432
|
-
return
|
|
577
|
+
return alreadySketched(key);
|
|
433
578
|
const mergeProblem = mergeProblemOf({ product, targets: [key], merge: sketch.merge });
|
|
434
579
|
if (mergeProblem)
|
|
435
580
|
return mergeProblem;
|
|
@@ -443,6 +588,34 @@ const addTarget = (options) => {
|
|
|
443
588
|
return added;
|
|
444
589
|
};
|
|
445
590
|
exports.addTarget = addTarget;
|
|
591
|
+
const layerProblemOf = (options) => {
|
|
592
|
+
const { sketch, part } = options;
|
|
593
|
+
const layers = sketch.targets.map((key) => { var _a; return (_a = key.split('/')[0]) !== null && _a !== void 0 ? _a : ''; }).filter(layers_1.isLayer);
|
|
594
|
+
if (!(0, layers_1.isLayer)(part.layer) ||
|
|
595
|
+
layers.some((layer) => (0, layers_1.mayUse)({ from: layer, to: part.layer }) || (0, layers_1.mayUse)({ from: part.layer, to: layer }))) {
|
|
596
|
+
return undefined;
|
|
597
|
+
}
|
|
598
|
+
const [first = part.layer] = layers;
|
|
599
|
+
return `${sketch.target} cannot target ${(0, resolve_product_1.partKeyOf)(part)} (UPWARD-DEPENDENCY): ${first} may use ${layers_1.LAYER_USES[first].join(', ')}, not ${part.layer}`;
|
|
600
|
+
};
|
|
601
|
+
/**
|
|
602
|
+
* Removes `part` from the targets of an open sketch and deletes its folder in every variant. The first target
|
|
603
|
+
* cannot be removed.
|
|
604
|
+
*/
|
|
605
|
+
const removeTarget = (options) => {
|
|
606
|
+
const { sketch, part } = options;
|
|
607
|
+
const key = (0, resolve_product_1.partKeyOf)(part);
|
|
608
|
+
if (!sketch.targets.includes(key))
|
|
609
|
+
return `${sketch.target} does not target ${key}`;
|
|
610
|
+
if (sketch.targets[0] === key)
|
|
611
|
+
return `${key} is the main target of ${sketch.target} - discard the sketch instead`;
|
|
612
|
+
for (const variant of sketch.variants)
|
|
613
|
+
(0, fs_1.rmSync)((0, path_1.resolve)(sketch.dir, variant, part.layer, part.name), { recursive: true, force: true });
|
|
614
|
+
const removed = Object.assign(Object.assign({}, sketch), { targets: sketch.targets.filter((target) => target !== key) });
|
|
615
|
+
(0, exports.writeSketchFile)(removed);
|
|
616
|
+
return removed;
|
|
617
|
+
};
|
|
618
|
+
exports.removeTarget = removeTarget;
|
|
446
619
|
const reportSlugOf = (sketch) => `sketches/${sketch.product}/${(0, exports.sketchFolderOf)(sketch)}`;
|
|
447
620
|
/** The sketch with `author` among the authors of `variant`; the same sketch when it is there already. */
|
|
448
621
|
const withAuthor = (options) => {
|
|
@@ -460,16 +633,19 @@ exports.sketchReportPath = sketchReportPath;
|
|
|
460
633
|
const REPORT_LIMIT = 400;
|
|
461
634
|
/**
|
|
462
635
|
* Records what an agent builds on a variant of a sketch right now ("phone, outline state"), for Studio to show,
|
|
463
|
-
* and adds the agent's model id to the variant's authors in `sketch.json` unless it is there already.
|
|
636
|
+
* and adds the agent's model id to the variant's authors in `sketch.json` unless it is there already. A ready sketch
|
|
637
|
+
* refuses a report unless `reopen` moves it back to in progress.
|
|
464
638
|
*/
|
|
465
639
|
const reportSketch = (options) => {
|
|
466
|
-
const { checkout, sketch, variant, author, message } = options;
|
|
640
|
+
const { checkout, sketch, variant, author, message, reopen } = options;
|
|
467
641
|
if (!sketch.variants.includes(variant))
|
|
468
642
|
return `${sketch.target} has no variant "${variant}" - it has ${sketch.variants.join(', ') || 'none'}`;
|
|
469
643
|
if (author.trim() === '')
|
|
470
644
|
return 'a report needs --by <model id>';
|
|
471
645
|
if (sketch.status === 'ready' && sketch.decision)
|
|
472
646
|
return `${sketch.target} is decided (${sketch.decision.kind}) - a report would reopen it, so nothing was recorded`;
|
|
647
|
+
if (sketch.status === 'ready' && !reopen)
|
|
648
|
+
return `${sketch.target} is ready - a report moves it back to in progress, so nothing was recorded; add --reopen if the user asked for a change`;
|
|
473
649
|
const open = sketch.status === 'ready' ? Object.assign(Object.assign({}, sketch), { status: 'in progress' }) : sketch;
|
|
474
650
|
const reported = (0, exports.withAuthor)({ sketch: open, variant, author });
|
|
475
651
|
if (reported !== sketch)
|
|
@@ -535,14 +711,51 @@ const markSketchReady = (options) => {
|
|
|
535
711
|
.filter((variant) => (0, exports.authorsOf)(sketch, variant).length === 0)
|
|
536
712
|
.reduce((current, variant) => (0, exports.withAuthor)({ sketch: current, variant, author }), sketch)
|
|
537
713
|
: sketch;
|
|
538
|
-
const ready = Object.assign(Object.assign({}, authored), { status: 'ready' });
|
|
714
|
+
const ready = Object.assign(Object.assign({}, authored), { status: 'ready', readyContent: readyContentOf(sketch) });
|
|
539
715
|
(0, exports.writeSketchFile)(ready);
|
|
540
716
|
(0, exports.clearSketchReport)({ checkout, sketch });
|
|
541
717
|
return ready;
|
|
542
718
|
};
|
|
543
719
|
exports.markSketchReady = markSketchReady;
|
|
720
|
+
const filesIn = (dir) => (0, fs_1.existsSync)(dir)
|
|
721
|
+
? (0, fs_1.readdirSync)(dir, { recursive: true })
|
|
722
|
+
.map((path) => (0, path_1.resolve)(dir, path))
|
|
723
|
+
.filter((file) => (0, fs_1.statSync)(file).isFile())
|
|
724
|
+
: [];
|
|
725
|
+
/** The content hash of every file a variant draws from: its folder and the `shared/` folder of the sketch. */
|
|
726
|
+
const variantContentHashOf = (sketch, variant) => {
|
|
727
|
+
const hash = (0, crypto_1.createHash)('sha256');
|
|
728
|
+
const files = [...filesIn((0, exports.variantDirOf)(sketch, variant)), ...filesIn((0, exports.sharedDirOf)(sketch))].sort();
|
|
729
|
+
for (const file of files)
|
|
730
|
+
hash
|
|
731
|
+
.update(`${(0, path_1.relative)(sketch.dir, file)}\0`)
|
|
732
|
+
.update((0, fs_1.readFileSync)(file))
|
|
733
|
+
.update('\0');
|
|
734
|
+
return hash.digest('hex').slice(0, 16);
|
|
735
|
+
};
|
|
736
|
+
exports.variantContentHashOf = variantContentHashOf;
|
|
737
|
+
const readyContentOf = (sketch) => Object.fromEntries(sketch.variants.map((variant) => [variant, (0, exports.variantContentHashOf)(sketch, variant)]));
|
|
738
|
+
/**
|
|
739
|
+
* Moves an undecided ready sketch back to in progress when a variant changed since `sketch ready` judged it, and
|
|
740
|
+
* answers the changed variants, or `null` when nothing changed or the sketch recorded no content.
|
|
741
|
+
*/
|
|
742
|
+
const reopenChangedReady = (sketch) => {
|
|
743
|
+
if (sketch.status !== 'ready' || sketch.decision || !sketch.readyContent)
|
|
744
|
+
return null;
|
|
745
|
+
const judged = sketch.readyContent;
|
|
746
|
+
const changed = sketch.variants.filter((variant) => judged[variant] !== (0, exports.variantContentHashOf)(sketch, variant));
|
|
747
|
+
if (changed.length === 0)
|
|
748
|
+
return null;
|
|
749
|
+
const { readyContent: _readyContent, mergeHold: _mergeHold } = sketch, rest = __rest(sketch, ["readyContent", "mergeHold"]);
|
|
750
|
+
const reopened = Object.assign(Object.assign({}, rest), { status: 'in progress' });
|
|
751
|
+
(0, exports.writeSketchFile)(reopened);
|
|
752
|
+
return { sketch: reopened, changed };
|
|
753
|
+
};
|
|
754
|
+
exports.reopenChangedReady = reopenChangedReady;
|
|
544
755
|
/** Why a held sketch cannot be ready, or `null` when it holds nothing. */
|
|
545
|
-
const heldProblemOf = (sketch) => sketch.hold
|
|
756
|
+
const heldProblemOf = (sketch) => sketch.hold
|
|
757
|
+
? `${sketch.target} is held until: ${sketch.hold.until} - make the change, then run \`et design sketch release ${sketch.target} --by <name>\``
|
|
758
|
+
: null;
|
|
546
759
|
exports.heldProblemOf = heldProblemOf;
|
|
547
760
|
/**
|
|
548
761
|
* Holds a sketch until a change that waits on something is made: it goes back to in progress, which drops a pick
|
|
@@ -599,6 +812,33 @@ const withVerdict = (sketch, verdict) => {
|
|
|
599
812
|
const { decision } = sketch, rest = __rest(sketch, ["decision"]);
|
|
600
813
|
return Object.assign(Object.assign(Object.assign({}, rest), (decision && !unpicked ? { decision } : {})), { rejections: Object.assign(Object.assign({}, sketch.rejections), { [variant]: next }) });
|
|
601
814
|
};
|
|
815
|
+
/**
|
|
816
|
+
* Takes a variant out of the open set as `withdrawn` by the agent `by`, with `reason`; refused when `by` did not draw
|
|
817
|
+
* the variant or it is rejected already. Writes sketch.json.
|
|
818
|
+
*/
|
|
819
|
+
const withdrawVariant = (options) => {
|
|
820
|
+
var _a, _b;
|
|
821
|
+
const { sketch, variant, by, reason } = options;
|
|
822
|
+
if (!sketch.variants.includes(variant))
|
|
823
|
+
return `${sketch.target} has no variant "${variant}" - it has ${sketch.variants.join(', ')}`;
|
|
824
|
+
if ((0, exports.rejectionOf)(sketch, variant))
|
|
825
|
+
return `${sketch.target} variant ${variant} is rejected or withdrawn already`;
|
|
826
|
+
if (!(0, exports.authorsOf)(sketch, variant).includes(by))
|
|
827
|
+
return `${sketch.target} variant ${variant} was not drawn by ${by}${drawerNote(sketch, variant)} - only its author withdraws it`;
|
|
828
|
+
const withdrawn = withVerdict(sketch, { kind: 'reject', variant, reason, by: 'agent' });
|
|
829
|
+
if (typeof withdrawn === 'string')
|
|
830
|
+
return withdrawn;
|
|
831
|
+
const history = (_b = (_a = withdrawn.rejections) === null || _a === void 0 ? void 0 : _a[variant]) !== null && _b !== void 0 ? _b : [];
|
|
832
|
+
const last = history[history.length - 1];
|
|
833
|
+
const marked = Object.assign(Object.assign({}, withdrawn), { rejections: Object.assign(Object.assign({}, withdrawn.rejections), { [variant]: [...history.slice(0, -1), Object.assign(Object.assign({}, last), { status: 'withdrawn', withdrawnBy: by })] }) });
|
|
834
|
+
(0, exports.writeSketchFile)(marked);
|
|
835
|
+
return marked;
|
|
836
|
+
};
|
|
837
|
+
exports.withdrawVariant = withdrawVariant;
|
|
838
|
+
const drawerNote = (sketch, variant) => {
|
|
839
|
+
const authors = (0, exports.authorsOf)(sketch, variant);
|
|
840
|
+
return authors.length > 0 ? ` (drawn by ${authors.join(', ')})` : '';
|
|
841
|
+
};
|
|
602
842
|
/**
|
|
603
843
|
* Records the user's pick or discard on a sketch, the decision Studio writes and the agent acts on, or a verdict on
|
|
604
844
|
* one variant. A rejected variant cannot be picked; rejecting the picked variant clears the pick.
|
|
@@ -611,6 +851,8 @@ const decideSketch = (options) => {
|
|
|
611
851
|
(0, exports.writeSketchFile)(judged);
|
|
612
852
|
return judged;
|
|
613
853
|
}
|
|
854
|
+
if (!(0, write_origin_1.hasActor)(decision))
|
|
855
|
+
return `${sketch.target}: a ${decision.kind} needs the actor that writes it (by)`;
|
|
614
856
|
if (decision.kind === 'pick') {
|
|
615
857
|
if (sketch.status !== 'ready')
|
|
616
858
|
return `${sketch.target} is ${sketch.status} - a variant is picked once it is ready`;
|
|
@@ -630,7 +872,8 @@ exports.decideSketch = decideSketch;
|
|
|
630
872
|
* up to date with the parts that changed in the product since the sketch was created.
|
|
631
873
|
*/
|
|
632
874
|
const rebaseSketch = (options) => {
|
|
633
|
-
const
|
|
875
|
+
const _a = options.sketch, { portAfterMerge: _ported } = _a, sketch = __rest(_a, ["portAfterMerge"]);
|
|
876
|
+
const rebased = Object.assign(Object.assign({}, sketch), { baseline: (0, baseline_1.baselineOf)(options.product) });
|
|
634
877
|
(0, exports.writeSketchFile)(rebased);
|
|
635
878
|
return rebased;
|
|
636
879
|
};
|