@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
package/src/lib/design/serve.js
CHANGED
|
@@ -9,14 +9,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.serveDesign = exports.createDesignServer = void 0;
|
|
12
|
+
exports.serveDesign = exports.createDesignServer = exports.installedRootsOf = exports.DELAY_FRAMES_ENV = exports.DESIGN_EVENTS_HEARTBEAT_MS = exports.sendHeldJson = exports.KEEP_ALIVE_MS = exports.registrySliceOf = void 0;
|
|
13
13
|
const crypto_1 = require("crypto");
|
|
14
14
|
const fs_1 = require("fs");
|
|
15
15
|
const net_1 = require("net");
|
|
16
16
|
const promises_1 = require("timers/promises");
|
|
17
17
|
const path_1 = require("path");
|
|
18
|
+
const rxjs_1 = require("rxjs");
|
|
18
19
|
const calls_1 = require("./calls");
|
|
19
20
|
const calls_tsconfig_1 = require("./calls-tsconfig");
|
|
21
|
+
const parent_watch_1 = require("./parent-watch");
|
|
20
22
|
const legacy_1 = require("./legacy");
|
|
21
23
|
const vite_paths_1 = require("./vite-paths");
|
|
22
24
|
const studio_api_1 = require("./studio-api");
|
|
@@ -29,27 +31,40 @@ const generated_stylesheets_1 = require("./generated-stylesheets");
|
|
|
29
31
|
const sketch_stylesheets_1 = require("./sketch-stylesheets");
|
|
30
32
|
const draw_ledger_1 = require("./draw-ledger");
|
|
31
33
|
const shot_1 = require("./shot");
|
|
34
|
+
const old_shot_folders_1 = require("./old-shot-folders");
|
|
32
35
|
const shot_store_1 = require("./shot-store");
|
|
33
36
|
const imports_1 = require("./system/imports");
|
|
37
|
+
const served_cache_1 = require("./system/served-cache");
|
|
34
38
|
const changed_parts_1 = require("./changed-parts");
|
|
39
|
+
const server_identity_1 = require("./server-identity");
|
|
35
40
|
const stamp_1 = require("./stamp");
|
|
41
|
+
const code_hash_1 = require("./code-hash");
|
|
36
42
|
const list_system_1 = require("./system/list-system");
|
|
43
|
+
const stale_dist_1 = require("./system/stale-dist");
|
|
44
|
+
const check_system_1 = require("./system/check-system");
|
|
37
45
|
const resolve_product_1 = require("./system/resolve-product");
|
|
38
46
|
const system_modules_1 = require("./system/system-modules");
|
|
39
47
|
const kit_1 = require("./system/kit");
|
|
40
48
|
const system_tsconfig_1 = require("./system/system-tsconfig");
|
|
41
49
|
const sketch_1 = require("./system/sketch/sketch");
|
|
50
|
+
const sketch_checker_1 = require("./system/sketch/sketch-checker");
|
|
42
51
|
const unchanged_states_1 = require("./system/sketch/unchanged-states");
|
|
43
52
|
const inventory_1 = require("./system/inventory");
|
|
53
|
+
const shot_board_1 = require("./shot-board");
|
|
44
54
|
const thumb_1 = require("./thumb");
|
|
45
55
|
const motion_endpoint_1 = require("./motion-endpoint");
|
|
46
|
-
const
|
|
56
|
+
const package_root_1 = require("./package-root");
|
|
57
|
+
const vite_cache_1 = require("./vite-cache");
|
|
58
|
+
const work_root_1 = require("./work-root");
|
|
59
|
+
const design_config_1 = require("./design-config");
|
|
60
|
+
const slow_run_1 = require("./system/slow-run");
|
|
61
|
+
const build_watch_1 = require("./build-watch");
|
|
47
62
|
const VIRTUAL = 'virtual:design-explore';
|
|
48
63
|
const REBUILD_SETTLE_MS = 300;
|
|
49
64
|
/** What a slug says about which project drew it: its first segment. */
|
|
50
65
|
const projectOf = (slug) => { var _a; return (_a = slug.split('/')[0]) !== null && _a !== void 0 ? _a : ''; };
|
|
51
66
|
const registry = (target) => {
|
|
52
|
-
const root = (0,
|
|
67
|
+
const root = (0, design_config_1.callsRootOf)(target);
|
|
53
68
|
const entries = (0, calls_1.callSlugsOf)(target).map((slug) => [slug, (0, vite_paths_1.fsUrl)((0, path_1.resolve)(root, slug, 'call.ts'))]);
|
|
54
69
|
return `export const calls = {\n${entries
|
|
55
70
|
.map(([slug, url]) => ` ${JSON.stringify(slug)}: () => import(${JSON.stringify(url)}),`)
|
|
@@ -184,10 +199,68 @@ const systemRegistry = (system) => `export const parts = {\n${system
|
|
|
184
199
|
.products()
|
|
185
200
|
.map((product) => ` ${JSON.stringify(product)}: {\n${sketchRegistry(system, product)}\n },`)
|
|
186
201
|
.join('\n')}\n};\n${tokensRegistry(system)}`;
|
|
202
|
+
/**
|
|
203
|
+
* The entries of the env and system modules that a frame with the search params `query` can read: its product's parts,
|
|
204
|
+
* tokens and stylesheets, and those of the sketch variants it names; a call frame's project stylesheets and themes.
|
|
205
|
+
*/
|
|
206
|
+
const registrySliceOf = (options) => {
|
|
207
|
+
var _a, _b, _c, _d, _e, _f;
|
|
208
|
+
const { target, config, system, query } = options;
|
|
209
|
+
const product = query.get('product');
|
|
210
|
+
if (!product) {
|
|
211
|
+
const project = projectOf((_a = query.get('call')) !== null && _a !== void 0 ? _a : '');
|
|
212
|
+
const entry = (_b = config.projects) === null || _b === void 0 ? void 0 : _b[project];
|
|
213
|
+
return `project ${JSON.stringify(project)}\n${entry ? stylesLoaderOf({ target, entry }) : 'none'}\n${themesOfSettings(entry ? { [project]: entry } : {})}\n`;
|
|
214
|
+
}
|
|
215
|
+
const entry = (_c = config.products) === null || _c === void 0 ? void 0 : _c[product];
|
|
216
|
+
const sketchOf = (part, variant) => part ? { target: part, variant: variant !== null && variant !== void 0 ? variant : '' } : null;
|
|
217
|
+
const sketch = sketchOf(query.get('sketch'), query.get('variant'));
|
|
218
|
+
const named = [sketch, sketchOf(query.get('props'), query.get('props-variant'))].filter((named) => named !== null);
|
|
219
|
+
const listed = system.sketchesOf(product);
|
|
220
|
+
const sketchStyles = sketch && entry && system.replacedStylesheetsOf({ product, sketch }).size > 0
|
|
221
|
+
? stylesLoaderOf({ target, entry, product, sketch })
|
|
222
|
+
: 'none';
|
|
223
|
+
return [
|
|
224
|
+
`product ${JSON.stringify(product)}`,
|
|
225
|
+
partsRegistry({ parts: (_e = (_d = system.productOf(product)) === null || _d === void 0 ? void 0 : _d.parts) !== null && _e !== void 0 ? _e : [], product, indent: '' }),
|
|
226
|
+
...named.map((variant) => { var _a, _b; return `sketch ${JSON.stringify(variant)} ${listed.some(({ target: part, variants }) => part === variant.target && variants.includes(variant.variant))}\n${partsRegistry({ parts: (_b = (_a = system.drawnOf(product, variant)) === null || _a === void 0 ? void 0 : _a.parts) !== null && _b !== void 0 ? _b : [], product, sketch: variant, indent: '' })}`; }),
|
|
227
|
+
`tokens ${(_f = tokensLoaderOf({ system, product, sketch: sketch !== null && sketch !== void 0 ? sketch : undefined })) !== null && _f !== void 0 ? _f : 'none'}`,
|
|
228
|
+
`styles ${entry ? stylesLoaderOf({ target, entry, product }) : 'none'} ${sketchStyles}`,
|
|
229
|
+
'',
|
|
230
|
+
].join('\n');
|
|
231
|
+
};
|
|
232
|
+
exports.registrySliceOf = registrySliceOf;
|
|
187
233
|
const sendJson = (response, answer) => {
|
|
188
234
|
response.setHeader('access-control-allow-origin', '*');
|
|
189
235
|
(0, thumb_1.send)(response, { status: answer.status, type: 'application/json', body: JSON.stringify(answer.body) });
|
|
190
236
|
};
|
|
237
|
+
exports.KEEP_ALIVE_MS = 15000;
|
|
238
|
+
/**
|
|
239
|
+
* Sends `answered` as JSON, and a space every `KEEP_ALIVE_MS` while it is pending: WebKit fails a fetch with "Load
|
|
240
|
+
* failed" when no byte arrives for 60 s. Once a space went out the status is 200, so a later failure arrives as its
|
|
241
|
+
* body alone.
|
|
242
|
+
*/
|
|
243
|
+
const sendHeldJson = (response, answered) => {
|
|
244
|
+
let started = false;
|
|
245
|
+
const tick = (0, rxjs_1.interval)(exports.KEEP_ALIVE_MS)
|
|
246
|
+
.pipe((0, rxjs_1.tap)(() => {
|
|
247
|
+
if (!started) {
|
|
248
|
+
started = true;
|
|
249
|
+
response.writeHead(200, { 'access-control-allow-origin': '*', 'content-type': 'application/json' });
|
|
250
|
+
}
|
|
251
|
+
response.write(' ');
|
|
252
|
+
}))
|
|
253
|
+
.subscribe();
|
|
254
|
+
response.once('close', () => tick.unsubscribe());
|
|
255
|
+
return answered.then((answer) => {
|
|
256
|
+
tick.unsubscribe();
|
|
257
|
+
if (started)
|
|
258
|
+
response.end(JSON.stringify(answer.body));
|
|
259
|
+
else
|
|
260
|
+
sendJson(response, answer);
|
|
261
|
+
});
|
|
262
|
+
};
|
|
263
|
+
exports.sendHeldJson = sendHeldJson;
|
|
191
264
|
const isCommentFile = (file) => file.endsWith('.json') && (0, path_1.basename)((0, path_1.dirname)(file)) === 'comments';
|
|
192
265
|
const isNoteFile = (file) => file.endsWith('.json') && (0, path_1.basename)((0, path_1.dirname)(file)) === 'notes';
|
|
193
266
|
const isFlowFile = (file) => file.endsWith('.json') && (0, path_1.basename)((0, path_1.dirname)(file)) === 'flows';
|
|
@@ -196,6 +269,15 @@ const isSketchFile = (designRoot, file) => {
|
|
|
196
269
|
const [product, folder, ...inside] = (0, path_1.relative)(designRoot, (0, path_1.resolve)(file)).split(path_1.sep);
|
|
197
270
|
return !!product && product !== '..' && folder === 'sketches' && inside.length > 0;
|
|
198
271
|
};
|
|
272
|
+
// Workaround: WebKit drops an event stream that sends nothing for 60 seconds.
|
|
273
|
+
exports.DESIGN_EVENTS_HEARTBEAT_MS = 20000;
|
|
274
|
+
/** Test tooling: when set to a whole number of ms, every `/frame.html` document waits that long before it is served. */
|
|
275
|
+
exports.DELAY_FRAMES_ENV = 'ETHLETE_DESIGN_DELAY_FRAMES_MS';
|
|
276
|
+
const frameDelayMsOf = () => {
|
|
277
|
+
var _a;
|
|
278
|
+
const ms = Number((_a = process.env[exports.DELAY_FRAMES_ENV]) !== null && _a !== void 0 ? _a : 0);
|
|
279
|
+
return Number.isInteger(ms) && ms > 0 ? ms : 0;
|
|
280
|
+
};
|
|
199
281
|
/**
|
|
200
282
|
* A server-sent event stream for Studio: `comments`, `notes`, `flows`, `calls` and `sketches` when a file of that
|
|
201
283
|
* kind changed, and `parts` with the parts a design system change redraws and the revision it gave them. A `parts`
|
|
@@ -203,6 +285,11 @@ const isSketchFile = (designRoot, file) => {
|
|
|
203
285
|
*/
|
|
204
286
|
const createDesignEvents = () => {
|
|
205
287
|
const listeners = new Set();
|
|
288
|
+
let heartbeat;
|
|
289
|
+
const beat = () => {
|
|
290
|
+
for (const response of listeners)
|
|
291
|
+
response.write(': heartbeat\n\n');
|
|
292
|
+
};
|
|
206
293
|
return {
|
|
207
294
|
middleware: (request, response) => {
|
|
208
295
|
response.writeHead(200, {
|
|
@@ -213,13 +300,22 @@ const createDesignEvents = () => {
|
|
|
213
300
|
});
|
|
214
301
|
response.write(': open\n\n');
|
|
215
302
|
listeners.add(response);
|
|
216
|
-
|
|
303
|
+
heartbeat !== null && heartbeat !== void 0 ? heartbeat : (heartbeat = (0, rxjs_1.interval)(exports.DESIGN_EVENTS_HEARTBEAT_MS).subscribe(beat));
|
|
304
|
+
request.on('close', () => {
|
|
305
|
+
listeners.delete(response);
|
|
306
|
+
if (listeners.size === 0) {
|
|
307
|
+
heartbeat === null || heartbeat === void 0 ? void 0 : heartbeat.unsubscribe();
|
|
308
|
+
heartbeat = undefined;
|
|
309
|
+
}
|
|
310
|
+
});
|
|
217
311
|
},
|
|
218
312
|
signal: (event, data = {}) => {
|
|
219
313
|
for (const response of listeners)
|
|
220
314
|
response.write(`event: ${event}\ndata: ${JSON.stringify(data)}\n\n`);
|
|
221
315
|
},
|
|
222
316
|
close: () => {
|
|
317
|
+
heartbeat === null || heartbeat === void 0 ? void 0 : heartbeat.unsubscribe();
|
|
318
|
+
heartbeat = undefined;
|
|
223
319
|
for (const response of listeners)
|
|
224
320
|
response.end();
|
|
225
321
|
listeners.clear();
|
|
@@ -250,6 +346,7 @@ const shotStoreOf = (options) => {
|
|
|
250
346
|
return (0, shot_store_1.createShotStore)({
|
|
251
347
|
dir,
|
|
252
348
|
salt,
|
|
349
|
+
checkout: target,
|
|
253
350
|
inputsOf: (address) => {
|
|
254
351
|
var _a, _b;
|
|
255
352
|
const { product, part } = address;
|
|
@@ -271,15 +368,15 @@ const shotStoreOf = (options) => {
|
|
|
271
368
|
...((_a = entry.generated) !== null && _a !== void 0 ? _a : []).flatMap((generated) => { var _a, _b; return (_b = (_a = system.partOf({ product, part: generated.part, sketch })) === null || _a === void 0 ? void 0 : _a.css) !== null && _b !== void 0 ? _b : []; }),
|
|
272
369
|
];
|
|
273
370
|
});
|
|
274
|
-
// The snapshot folder is named after the server's pid, so its files are gone after a restart; the salt's
|
|
275
|
-
const
|
|
371
|
+
// The snapshot folder is named after the server's pid, so its files are gone after a restart; the salt's asset hash covers them.
|
|
372
|
+
const snapshots = [...new Set([(0, path_1.dirname)((0, package_root_1.assetRoot)()), (0, fs_1.realpathSync)((0, path_1.dirname)((0, package_root_1.assetRoot)()))])];
|
|
276
373
|
return [
|
|
277
374
|
...(0, shot_1.dependencyFilesOf)([...roots.flatMap((root) => root !== null && root !== void 0 ? root : []), ...styles], stylesheetImports),
|
|
278
375
|
...read,
|
|
279
|
-
(0,
|
|
376
|
+
(0, design_config_1.configPathOf)(target),
|
|
280
377
|
(0, path_1.resolve)(target, 'tsconfig.base.json'),
|
|
281
378
|
...(entry.head ? [(0, path_1.resolve)(target, entry.head)] : []),
|
|
282
|
-
].filter((file) => !isInside(snapshot, (0, path_1.resolve)(file)));
|
|
379
|
+
].filter((file) => !snapshots.some((snapshot) => isInside(snapshot, (0, path_1.resolve)(file))));
|
|
283
380
|
},
|
|
284
381
|
scopeOf: (address) => JSON.stringify(drawnSystemsOf(address).map((sketch) => {
|
|
285
382
|
const drawn = system.drawnOf(address.product, sketch);
|
|
@@ -291,7 +388,7 @@ const shotStoreOf = (options) => {
|
|
|
291
388
|
})),
|
|
292
389
|
});
|
|
293
390
|
};
|
|
294
|
-
const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir, }) => {
|
|
391
|
+
const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir, checkSketches, }) => {
|
|
295
392
|
const renderer = (0, render_1.createRenderer)({ target, config });
|
|
296
393
|
const transform = withAssetUrls(system);
|
|
297
394
|
const packageDirs = () => (0, render_packages_1.renderPackageDirsOf)({ target, packages: (0, render_packages_1.renderPackagesOf)({ target, config }) });
|
|
@@ -349,21 +446,32 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
349
446
|
/** The registries are built once per load, so a new call or part folder is invisible until it is invalidated. */
|
|
350
447
|
configureServer: (vite) => {
|
|
351
448
|
var _a, _b, _c;
|
|
352
|
-
const callsRoot = (0,
|
|
353
|
-
const designRoot = (0, path_1.resolve)(target,
|
|
449
|
+
const callsRoot = (0, design_config_1.callsRootOf)(target);
|
|
450
|
+
const designRoot = (0, path_1.resolve)(target, design_config_1.DESIGN_DIR);
|
|
354
451
|
const stamp = (0, stamp_1.buildStampOf)();
|
|
452
|
+
const identityOf = (0, server_identity_1.serverIdentityOf)(target);
|
|
355
453
|
const base = () => {
|
|
356
454
|
var _a;
|
|
357
455
|
const address = (_a = vite.httpServer) === null || _a === void 0 ? void 0 : _a.address();
|
|
358
|
-
return `http://localhost:${address && typeof address === 'object' ? address.port : (0,
|
|
456
|
+
return `http://localhost:${address && typeof address === 'object' ? address.port : (0, design_config_1.portOf)(config)}`;
|
|
359
457
|
};
|
|
360
|
-
const ledger = (0, draw_ledger_1.createDrawLedger)(Date.now, ({ sketch }) =>
|
|
458
|
+
const ledger = (0, draw_ledger_1.createDrawLedger)(Date.now, ({ sketch }) => {
|
|
459
|
+
const drawn = sketch && system.drawnOf(sketch.product, sketch);
|
|
460
|
+
return !sketch || (!!drawn && !('sketchGone' in drawn));
|
|
461
|
+
});
|
|
361
462
|
const thumbs = (0, thumb_1.createThumbnailer)({ target, base, ledger });
|
|
362
463
|
const inventoryDraws = (0, thumb_1.createDrawQueue)({ target, ledger });
|
|
464
|
+
const sketchChecker = checkSketches ? undefined : (0, sketch_checker_1.createSketchChecker)();
|
|
465
|
+
const ruleChecker = checkSketches ? undefined : (0, sketch_checker_1.createSketchChecker)();
|
|
466
|
+
const events = createDesignEvents();
|
|
467
|
+
let revision = 0;
|
|
363
468
|
const shots = (0, shot_1.createPartShooter)(Object.assign(Object.assign({ target,
|
|
364
469
|
base,
|
|
365
470
|
ledger,
|
|
366
|
-
system
|
|
471
|
+
system, changed: (part) => {
|
|
472
|
+
revision += 1;
|
|
473
|
+
events.signal('parts', { revision, all: false, parts: [part] });
|
|
474
|
+
} }, (shotCacheDir
|
|
367
475
|
? {
|
|
368
476
|
store: shotStoreOf({
|
|
369
477
|
target,
|
|
@@ -371,7 +479,7 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
371
479
|
system,
|
|
372
480
|
stylesheetImports,
|
|
373
481
|
dir: shotCacheDir,
|
|
374
|
-
salt:
|
|
482
|
+
salt: (0, code_hash_1.designPictureCodeOf)(),
|
|
375
483
|
moduleById: (id) => vite.moduleGraph.getModuleById(id),
|
|
376
484
|
}),
|
|
377
485
|
}
|
|
@@ -402,8 +510,6 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
402
510
|
thumbs.forget((0, path_1.relative)(callsRoot, file));
|
|
403
511
|
shots.forgetCalls((0, path_1.relative)(callsRoot, file));
|
|
404
512
|
};
|
|
405
|
-
const events = createDesignEvents();
|
|
406
|
-
let revision = 0;
|
|
407
513
|
const redraw = (change, listed = false) => {
|
|
408
514
|
if (!change.all && change.parts.length === 0 && !change.errored) {
|
|
409
515
|
if (listed)
|
|
@@ -411,9 +517,10 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
411
517
|
return;
|
|
412
518
|
}
|
|
413
519
|
revision += 1;
|
|
414
|
-
(0, unchanged_states_1.forgetUnchangedStates)();
|
|
520
|
+
(0, unchanged_states_1.forgetUnchangedStates)(change);
|
|
521
|
+
(0, studio_api_1.detachRunningListings)();
|
|
415
522
|
if (change.all)
|
|
416
|
-
shots.clear();
|
|
523
|
+
shots.clear({ announced: true });
|
|
417
524
|
else
|
|
418
525
|
shots.forget(change);
|
|
419
526
|
events.signal('parts', Object.assign({ revision }, change));
|
|
@@ -422,19 +529,21 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
422
529
|
if (hot) {
|
|
423
530
|
const send = hot.send.bind(hot);
|
|
424
531
|
hot.send = (payload, data) => {
|
|
532
|
+
var _a, _b;
|
|
425
533
|
// HMR is disabled: Studio must replace frames when Vite invalidates optimized dependency URLs.
|
|
426
534
|
if (typeof payload === 'object' && payload.type === 'full-reload') {
|
|
535
|
+
console.error(`[design] vite full-reload: ${(_b = (_a = payload.triggeredBy) !== null && _a !== void 0 ? _a : payload.path) !== null && _b !== void 0 ? _b : 'no path'}`);
|
|
427
536
|
thumbs.clear();
|
|
428
537
|
redraw(changed_parts_1.ALL_PARTS);
|
|
429
538
|
}
|
|
430
539
|
return typeof payload === 'string' ? send(payload, data) : send(payload);
|
|
431
540
|
};
|
|
432
541
|
}
|
|
433
|
-
const configPath = (0,
|
|
542
|
+
const configPath = (0, design_config_1.configPathOf)(target);
|
|
434
543
|
const reloadConfig = () => {
|
|
435
544
|
let next;
|
|
436
545
|
try {
|
|
437
|
-
next = (0,
|
|
546
|
+
next = (0, design_config_1.readConfig)(target);
|
|
438
547
|
}
|
|
439
548
|
catch (error) {
|
|
440
549
|
console.error(`design-explore: ${configPath} is invalid, keeping the last good config (${error instanceof Error ? error.message : String(error)})`);
|
|
@@ -452,14 +561,16 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
452
561
|
};
|
|
453
562
|
const reloadFlows = () => {
|
|
454
563
|
thumbs.clear();
|
|
455
|
-
shots.clear();
|
|
564
|
+
shots.clear({ announced: false });
|
|
456
565
|
events.signal('flows');
|
|
457
566
|
};
|
|
458
567
|
const signalLists = (file) => {
|
|
459
568
|
if (isInside(callsRoot, file))
|
|
460
569
|
events.signal('calls');
|
|
461
|
-
else if (isSketchFile(designRoot, file))
|
|
570
|
+
else if (isSketchFile(designRoot, file)) {
|
|
571
|
+
(0, studio_api_1.detachRunningListings)();
|
|
462
572
|
events.signal('sketches');
|
|
573
|
+
}
|
|
463
574
|
};
|
|
464
575
|
const isSystemFile = (file) => !isInside(callsRoot, file) &&
|
|
465
576
|
!isSketchFile(designRoot, file) &&
|
|
@@ -531,22 +642,50 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
531
642
|
const dependents = (0, shot_1.dependentIdsOf)((_a = vite.moduleGraph.getModulesByFile(file)) !== null && _a !== void 0 ? _a : [], stylesheetImports);
|
|
532
643
|
redraw((0, changed_parts_1.changedPartsOf)({ target, config, system, file, dependents }), isSystemFile(file));
|
|
533
644
|
};
|
|
534
|
-
const answer = (handle) => (request, response) => {
|
|
645
|
+
const answer = (handle, held = false) => (request, response) => {
|
|
535
646
|
var _a;
|
|
536
|
-
|
|
647
|
+
const closed = new AbortController();
|
|
648
|
+
response.once('close', () => {
|
|
649
|
+
if (!response.writableFinished)
|
|
650
|
+
closed.abort();
|
|
651
|
+
});
|
|
652
|
+
const answered = handle(new URL((_a = request.url) !== null && _a !== void 0 ? _a : '', 'http://localhost'), {
|
|
653
|
+
request,
|
|
654
|
+
signal: closed.signal,
|
|
655
|
+
}).catch((error) => ({
|
|
537
656
|
status: 500,
|
|
538
657
|
body: { error: error instanceof Error ? error.message : String(error) },
|
|
539
658
|
}));
|
|
659
|
+
void (held ? (0, exports.sendHeldJson)(response, answered) : answered.then((answer) => sendJson(response, answer)));
|
|
540
660
|
};
|
|
661
|
+
const frameDelayMs = frameDelayMsOf();
|
|
662
|
+
if (frameDelayMs)
|
|
663
|
+
vite.middlewares.use('/frame.html', (...[, , next]) => (0, rxjs_1.timer)(frameDelayMs)
|
|
664
|
+
.pipe((0, rxjs_1.tap)(() => next()))
|
|
665
|
+
.subscribe());
|
|
541
666
|
vite.middlewares.use(stamp_1.STAMP_PATH, (_request, response) => {
|
|
542
667
|
response.setHeader('content-type', 'application/json');
|
|
543
|
-
response.end(JSON.stringify(stamp));
|
|
668
|
+
response.end(JSON.stringify(Object.assign(Object.assign({}, stamp), identityOf())));
|
|
544
669
|
});
|
|
545
670
|
vite.middlewares.use(draw_ledger_1.QUEUE_PATH, (_request, response) => sendJson(response, { status: 200, body: ledger.report() }));
|
|
546
671
|
vite.middlewares.use(render_1.RENDER_PATH, (0, render_1.renderMiddleware)(renderer));
|
|
672
|
+
vite.middlewares.use(served_cache_1.REGISTRY_SLICE_PATH, (request, response) => {
|
|
673
|
+
var _a;
|
|
674
|
+
return (0, thumb_1.send)(response, {
|
|
675
|
+
status: 200,
|
|
676
|
+
type: 'text/plain',
|
|
677
|
+
body: (0, exports.registrySliceOf)({
|
|
678
|
+
target,
|
|
679
|
+
config,
|
|
680
|
+
system,
|
|
681
|
+
query: new URL((_a = request.url) !== null && _a !== void 0 ? _a : '', 'http://localhost').searchParams,
|
|
682
|
+
}),
|
|
683
|
+
});
|
|
684
|
+
});
|
|
547
685
|
vite.middlewares.use(render_1.FORCE_PATH, render_1.forceMiddleware);
|
|
548
686
|
vite.middlewares.use(thumb_1.THUMB_PATH, thumbs.middleware);
|
|
549
687
|
vite.middlewares.use(shot_1.SHOT_PATH, shots.middleware);
|
|
688
|
+
vite.middlewares.use(shot_board_1.SHOT_VIEW_PATH, shots.viewMiddleware);
|
|
550
689
|
vite.middlewares.use(studio_api_1.MOTION_PATH, (0, motion_endpoint_1.motionMiddleware)({
|
|
551
690
|
system,
|
|
552
691
|
motionOf: shots.motionOf,
|
|
@@ -568,15 +707,16 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
568
707
|
const asked = url.searchParams.get('product');
|
|
569
708
|
if (asked && !((_a = config.products) === null || _a === void 0 ? void 0 : _a[asked]))
|
|
570
709
|
return { status: 404, body: { error: `no product "${asked}"` } };
|
|
571
|
-
const
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
load: ({ file, product }) => vite.ssrLoadModule((0, system_modules_1.productModuleIdOf)({ file, product })),
|
|
576
|
-
|
|
710
|
+
const missing = (0, stale_dist_1.missingDistOf)({ target, config });
|
|
711
|
+
if (missing.length > 0)
|
|
712
|
+
return { status: 503, body: { error: `missing build: ${missing.join('; ')}` } };
|
|
713
|
+
const products = yield (0, list_system_1.listSystem)(Object.assign({ target,
|
|
714
|
+
system, products: asked ? [asked] : system.products(), load: ({ file, product }) => vite.ssrLoadModule((0, system_modules_1.productModuleIdOf)({ file, product })) }, (ruleChecker && {
|
|
715
|
+
problemsOf: (name, product) => ruleChecker.rules({ target, product: name }).catch(() => (0, check_system_1.ruleProblemsOf)(product)),
|
|
716
|
+
})));
|
|
577
717
|
return { status: 200, body: products };
|
|
578
718
|
})));
|
|
579
|
-
vite.middlewares.use(product_command_1.PRODUCT_PATH, answer((
|
|
719
|
+
vite.middlewares.use(product_command_1.PRODUCT_PATH, answer((_url_1, _a) => __awaiter(void 0, [_url_1, _a], void 0, function* (_url, { request }) {
|
|
580
720
|
const created = yield (0, product_command_1.newProductAnswer)({ target, request });
|
|
581
721
|
if (created.status === 201)
|
|
582
722
|
reloadConfig();
|
|
@@ -588,22 +728,24 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
588
728
|
body: yield (0, calls_1.listCalls)({ target, load: (file) => vite.ssrLoadModule(file) }),
|
|
589
729
|
});
|
|
590
730
|
})));
|
|
591
|
-
vite.middlewares.use(legacy_1.TRANSFER_PATH, answer((
|
|
592
|
-
var
|
|
731
|
+
vite.middlewares.use(legacy_1.TRANSFER_PATH, answer((url_1, _a) => __awaiter(void 0, [url_1, _a], void 0, function* (url, { request }) {
|
|
732
|
+
var _b;
|
|
593
733
|
if (request.method !== 'POST')
|
|
594
734
|
return { status: 405, body: { error: 'POST only' } };
|
|
595
|
-
const result = (0, legacy_1.markTransferred)({ target, slug: (
|
|
735
|
+
const result = (0, legacy_1.markTransferred)({ target, slug: (_b = url.searchParams.get('call')) !== null && _b !== void 0 ? _b : '' });
|
|
596
736
|
const status = result === 'missing' ? 404 : result === 'unreadable' ? 422 : 200;
|
|
597
737
|
return { status, body: { result } };
|
|
598
738
|
})));
|
|
599
|
-
const studio = (path, handle) => vite.middlewares.use(path, answer((
|
|
739
|
+
const studio = (path, handle) => vite.middlewares.use(path, answer((url_1, _a) => __awaiter(void 0, [url_1, _a], void 0, function* (url, { request, signal }) {
|
|
600
740
|
return handle({
|
|
601
741
|
target,
|
|
602
742
|
url,
|
|
603
743
|
request,
|
|
744
|
+
signal,
|
|
604
745
|
load: ({ file, product, sketch }) => vite.ssrLoadModule((0, system_modules_1.productModuleIdOf)({ file, product, sketch })),
|
|
605
746
|
pictureOf: shots.pictureOf,
|
|
606
747
|
boxOf: shots.changedBoxesOf,
|
|
748
|
+
checkSketches: checkSketches !== null && checkSketches !== void 0 ? checkSketches : sketchChecker,
|
|
607
749
|
inventoryOf: ({ product, part }) => (0, inventory_1.inventoryOf)({
|
|
608
750
|
product,
|
|
609
751
|
part,
|
|
@@ -613,7 +755,7 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
613
755
|
draw: (job) => inventoryDraws.run(job),
|
|
614
756
|
}),
|
|
615
757
|
});
|
|
616
|
-
})));
|
|
758
|
+
}), path === studio_api_1.SKETCHES_PATH));
|
|
617
759
|
studio(studio_api_1.SKETCHES_PATH, studio_api_1.sketchesAnswer);
|
|
618
760
|
studio(studio_api_1.SKETCH_PREVIEW_PATH, studio_api_1.sketchPreviewAnswer);
|
|
619
761
|
studio(studio_api_1.SKETCH_COMPARE_PATH, studio_api_1.sketchCompareAnswer);
|
|
@@ -638,14 +780,19 @@ const designExplore = ({ target, config, system, stylesheetImports, shotCacheDir
|
|
|
638
780
|
studio(studio_api_1.INVENTORY_PATH, studio_api_1.inventoryAnswer);
|
|
639
781
|
studio(studio_api_1.INVENTORY_APPROVE_PATH, studio_api_1.inventoryApproveAnswer);
|
|
640
782
|
studio(studio_api_1.OPEN_POINTS_PATH, studio_api_1.openPointsAnswer);
|
|
641
|
-
studio(studio_api_1.PART_READY_PATH, studio_api_1.partReadyAnswer);
|
|
642
783
|
studio(studio_api_1.EXCEPTIONS_PATH, studio_api_1.exceptionsAnswer);
|
|
643
784
|
studio(studio_api_1.EXCEPTION_APPROVE_PATH, studio_api_1.exceptionApproveAnswer);
|
|
644
785
|
vite.middlewares.use(studio_api_1.COMMENT_EVENTS_PATH, events.middleware);
|
|
645
786
|
(_c = vite.httpServer) === null || _c === void 0 ? void 0 : _c.on('close', () => {
|
|
646
787
|
events.close();
|
|
647
788
|
settling === null || settling === void 0 ? void 0 : settling.abort();
|
|
648
|
-
void Promise.all([
|
|
789
|
+
void Promise.all([
|
|
790
|
+
thumbs.close(),
|
|
791
|
+
shots.close(),
|
|
792
|
+
inventoryDraws.close(),
|
|
793
|
+
sketchChecker === null || sketchChecker === void 0 ? void 0 : sketchChecker.close(),
|
|
794
|
+
ruleChecker === null || ruleChecker === void 0 ? void 0 : ruleChecker.close(),
|
|
795
|
+
]);
|
|
649
796
|
});
|
|
650
797
|
vite.watcher.add([designRoot, ...baseDirs, ...packageDirs()]);
|
|
651
798
|
vite.watcher.on('add', (file) => (isPackageFile(file) ? packageChanged(file) : refresh(file)));
|
|
@@ -663,6 +810,24 @@ const freePortOf = () => new Promise((resolvePort, reject) => {
|
|
|
663
810
|
probe.close(() => resolvePort(port));
|
|
664
811
|
});
|
|
665
812
|
});
|
|
813
|
+
/** The real directories a checkout's `node_modules` points into, which Vite refuses to serve unless allowed. */
|
|
814
|
+
const installedRootsOf = (target) => {
|
|
815
|
+
const modules = (0, path_1.join)(target, 'node_modules');
|
|
816
|
+
const roots = new Set();
|
|
817
|
+
try {
|
|
818
|
+
roots.add((0, fs_1.realpathSync)(modules));
|
|
819
|
+
for (const entry of (0, fs_1.readdirSync)(modules, { withFileTypes: true })) {
|
|
820
|
+
if (entry.isSymbolicLink() && !entry.name.startsWith('.')) {
|
|
821
|
+
roots.add((0, path_1.dirname)((0, fs_1.realpathSync)((0, path_1.join)(modules, entry.name))));
|
|
822
|
+
}
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
catch (_a) {
|
|
826
|
+
return [...roots];
|
|
827
|
+
}
|
|
828
|
+
return [...roots];
|
|
829
|
+
};
|
|
830
|
+
exports.installedRootsOf = installedRootsOf;
|
|
666
831
|
/**
|
|
667
832
|
* The Vite server that draws a checkout: listening on the configured port to serve the frames, or in
|
|
668
833
|
* middleware mode only to load design modules for a command. With `port`, it listens there instead
|
|
@@ -671,7 +836,7 @@ const freePortOf = () => new Promise((resolvePort, reject) => {
|
|
|
671
836
|
*/
|
|
672
837
|
const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
673
838
|
var _a;
|
|
674
|
-
const { target, config, listen, sketchesRoot } = options;
|
|
839
|
+
const { target, config, listen, sketchesRoot, checkSketches } = options;
|
|
675
840
|
const host = options.host || process.env['DE_HOST'] || undefined;
|
|
676
841
|
const own = listen && options.port !== undefined;
|
|
677
842
|
const port = own ? yield freePortOf() : options.listenOn;
|
|
@@ -681,7 +846,7 @@ const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, functi
|
|
|
681
846
|
process.chdir(target);
|
|
682
847
|
const { createServer } = yield import('vite');
|
|
683
848
|
const { default: tailwind } = yield import('@tailwindcss/postcss');
|
|
684
|
-
const here = (0,
|
|
849
|
+
const here = (0, package_root_1.assetRoot)();
|
|
685
850
|
const system = (0, system_modules_1.createSystemModules)({ target, config, sketchesRoot });
|
|
686
851
|
const generatedStylesheetsOf = (0, generated_stylesheets_1.createGeneratedStylesheets)({ target, config, system });
|
|
687
852
|
if (listen) {
|
|
@@ -693,7 +858,9 @@ const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, functi
|
|
|
693
858
|
}
|
|
694
859
|
const baseDirs = system.products().flatMap((name) => { var _a, _b, _c; return (_c = (_b = (_a = system.productOf(name)) === null || _a === void 0 ? void 0 : _a.base) === null || _b === void 0 ? void 0 : _b.dir) !== null && _c !== void 0 ? _c : []; });
|
|
695
860
|
const stylesheetImports = new Map();
|
|
696
|
-
const cache = listen && !own ? null : (0,
|
|
861
|
+
const cache = listen && !own ? null : (0, vite_cache_1.claimViteCache)(target, 'vite-check');
|
|
862
|
+
if (listen && !own)
|
|
863
|
+
void (0, old_shot_folders_1.removeOldShotFolders)((0, work_root_1.workRootOf)(target));
|
|
697
864
|
const server = yield createServer(Object.assign(Object.assign(Object.assign({ configFile: false, root: (0, path_1.resolve)(here, 'web'),
|
|
698
865
|
// Every drawing is ruled under Tailwind 4, whatever the checkout installs. The tool brings its
|
|
699
866
|
// own pipeline so no checkout's postcss config reaches a drawing.
|
|
@@ -710,7 +877,7 @@ const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, functi
|
|
|
710
877
|
(0, shot_1.stylesheetImportsPlugin)(stylesheetImports),
|
|
711
878
|
],
|
|
712
879
|
},
|
|
713
|
-
}, cacheDir: (_a = cache === null || cache === void 0 ? void 0 : cache.dir) !== null && _a !== void 0 ? _a : (0,
|
|
880
|
+
}, cacheDir: (_a = cache === null || cache === void 0 ? void 0 : cache.dir) !== null && _a !== void 0 ? _a : (0, vite_cache_1.viteCacheOf)(target, 'vite'), resolve: {
|
|
714
881
|
alias: [
|
|
715
882
|
{ find: /^@design-explore$/, replacement: (0, path_1.resolve)(here, 'define-call.ts') },
|
|
716
883
|
{ find: new RegExp(`^${system_tsconfig_1.DESIGN_SYSTEM_SPECIFIER}$`), replacement: (0, path_1.resolve)(here, 'define-part.ts') },
|
|
@@ -729,15 +896,16 @@ const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, functi
|
|
|
729
896
|
config,
|
|
730
897
|
system,
|
|
731
898
|
stylesheetImports,
|
|
732
|
-
shotCacheDir: listen && !own ? (0,
|
|
899
|
+
shotCacheDir: listen && !own ? (0, path_1.resolve)((0, work_root_1.workRootOf)(target), shot_store_1.SHOT_STORE_DIR) : null,
|
|
900
|
+
checkSketches,
|
|
733
901
|
}),
|
|
734
902
|
] }, (listen ? {} : { appType: 'custom' })), (listen && !own ? {} : { logLevel: 'error' })), { server: Object.assign(Object.assign({
|
|
735
903
|
// Studio swaps a frame for a fresh one once it has painted; a Vite reload would blank every frame at once.
|
|
736
904
|
hmr: false }, (listen
|
|
737
|
-
? Object.assign(Object.assign(Object.assign({ port: port !== null && port !== void 0 ? port : (0,
|
|
905
|
+
? Object.assign(Object.assign(Object.assign({ port: port !== null && port !== void 0 ? port : (0, design_config_1.portOf)(config) }, (host ? { host } : {})), { strictPort: !own }), (own ? { watch: null } : {})) : { middlewareMode: true, ws: false, watch: null })), {
|
|
738
906
|
// The frame page lives inside this package, which is outside the checkout it draws. Vite
|
|
739
907
|
// serves neither root unless both are allowed.
|
|
740
|
-
fs: { allow: [target, here, ...baseDirs] } }) }));
|
|
908
|
+
fs: { allow: [target, here, ...baseDirs, ...(0, exports.installedRootsOf)(target)] } }) }));
|
|
741
909
|
const closing = server.close.bind(server);
|
|
742
910
|
server.close = () => closing().finally(() => cache === null || cache === void 0 ? void 0 : cache.release());
|
|
743
911
|
const listening = server.listen.bind(server);
|
|
@@ -747,9 +915,28 @@ const createDesignServer = (options) => __awaiter(void 0, void 0, void 0, functi
|
|
|
747
915
|
throw error;
|
|
748
916
|
throw new Error(`design-explore: cannot open a local port (${code}) - the environment forbids listening, so nothing was drawn. This is a permission failure, not a drawing failure: run outside the sandbox.`);
|
|
749
917
|
});
|
|
750
|
-
return server
|
|
918
|
+
return Object.assign(server, {
|
|
919
|
+
/** A disk store of this server's part pictures under `dir`; an entry is served while every file it was drawn from is unchanged. */
|
|
920
|
+
shotStore: (dir, salt) => {
|
|
921
|
+
return shotStoreOf({
|
|
922
|
+
target,
|
|
923
|
+
config,
|
|
924
|
+
system,
|
|
925
|
+
stylesheetImports,
|
|
926
|
+
dir,
|
|
927
|
+
salt: `${(0, code_hash_1.designPictureCodeOf)()} ${salt}`,
|
|
928
|
+
moduleById: (id) => server.moduleGraph.getModuleById(id),
|
|
929
|
+
});
|
|
930
|
+
},
|
|
931
|
+
/** Forgets every loaded part, sketch and module, so the next draw reads the files as they are now: a server started with `port` does not watch them. */
|
|
932
|
+
forgetDrawn: () => {
|
|
933
|
+
system.forget();
|
|
934
|
+
Object.values(server.environments).forEach((environment) => environment.moduleGraph.invalidateAll());
|
|
935
|
+
},
|
|
936
|
+
});
|
|
751
937
|
});
|
|
752
938
|
exports.createDesignServer = createDesignServer;
|
|
939
|
+
const exitWhenParentIsGone = (server) => (0, parent_watch_1.exitWhenParentGone)({ onGone: () => void server.close().finally(() => process.exit(0)) });
|
|
753
940
|
const exitWhenStdinCloses = (server) => {
|
|
754
941
|
let closing = false;
|
|
755
942
|
const shutDown = () => {
|
|
@@ -762,18 +949,23 @@ const exitWhenStdinCloses = (server) => {
|
|
|
762
949
|
process.stdin.once('close', shutDown);
|
|
763
950
|
process.stdin.resume();
|
|
764
951
|
};
|
|
952
|
+
const installedStampOf = () => (0, stamp_1.buildStampOf)((0, package_root_1.installedAssetRoot)()).build;
|
|
765
953
|
/**
|
|
766
954
|
* Starts the design server for a checkout and keeps it running. The returned exit code is the
|
|
767
|
-
* command's, not the server's: a listening server holds the process open on its own.
|
|
955
|
+
* command's, not the server's: a listening server holds the process open on its own. With
|
|
956
|
+
* `reloadOnRebuild`, a rebuild or reinstall of the cli restarts the server on the same port from
|
|
957
|
+
* the new build, inside the process that was started.
|
|
768
958
|
*/
|
|
769
959
|
const serveDesign = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
770
|
-
const { target, host } = options;
|
|
771
|
-
const config = (0,
|
|
960
|
+
const { target, host, reloadOnRebuild, checkSketches } = options;
|
|
961
|
+
const config = (0, design_config_1.readConfig)(target);
|
|
772
962
|
if (!config) {
|
|
773
|
-
console.error(`design-explore: no config at ${(0,
|
|
963
|
+
console.error(`design-explore: no config at ${(0, design_config_1.configPathOf)(target)}`);
|
|
774
964
|
return 1;
|
|
775
965
|
}
|
|
776
|
-
|
|
966
|
+
const cwd = process.cwd();
|
|
967
|
+
const served = reloadOnRebuild ? installedStampOf() : '';
|
|
968
|
+
(0, package_root_1.snapshotPackage)(target);
|
|
777
969
|
const ownedByStudio = process.env['ETHLETE_DESIGN_EXIT_ON_STDIN_CLOSE'] === '1';
|
|
778
970
|
const portPinned = ownedByStudio || !!Number(process.env['DE_PORT']);
|
|
779
971
|
const server = yield (0, exports.createDesignServer)({
|
|
@@ -782,16 +974,42 @@ const serveDesign = (options) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
782
974
|
listen: true,
|
|
783
975
|
host,
|
|
784
976
|
listenOn: portPinned ? undefined : yield freePortOf(),
|
|
977
|
+
checkSketches,
|
|
785
978
|
});
|
|
786
979
|
yield server.listen();
|
|
787
980
|
console.log(`design-explore: drawing ${target}`);
|
|
788
981
|
if (!portPinned) {
|
|
789
|
-
console.log(`design-explore: not started by Studio, so it listens on a free port and leaves ${(0,
|
|
982
|
+
console.log(`design-explore: not started by Studio, so it listens on a free port and leaves ${(0, design_config_1.portOf)(config)} to Studio`);
|
|
790
983
|
}
|
|
791
984
|
server.printUrls();
|
|
985
|
+
if (process.env['ETHLETE_DESIGN_SLOW_CHECKS'] !== 'off')
|
|
986
|
+
(0, slow_run_1.startSlowRunner)({
|
|
987
|
+
target,
|
|
988
|
+
configOf: () => (0, design_config_1.readConfig)(target),
|
|
989
|
+
log: (line) => console.log(`design-explore: ${line}`),
|
|
990
|
+
});
|
|
792
991
|
if (ownedByStudio) {
|
|
793
992
|
exitWhenStdinCloses(server);
|
|
794
993
|
}
|
|
994
|
+
exitWhenParentIsGone(server);
|
|
995
|
+
if (reloadOnRebuild) {
|
|
996
|
+
(0, build_watch_1.watchBuild)({
|
|
997
|
+
root: (0, path_1.dirname)((0, package_root_1.installedAssetRoot)()),
|
|
998
|
+
served,
|
|
999
|
+
stampOf: installedStampOf,
|
|
1000
|
+
onRebuild: () => {
|
|
1001
|
+
var _a;
|
|
1002
|
+
const address = (_a = server.httpServer) === null || _a === void 0 ? void 0 : _a.address();
|
|
1003
|
+
const port = address && typeof address === 'object' ? address.port : (0, design_config_1.portOf)(config);
|
|
1004
|
+
console.log('design-explore: the cli was rebuilt, restarting the server from the new build');
|
|
1005
|
+
void server
|
|
1006
|
+
.close()
|
|
1007
|
+
.then(() => process.env[build_watch_1.SUPERVISED_ENV] === '1'
|
|
1008
|
+
? process.exit(build_watch_1.RELOAD_EXIT_CODE)
|
|
1009
|
+
: (0, build_watch_1.superviseReloads)(() => (0, build_watch_1.relaunch)({ port, cwd })).then((code) => process.exit(code)));
|
|
1010
|
+
},
|
|
1011
|
+
});
|
|
1012
|
+
}
|
|
795
1013
|
return 0;
|
|
796
1014
|
});
|
|
797
1015
|
exports.serveDesign = serveDesign;
|