@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/status.js
CHANGED
|
@@ -4,7 +4,8 @@ exports.designStatus = exports.holdStatus = exports.writeStatus = exports.status
|
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const os_1 = require("os");
|
|
6
6
|
const path_1 = require("path");
|
|
7
|
-
const
|
|
7
|
+
const design_config_1 = require("./design-config");
|
|
8
|
+
const push_status_1 = require("./push-status");
|
|
8
9
|
exports.CALL_STATES = ['scaffolded', 'drawing', 'checking', 'ready', 'failed'];
|
|
9
10
|
const MESSAGE_LIMIT = 400;
|
|
10
11
|
const flattened = (value) => value.replace(/[^A-Za-z0-9]/gu, '-');
|
|
@@ -38,15 +39,25 @@ const holdStatus = (options) => {
|
|
|
38
39
|
};
|
|
39
40
|
exports.holdStatus = holdStatus;
|
|
40
41
|
const isState = (value) => exports.CALL_STATES.includes(value);
|
|
41
|
-
/** `et design status
|
|
42
|
+
/** `et design status` shows the unpushed commits and the CI state; with a slug and a state it records a call's state by hand. */
|
|
42
43
|
const designStatus = (options) => {
|
|
43
44
|
const { target, argv, invocation } = options;
|
|
44
|
-
const
|
|
45
|
+
const json = argv.includes('--json');
|
|
46
|
+
const [slug, state] = argv.filter((arg) => arg !== '--json');
|
|
47
|
+
if (!slug && !state) {
|
|
48
|
+
const push = (0, push_status_1.pushStatusOf)(target);
|
|
49
|
+
if (push === null) {
|
|
50
|
+
console.error('NO GIT RANGE - the checkout has no commits to compare.');
|
|
51
|
+
return 1;
|
|
52
|
+
}
|
|
53
|
+
console.log(json ? JSON.stringify({ push }) : (0, push_status_1.pushStatusLines)(push).join('\n'));
|
|
54
|
+
return 0;
|
|
55
|
+
}
|
|
45
56
|
if (!slug || !isState(state)) {
|
|
46
57
|
console.error(`usage: ${invocation} status <slug> <${exports.CALL_STATES.join('|')}>`);
|
|
47
58
|
return 2;
|
|
48
59
|
}
|
|
49
|
-
if (!(0, fs_1.existsSync)((0, path_1.join)((0,
|
|
60
|
+
if (!(0, fs_1.existsSync)((0, path_1.join)((0, design_config_1.callsRootOf)(target), ...slug.split('/')))) {
|
|
50
61
|
console.error(`NO CALL "${slug}" - pass the folder's path under .ethlete/design/calls.`);
|
|
51
62
|
return 1;
|
|
52
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../../libs/cli/src/lib/design/status.ts"],"names":[],"mappings":";;;AAAA,2BAAgF;AAChF,2BAA4B;AAC5B,+BAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../../libs/cli/src/lib/design/status.ts"],"names":[],"mappings":";;;AAAA,2BAAgF;AAChF,2BAA4B;AAC5B,+BAA4B;AAC5B,mDAA8C;AAC9C,+CAA8D;AAEjD,QAAA,WAAW,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAU7F,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;AAE1E;;;GAGG;AACI,MAAM,UAAU,GAAG,CAAC,OAA2C,EAAE,EAAE,CACxE,IAAA,WAAI,EAAC,IAAA,WAAM,GAAE,EAAE,uBAAuB,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,CAAC;AADhG,QAAA,UAAU,cACsF;AAE7G,kEAAkE;AAC3D,MAAM,WAAW,GAAG,CAAC,OAA+E,EAAE,EAAE;IAC7G,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACnD,MAAM,IAAI,GAAG,IAAA,kBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,MAAM,MAAM,mBACV,KAAK,EACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAChC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACjE,CAAC;IAEF,IAAA,cAAS,EAAC,IAAA,WAAI,EAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,IAAA,kBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC;AAXW,QAAA,WAAW,eAWtB;AAEF,+FAA+F;AACxF,MAAM,UAAU,GAAG,CAAC,OAA2C,EAAE,EAAE;IACxE,MAAM,IAAI,GAAG,IAAA,kBAAU,EAAC,OAAO,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAElE,OAAO,GAAG,EAAE;QACV,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,IAAA,WAAM,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,IAAA,kBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,UAAU,cAWrB;AAEF,MAAM,OAAO,GAAG,CAAC,KAAyB,EAAsB,EAAE,CAAC,mBAAW,CAAC,QAAQ,CAAC,KAAkB,CAAC,CAAC;AAE5G,iIAAiI;AAC1H,MAAM,YAAY,GAAG,CAAC,OAA+D,EAAE,EAAE;IAC9F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;IAE7D,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,IAAA,0BAAY,EAAC,MAAM,CAAC,CAAC;QAElC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAExE,OAAO,CAAC,CAAC;QACX,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,6BAAe,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,UAAU,UAAU,mBAAmB,mBAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE/E,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC,IAAA,eAAU,EAAC,IAAA,WAAI,EAAC,IAAA,2BAAW,EAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,YAAY,IAAI,yDAAyD,CAAC,CAAC;QAEzF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAA,mBAAW,EAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC;IAEnC,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAnCW,QAAA,YAAY,gBAmCvB"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { IncomingMessage } from 'http';
|
|
2
2
|
import { Inventory } from './system/inventory';
|
|
3
3
|
import { ResolvedProduct } from './system/resolve-product';
|
|
4
|
+
import { CheckSketches } from './system/sketch/sketch-checker';
|
|
5
|
+
import { DrawStates } from './system/accepted-pictures';
|
|
4
6
|
import { PictureOf } from './merge-compare';
|
|
5
7
|
import { BoxOf } from './variant-diff';
|
|
6
8
|
import { SketchVariant } from './system/system-modules';
|
|
@@ -32,7 +34,6 @@ export declare const EXCEPTIONS_PATH = "/__design/exceptions";
|
|
|
32
34
|
export declare const EXCEPTION_APPROVE_PATH = "/__design/exception-approve";
|
|
33
35
|
export declare const MOTION_PATH = "/__design/motion";
|
|
34
36
|
export declare const OPEN_POINTS_PATH = "/__design/open-points";
|
|
35
|
-
export declare const PART_READY_PATH = "/__design/part-ready";
|
|
36
37
|
export type Answer = {
|
|
37
38
|
status: number;
|
|
38
39
|
body: unknown;
|
|
@@ -54,15 +55,26 @@ type Asked = {
|
|
|
54
55
|
product: ResolvedProduct;
|
|
55
56
|
part: string;
|
|
56
57
|
}) => Promise<Inventory | string>;
|
|
58
|
+
drawStates?: DrawStates;
|
|
59
|
+
checkSketches?: CheckSketches;
|
|
60
|
+
/** Aborts when the client closes the request before it has its answer. */
|
|
61
|
+
signal?: AbortSignal;
|
|
57
62
|
};
|
|
63
|
+
/**
|
|
64
|
+
* Lets the next sketch listing start anew instead of joining one that started before a file changed. A running listing
|
|
65
|
+
* still answers the requests that already joined it.
|
|
66
|
+
*/
|
|
67
|
+
export declare const detachRunningListings: () => void;
|
|
58
68
|
/**
|
|
59
69
|
* The open sketches of `?product=`, each with its target parts (`targetParts`, the first one first), variants, status,
|
|
60
70
|
* decision, the rule problems of every variant, the states, widths and interactions of each target part as each variant
|
|
61
71
|
* draws it (`targets`, one entry per part and variant, tagged with `part`, the first part's entries first), with the states it
|
|
62
72
|
* draws the same as the product now (`unchanged`), the states it adds and drops and its part note when that differs
|
|
63
73
|
* from the product's (`changes`), and the live report
|
|
64
|
-
* of the agent (`report`, `null` when none runs). `?unchanged=no`
|
|
65
|
-
*
|
|
74
|
+
* of the agent (`report`, `null` when none runs). `?unchanged=no` answers without `problems`, and with the `unchanged` of a target only
|
|
75
|
+
* while a full listing's comparison of the same sources is kept: no rule check, no pictures. `&targets=no` also leaves out `targets`: no part module loads.
|
|
76
|
+
* A listing asked while the same one runs gets that one's answer, unless `detachRunningListings` ran since it started; it stops when every client that asked for it has closed its request.
|
|
77
|
+
* Each listing first runs the held automatic merges whose uncommitted files are gone.
|
|
66
78
|
*/
|
|
67
79
|
export declare const sketchesAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
68
80
|
/** `?product=&sketch=<layer>/<name>&variant=`: the parts a merge of that variant changes and the elements and pages that show them. */
|
|
@@ -91,14 +103,16 @@ export declare const sketchCropAnswer: (asked: Asked) => Answer | Promise<Answer
|
|
|
91
103
|
export declare const sketchDecisionAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
92
104
|
/**
|
|
93
105
|
* POST `?product=&sketch=`, body `{ note? }`: merges the picked variant into the product, as `et design sketch merge` does.
|
|
94
|
-
* A merge refused for a stale baseline answers 422 with `changed` (the parts, `[]` without a baseline) and the `rebase` command
|
|
106
|
+
* A merge refused for a stale baseline answers 422 with `changed` (the parts, `[]` without a baseline) and the `rebase` command;
|
|
107
|
+
* one the check fails after answers 422 with reason `check-failed` and the check's `findings` lines.
|
|
95
108
|
*/
|
|
96
109
|
export declare const sketchMergeAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
97
110
|
/** POST `?product=&sketch=`: deletes the sketch with all its variants, as `et design sketch discard` does. */
|
|
98
111
|
export declare const sketchDiscardAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
99
112
|
/**
|
|
100
113
|
* `?product=[&part=<layer>/<name>]`: every comment with its `replies`, oldest first, each with the reason it
|
|
101
|
-
* is stale or `null`, its `threadState` (`agent`, `question` or `answered`) and, once closed, its `resolved
|
|
114
|
+
* is stale or `null`, its `threadState` (`agent`, `question` or `answered`) and, once closed, its `resolved`; `userName` is
|
|
115
|
+
* the `git config user.name` of the checkout, or `null`.
|
|
102
116
|
*/
|
|
103
117
|
export declare const commentsAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
104
118
|
/** POST `?product=`, body `{ part, state, size, text, interaction?, point?: { x, y }, sketch?: { target, variant } }`: writes a canvas comment. */
|
|
@@ -136,11 +150,8 @@ export declare const exceptionApproveAnswer: (asked: Asked) => Answer | Promise<
|
|
|
136
150
|
/**
|
|
137
151
|
* GET `?product=&part=&draw=`: the open points of one part, or of every part without `part`. Contrasts and missing
|
|
138
152
|
* control states need a draw: only `draw=true` with a `part` lists them, and `drawn` says whether they are in.
|
|
153
|
+
* `directEdit` says whether the merged part changed outside a sketch and waits for an accept; `buildReady` whether the
|
|
154
|
+
* part may be built now, or its blockers.
|
|
139
155
|
*/
|
|
140
156
|
export declare const openPointsAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
141
|
-
/**
|
|
142
|
-
* POST `?product=`, body `{ part, hash, by }`: marks a part ready at the hash Studio showed. It draws the part and
|
|
143
|
-
* refuses with 422 and the `points` while its open-point list is not empty.
|
|
144
|
-
*/
|
|
145
|
-
export declare const partReadyAnswer: (asked: Asked) => Answer | Promise<Answer>;
|
|
146
157
|
export {};
|
|
@@ -27,22 +27,28 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
return t;
|
|
28
28
|
};
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.flowNoteDeleteAnswer = exports.flowNoteChangeAnswer = exports.flowNoteAnswer = exports.noteDeleteAnswer = exports.noteChangeAnswer = exports.noteAnswer = exports.notesAnswer = exports.flowsAnswer = exports.commentReplyAnswer = exports.commentWithdrawAnswer = exports.commentDoneAnswer = exports.commentAnswer = exports.commentsAnswer = exports.sketchDiscardAnswer = exports.sketchMergeAnswer = exports.sketchDecisionAnswer = exports.sketchCropAnswer = exports.sketchDiffAnswer = exports.sketchCompareAnswer = exports.sketchPreviewAnswer = exports.sketchesAnswer = exports.
|
|
31
|
-
exports.
|
|
30
|
+
exports.flowNoteDeleteAnswer = exports.flowNoteChangeAnswer = exports.flowNoteAnswer = exports.noteDeleteAnswer = exports.noteChangeAnswer = exports.noteAnswer = exports.notesAnswer = exports.flowsAnswer = exports.commentReplyAnswer = exports.commentWithdrawAnswer = exports.commentDoneAnswer = exports.commentAnswer = exports.commentsAnswer = exports.sketchDiscardAnswer = exports.sketchMergeAnswer = exports.sketchDecisionAnswer = exports.sketchCropAnswer = exports.sketchDiffAnswer = exports.sketchCompareAnswer = exports.sketchPreviewAnswer = exports.sketchesAnswer = exports.detachRunningListings = exports.OPEN_POINTS_PATH = exports.MOTION_PATH = exports.EXCEPTION_APPROVE_PATH = exports.EXCEPTIONS_PATH = exports.INVENTORY_APPROVE_PATH = exports.INVENTORY_PATH = exports.FLOW_NOTE_DELETE_PATH = exports.FLOW_NOTE_CHANGE_PATH = exports.FLOW_NOTE_PATH = exports.NOTE_DELETE_PATH = exports.NOTE_CHANGE_PATH = exports.NOTE_PATH = exports.NOTES_PATH = exports.FLOWS_PATH = exports.COMMENT_EVENTS_PATH = exports.COMMENT_REPLY_PATH = exports.COMMENT_WITHDRAW_PATH = exports.COMMENT_DONE_PATH = exports.COMMENT_PATH = exports.COMMENTS_PATH = exports.SKETCH_DISCARD_PATH = exports.SKETCH_MERGE_PATH = exports.SKETCH_DECISION_PATH = exports.SKETCH_CROP_PATH = exports.SKETCH_DIFF_PATH = exports.SKETCH_COMPARE_PATH = exports.SKETCH_PREVIEW_PATH = exports.SKETCHES_PATH = void 0;
|
|
31
|
+
exports.openPointsAnswer = exports.exceptionApproveAnswer = exports.exceptionsAnswer = exports.inventoryApproveAnswer = exports.inventoryAnswer = void 0;
|
|
32
|
+
const child_process_1 = require("child_process");
|
|
33
|
+
const write_origin_1 = require("./system/write-origin");
|
|
32
34
|
const path_1 = require("path");
|
|
35
|
+
const rxjs_1 = require("rxjs");
|
|
36
|
+
const promises_1 = require("timers/promises");
|
|
33
37
|
const invocation_1 = require("../invocation");
|
|
34
|
-
const
|
|
38
|
+
const design_config_1 = require("./design-config");
|
|
35
39
|
const comment_1 = require("./system/comments/comment");
|
|
36
40
|
const flow_1 = require("./system/flows/flow");
|
|
37
41
|
const note_1 = require("./system/notes/note");
|
|
38
42
|
const exceptions_1 = require("./system/exceptions");
|
|
39
43
|
const inventory_1 = require("./system/inventory");
|
|
40
|
-
const
|
|
41
|
-
const
|
|
44
|
+
const drawn_open_points_1 = require("./system/drawn-open-points");
|
|
45
|
+
const open_points_runner_1 = require("./system/open-points-runner");
|
|
42
46
|
const flow_2 = require("./system/rules/flow");
|
|
43
47
|
const check_sketches_1 = require("./system/sketch/check-sketches");
|
|
44
48
|
const cli_args_1 = require("./system/sketch/cli-args");
|
|
49
|
+
const sketch_command_1 = require("./sketch-command");
|
|
45
50
|
const merge_1 = require("./system/sketch/merge");
|
|
51
|
+
const merge_runner_1 = require("./system/sketch/merge-runner");
|
|
46
52
|
const list_system_1 = require("./system/list-system");
|
|
47
53
|
const merge_compare_1 = require("./merge-compare");
|
|
48
54
|
const variant_diff_1 = require("./variant-diff");
|
|
@@ -80,11 +86,14 @@ exports.EXCEPTIONS_PATH = '/__design/exceptions';
|
|
|
80
86
|
exports.EXCEPTION_APPROVE_PATH = '/__design/exception-approve';
|
|
81
87
|
exports.MOTION_PATH = '/__design/motion';
|
|
82
88
|
exports.OPEN_POINTS_PATH = '/__design/open-points';
|
|
83
|
-
exports.PART_READY_PATH = '/__design/part-ready';
|
|
84
89
|
const failure = (status, message) => ({ status, body: { error: message } });
|
|
90
|
+
const refusal = (options) => ({
|
|
91
|
+
status: options.status,
|
|
92
|
+
body: Object.assign({ error: options.message, reason: options.reason }, options.extra),
|
|
93
|
+
});
|
|
85
94
|
const productOf = ({ target, url }) => {
|
|
86
95
|
const asked = url.searchParams.get('product');
|
|
87
|
-
const config = (0,
|
|
96
|
+
const config = (0, design_config_1.readConfig)(target);
|
|
88
97
|
if (!config)
|
|
89
98
|
return failure(404, 'no design config');
|
|
90
99
|
if (!asked)
|
|
@@ -130,6 +139,17 @@ const withProduct = (method, run) => (asked) => {
|
|
|
130
139
|
const found = productOf(asked);
|
|
131
140
|
return isAnswer(found) ? found : run(Object.assign(Object.assign({}, found), { asked }));
|
|
132
141
|
};
|
|
142
|
+
const stopping = (signal, run) => (...args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
143
|
+
signal.throwIfAborted();
|
|
144
|
+
return run(...args);
|
|
145
|
+
});
|
|
146
|
+
/** `asked` with its loaders refusing to start a module load or a picture once `signal` aborts. */
|
|
147
|
+
const stoppingOn = (asked, signal) => {
|
|
148
|
+
if (!signal)
|
|
149
|
+
return asked;
|
|
150
|
+
const { load, pictureOf, boxOf } = asked;
|
|
151
|
+
return Object.assign(Object.assign(Object.assign(Object.assign({}, asked), (load ? { load: stopping(signal, load) } : {})), (pictureOf ? { pictureOf: stopping(signal, pictureOf) } : {})), (boxOf ? { boxOf: stopping(signal, boxOf) } : {}));
|
|
152
|
+
};
|
|
133
153
|
const withSketch = (method, run) => withProduct(method, (found) => {
|
|
134
154
|
var _a;
|
|
135
155
|
const parsed = (0, sketch_1.parseTarget)((_a = found.asked.url.searchParams.get('sketch')) !== null && _a !== void 0 ? _a : undefined);
|
|
@@ -140,7 +160,7 @@ const withSketch = (method, run) => withProduct(method, (found) => {
|
|
|
140
160
|
return failure(404, `no sketch on ${parsed.layer}/${parsed.name} in ${found.product.name}`);
|
|
141
161
|
if (typeof sketch === 'string')
|
|
142
162
|
return failure(422, sketch);
|
|
143
|
-
return run(Object.assign(Object.assign({}, found), { sketch }));
|
|
163
|
+
return run(Object.assign(Object.assign({}, found), { asked: stoppingOn(found.asked, found.asked.signal), sketch }));
|
|
144
164
|
});
|
|
145
165
|
const problemOf = ({ target, problem }) => ({
|
|
146
166
|
rule: problem.rule,
|
|
@@ -160,7 +180,21 @@ const variantChangesOf = ({ current, drawn }) => ({
|
|
|
160
180
|
dropped: current.states.filter((state) => !drawn.states.includes(state)),
|
|
161
181
|
note: drawn.note === current.note ? null : { before: current.note, after: drawn.note },
|
|
162
182
|
});
|
|
163
|
-
|
|
183
|
+
/** Maps `items` one after another, letting the server answer other requests before each, and stops once `signal` aborts. */
|
|
184
|
+
const inTurns = (_a, run_1) => __awaiter(void 0, [_a, run_1], void 0, function* ({ items, signal }, run) {
|
|
185
|
+
const results = [];
|
|
186
|
+
for (const item of items) {
|
|
187
|
+
yield (0, promises_1.setImmediate)();
|
|
188
|
+
signal === null || signal === void 0 ? void 0 : signal.throwIfAborted();
|
|
189
|
+
results.push(yield run(item));
|
|
190
|
+
}
|
|
191
|
+
return results;
|
|
192
|
+
});
|
|
193
|
+
const keptOf = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
194
|
+
const unchanged = options.problem ? null : yield (0, unchanged_states_1.keptUnchangedStatesOf)(options);
|
|
195
|
+
return unchanged ? { unchanged } : {};
|
|
196
|
+
});
|
|
197
|
+
const partTargetsOf = (_a) => __awaiter(void 0, [_a], void 0, function* ({ product, sketch, part, load, pictureOf, signal, compare, }) {
|
|
164
198
|
var _b;
|
|
165
199
|
const currentFile = (_b = product.parts.find((entry) => (0, resolve_product_1.partKeyOf)(entry) === part)) === null || _b === void 0 ? void 0 : _b.file;
|
|
166
200
|
const current = currentFile && load
|
|
@@ -170,7 +204,7 @@ const partTargetsOf = (_a) => __awaiter(void 0, [_a], void 0, function* ({ produ
|
|
|
170
204
|
load: () => load({ file: currentFile, product: product.name, sketch: null }),
|
|
171
205
|
})
|
|
172
206
|
: null;
|
|
173
|
-
return
|
|
207
|
+
return inTurns({ items: sketch.variants, signal }, (variant) => __awaiter(void 0, void 0, void 0, function* () {
|
|
174
208
|
var _a;
|
|
175
209
|
const file = (_a = (0, overlay_1.overlaySketch)({ product, sketch, variant }).parts.find((entry) => (0, resolve_product_1.partKeyOf)(entry) === part)) === null || _a === void 0 ? void 0 : _a.file;
|
|
176
210
|
if (!file || !load)
|
|
@@ -181,50 +215,116 @@ const partTargetsOf = (_a) => __awaiter(void 0, [_a], void 0, function* ({ produ
|
|
|
181
215
|
product: product.name,
|
|
182
216
|
load: () => load({ file, product: product.name, sketch: { target: sketch.target, variant } }),
|
|
183
217
|
}), { states, interactions, problem, note } = _b, widths = __rest(_b, ["states", "interactions", "problem", "note"]);
|
|
184
|
-
return Object.assign(Object.assign(Object.assign(Object.assign({ part,
|
|
218
|
+
return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ part,
|
|
185
219
|
variant,
|
|
186
|
-
states }, ('widths' in widths ? { widths: widths.widths } : {})), { interactions,
|
|
187
|
-
|
|
188
|
-
:
|
|
220
|
+
states }, ('widths' in widths ? { widths: widths.widths } : {})), { interactions }), (compare
|
|
221
|
+
? {
|
|
222
|
+
unchanged: problem
|
|
223
|
+
? []
|
|
224
|
+
: yield (0, unchanged_states_1.unchangedStatesOf)({ product, sketch, variant, load, pictureOf, keepPictures: true, part }),
|
|
225
|
+
}
|
|
226
|
+
: yield keptOf({ product, sketch, variant, part, pictured: !!pictureOf, problem }))), (problem || !current || current.problem
|
|
189
227
|
? {}
|
|
190
228
|
: { changes: variantChangesOf({ current, drawn: { states, note } }) })), (problem ? { error: problem } : {}));
|
|
191
|
-
}))
|
|
229
|
+
}));
|
|
230
|
+
});
|
|
231
|
+
const targetsOf = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
232
|
+
return (yield inTurns({ items: options.sketch.targets, signal: options.signal }, (part) => partTargetsOf(Object.assign(Object.assign({}, options), { part })))).flat();
|
|
233
|
+
});
|
|
234
|
+
const listingOf = (_a) => __awaiter(void 0, [_a], void 0, function* ({ asked, product, light, signal, }) {
|
|
235
|
+
var _b;
|
|
236
|
+
const { target } = asked;
|
|
237
|
+
const listOnly = light && asked.url.searchParams.get('targets') === 'no';
|
|
238
|
+
const listed = yield (0, sketch_1.listSketchesInTurns)({ productDir: product.dir, product: product.name });
|
|
239
|
+
const sketches = listed.filter((sketch) => typeof sketch !== 'string');
|
|
240
|
+
const checked = light
|
|
241
|
+
? null
|
|
242
|
+
: asked.checkSketches
|
|
243
|
+
? yield asked.checkSketches({ target, product: product.name })
|
|
244
|
+
: (0, check_sketches_1.openSketchListingOf)(product);
|
|
245
|
+
const unreadable = (_b = checked === null || checked === void 0 ? void 0 : checked.unreadable) !== null && _b !== void 0 ? _b : listed.flatMap((sketch) => typeof sketch === 'string' ? [{ rule: 'SKETCH', file: product.dir, message: sketch }] : []);
|
|
246
|
+
return {
|
|
247
|
+
status: 200,
|
|
248
|
+
body: {
|
|
249
|
+
sketches: yield inTurns({ items: sketches, signal }, (sketch) => __awaiter(void 0, void 0, void 0, function* () {
|
|
250
|
+
return (Object.assign(Object.assign(Object.assign(Object.assign({}, sketchOf({ sketch, target })), (checked
|
|
251
|
+
? {
|
|
252
|
+
problems: checked.variants
|
|
253
|
+
.filter((entry) => entry.target === sketch.target)
|
|
254
|
+
.map((entry) => ({
|
|
255
|
+
variant: entry.variant,
|
|
256
|
+
problems: entry.problems.map((p) => problemOf({ target, problem: p })),
|
|
257
|
+
})),
|
|
258
|
+
}
|
|
259
|
+
: {})), (listOnly
|
|
260
|
+
? {}
|
|
261
|
+
: {
|
|
262
|
+
targets: yield targetsOf({
|
|
263
|
+
product,
|
|
264
|
+
sketch,
|
|
265
|
+
load: asked.load,
|
|
266
|
+
pictureOf: asked.pictureOf,
|
|
267
|
+
signal,
|
|
268
|
+
compare: !light,
|
|
269
|
+
}),
|
|
270
|
+
})), { report: (0, sketch_1.readSketchReport)({ checkout: target, sketch }) }));
|
|
271
|
+
})),
|
|
272
|
+
unreadable: unreadable.map((problem) => problemOf({ target, problem })),
|
|
273
|
+
},
|
|
274
|
+
};
|
|
192
275
|
});
|
|
193
|
-
const
|
|
276
|
+
const runningListings = new Map();
|
|
277
|
+
/**
|
|
278
|
+
* Lets the next sketch listing start anew instead of joining one that started before a file changed. A running listing
|
|
279
|
+
* still answers the requests that already joined it.
|
|
280
|
+
*/
|
|
281
|
+
const detachRunningListings = () => runningListings.clear();
|
|
282
|
+
exports.detachRunningListings = detachRunningListings;
|
|
283
|
+
const startedListing = ({ key, asked, product, light, }) => {
|
|
284
|
+
const stop = new AbortController();
|
|
285
|
+
const listing = {
|
|
286
|
+
askers: 0,
|
|
287
|
+
stop,
|
|
288
|
+
answer: listingOf({ asked: stoppingOn(asked, stop.signal), product, light, signal: stop.signal }).finally(() => {
|
|
289
|
+
if (runningListings.get(key) === listing)
|
|
290
|
+
runningListings.delete(key);
|
|
291
|
+
}),
|
|
292
|
+
};
|
|
293
|
+
runningListings.set(key, listing);
|
|
294
|
+
return listing;
|
|
295
|
+
};
|
|
194
296
|
/**
|
|
195
297
|
* The open sketches of `?product=`, each with its target parts (`targetParts`, the first one first), variants, status,
|
|
196
298
|
* decision, the rule problems of every variant, the states, widths and interactions of each target part as each variant
|
|
197
299
|
* draws it (`targets`, one entry per part and variant, tagged with `part`, the first part's entries first), with the states it
|
|
198
300
|
* draws the same as the product now (`unchanged`), the states it adds and drops and its part note when that differs
|
|
199
301
|
* from the product's (`changes`), and the live report
|
|
200
|
-
* of the agent (`report`, `null` when none runs). `?unchanged=no`
|
|
201
|
-
*
|
|
302
|
+
* of the agent (`report`, `null` when none runs). `?unchanged=no` answers without `problems`, and with the `unchanged` of a target only
|
|
303
|
+
* while a full listing's comparison of the same sources is kept: no rule check, no pictures. `&targets=no` also leaves out `targets`: no part module loads.
|
|
304
|
+
* A listing asked while the same one runs gets that one's answer, unless `detachRunningListings` ran since it started; it stops when every client that asked for it has closed its request.
|
|
305
|
+
* Each listing first runs the held automatic merges whose uncommitted files are gone.
|
|
202
306
|
*/
|
|
203
|
-
exports.sketchesAnswer = withProduct('GET', (
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
const
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
})), targets: yield targetsOf({
|
|
217
|
-
product,
|
|
218
|
-
sketch,
|
|
219
|
-
load: asked.load,
|
|
220
|
-
pictureOf: asked.pictureOf,
|
|
221
|
-
skipUnchanged: asked.url.searchParams.get('unchanged') === 'no',
|
|
222
|
-
}), report: (0, sketch_1.readSketchReport)({ checkout: target, sketch }) }));
|
|
223
|
-
}))),
|
|
224
|
-
unreadable: unreadable.map((problem) => problemOf({ target, problem })),
|
|
225
|
-
},
|
|
307
|
+
exports.sketchesAnswer = withProduct('GET', ({ asked, config, product }) => {
|
|
308
|
+
var _a, _b;
|
|
309
|
+
(0, sketch_command_1.retriedHeldMerges)({ target: asked.target, config });
|
|
310
|
+
const light = asked.url.searchParams.get('unchanged') === 'no';
|
|
311
|
+
const key = JSON.stringify([asked.target, product.name, light, asked.url.searchParams.get('targets') === 'no']);
|
|
312
|
+
const listing = (_a = runningListings.get(key)) !== null && _a !== void 0 ? _a : startedListing({ key, asked, product, light });
|
|
313
|
+
const leave = () => {
|
|
314
|
+
listing.askers -= 1;
|
|
315
|
+
if (listing.askers > 0)
|
|
316
|
+
return;
|
|
317
|
+
listing.stop.abort();
|
|
318
|
+
if (runningListings.get(key) === listing)
|
|
319
|
+
runningListings.delete(key);
|
|
226
320
|
};
|
|
227
|
-
|
|
321
|
+
listing.askers += 1;
|
|
322
|
+
if ((_b = asked.signal) === null || _b === void 0 ? void 0 : _b.aborted)
|
|
323
|
+
leave();
|
|
324
|
+
else if (asked.signal)
|
|
325
|
+
(0, rxjs_1.fromEvent)(asked.signal, 'abort').pipe((0, rxjs_1.take)(1)).subscribe(leave);
|
|
326
|
+
return listing.answer;
|
|
327
|
+
});
|
|
228
328
|
/** `?product=&sketch=<layer>/<name>&variant=`: the parts a merge of that variant changes and the elements and pages that show them. */
|
|
229
329
|
exports.sketchPreviewAnswer = withSketch('GET', ({ asked, product, sketch }) => {
|
|
230
330
|
var _a;
|
|
@@ -255,7 +355,7 @@ exports.sketchCompareAnswer = withSketch('GET', (_a) => __awaiter(void 0, [_a],
|
|
|
255
355
|
size: asked.url.searchParams.get('size'),
|
|
256
356
|
params: asked.url.searchParams,
|
|
257
357
|
pictureOf,
|
|
258
|
-
load
|
|
358
|
+
load,
|
|
259
359
|
}),
|
|
260
360
|
};
|
|
261
361
|
}));
|
|
@@ -266,7 +366,7 @@ exports.sketchCompareAnswer = withSketch('GET', (_a) => __awaiter(void 0, [_a],
|
|
|
266
366
|
exports.sketchDiffAnswer = withSketch('GET', (_a) => __awaiter(void 0, [_a], void 0, function* ({ asked, product, sketch }) {
|
|
267
367
|
var _b, _c;
|
|
268
368
|
const variant = (_b = asked.url.searchParams.get('variant')) !== null && _b !== void 0 ? _b : '';
|
|
269
|
-
const part = (_c = asked.url.searchParams.get('part')) !== null && _c !== void 0 ? _c : sketch.
|
|
369
|
+
const part = (_c = asked.url.searchParams.get('part')) !== null && _c !== void 0 ? _c : sketch.targets[0];
|
|
270
370
|
const { load, pictureOf, boxOf } = asked;
|
|
271
371
|
if (!sketch.variants.includes(variant))
|
|
272
372
|
return failure(404, `${sketch.target} has no variant "${variant}"`);
|
|
@@ -328,6 +428,7 @@ exports.sketchDecisionAnswer = withSketch('POST', (_a) => __awaiter(void 0, [_a]
|
|
|
328
428
|
const comment = textOf(body === null || body === void 0 ? void 0 : body['comment']);
|
|
329
429
|
const reason = textOf(body === null || body === void 0 ? void 0 : body['reason']);
|
|
330
430
|
const variant = (_b = textOf(body === null || body === void 0 ? void 0 : body['variant'])) !== null && _b !== void 0 ? _b : '';
|
|
431
|
+
const studioOrigin = (0, write_origin_1.originOf)('designer', `POST ${exports.SKETCH_DECISION_PATH}`);
|
|
331
432
|
if (!SKETCH_DECISION_KINDS.includes(kind))
|
|
332
433
|
return failure(400, `kind must be one of ${SKETCH_DECISION_KINDS.join(', ')}`);
|
|
333
434
|
if (kind !== 'discard' && !variant)
|
|
@@ -335,8 +436,8 @@ exports.sketchDecisionAnswer = withSketch('POST', (_a) => __awaiter(void 0, [_a]
|
|
|
335
436
|
if (kind === 'reason' && !reason)
|
|
336
437
|
return failure(400, 'a reason needs text');
|
|
337
438
|
const decision = kind === 'discard'
|
|
338
|
-
? Object.assign({ kind }, (comment ? { comment } : {})) : kind === 'pick'
|
|
339
|
-
? Object.assign({ kind, variant }, (comment ? { comment } : {})) : { kind, variant, reason: reason !== null && reason !== void 0 ? reason : '', by: 'designer' };
|
|
439
|
+
? Object.assign(Object.assign({ kind }, (comment ? { comment } : {})), studioOrigin) : kind === 'pick'
|
|
440
|
+
? Object.assign(Object.assign({ kind, variant }, (comment ? { comment } : {})), studioOrigin) : { kind, variant, reason: reason !== null && reason !== void 0 ? reason : '', by: 'designer' };
|
|
340
441
|
const decided = (0, sketch_1.decideSketch)({ sketch, decision });
|
|
341
442
|
return typeof decided === 'string'
|
|
342
443
|
? failure(422, decided)
|
|
@@ -344,14 +445,25 @@ exports.sketchDecisionAnswer = withSketch('POST', (_a) => __awaiter(void 0, [_a]
|
|
|
344
445
|
}));
|
|
345
446
|
/**
|
|
346
447
|
* POST `?product=&sketch=`, body `{ note? }`: merges the picked variant into the product, as `et design sketch merge` does.
|
|
347
|
-
* A merge refused for a stale baseline answers 422 with `changed` (the parts, `[]` without a baseline) and the `rebase` command
|
|
448
|
+
* A merge refused for a stale baseline answers 422 with `changed` (the parts, `[]` without a baseline) and the `rebase` command;
|
|
449
|
+
* one the check fails after answers 422 with reason `check-failed` and the check's `findings` lines.
|
|
348
450
|
*/
|
|
349
|
-
exports.sketchMergeAnswer = withSketch('POST', (_a) => __awaiter(void 0, [_a], void 0, function* ({ asked,
|
|
451
|
+
exports.sketchMergeAnswer = withSketch('POST', (_a) => __awaiter(void 0, [_a], void 0, function* ({ asked, product, sketch }) {
|
|
350
452
|
const body = yield bodyOf(asked.request);
|
|
351
453
|
const note = textOf(body === null || body === void 0 ? void 0 : body['note']);
|
|
352
|
-
const
|
|
454
|
+
const refused = (0, merge_1.mergeRefusalOf)({ product, sketch });
|
|
455
|
+
if (refused !== null)
|
|
456
|
+
return failure(422, refused);
|
|
457
|
+
const merged = yield (0, merge_runner_1.mergeInWorker)({ target: asked.target, product: product.name, sketch, note });
|
|
353
458
|
if (Array.isArray(merged))
|
|
354
459
|
return { status: 200, body: { merged } };
|
|
460
|
+
if (merged.findings)
|
|
461
|
+
return refusal({
|
|
462
|
+
status: 422,
|
|
463
|
+
reason: 'check-failed',
|
|
464
|
+
message: merged.reason,
|
|
465
|
+
extra: { findings: merged.findings },
|
|
466
|
+
});
|
|
355
467
|
if (!merged.changed)
|
|
356
468
|
return failure(422, merged.reason);
|
|
357
469
|
return {
|
|
@@ -368,9 +480,22 @@ exports.sketchDiscardAnswer = withSketch('POST', ({ asked, sketch }) => {
|
|
|
368
480
|
const problem = (0, merge_1.discardSketch)({ target: asked.target, sketch });
|
|
369
481
|
return problem ? failure(422, problem) : { status: 200, body: { discarded: sketch.target } };
|
|
370
482
|
});
|
|
483
|
+
const userNameOf = (dir) => {
|
|
484
|
+
try {
|
|
485
|
+
return ((0, child_process_1.execFileSync)('git', ['config', 'user.name'], {
|
|
486
|
+
cwd: dir,
|
|
487
|
+
encoding: 'utf8',
|
|
488
|
+
stdio: ['ignore', 'pipe', 'ignore'],
|
|
489
|
+
}).trim() || null);
|
|
490
|
+
}
|
|
491
|
+
catch (_a) {
|
|
492
|
+
return null;
|
|
493
|
+
}
|
|
494
|
+
};
|
|
371
495
|
/**
|
|
372
496
|
* `?product=[&part=<layer>/<name>]`: every comment with its `replies`, oldest first, each with the reason it
|
|
373
|
-
* is stale or `null`, its `threadState` (`agent`, `question` or `answered`) and, once closed, its `resolved
|
|
497
|
+
* is stale or `null`, its `threadState` (`agent`, `question` or `answered`) and, once closed, its `resolved`; `userName` is
|
|
498
|
+
* the `git config user.name` of the checkout, or `null`.
|
|
374
499
|
*/
|
|
375
500
|
exports.commentsAnswer = withProduct('GET', ({ asked, product }) => {
|
|
376
501
|
const part = asked.url.searchParams.get('part');
|
|
@@ -382,6 +507,7 @@ exports.commentsAnswer = withProduct('GET', ({ asked, product }) => {
|
|
|
382
507
|
.filter((comment) => !part || comment.part === part)
|
|
383
508
|
.map((comment) => commentOf({ comment, target: asked.target, product })),
|
|
384
509
|
unreadable: unreadable.map(({ file, problem }) => ({ file: (0, path_1.relative)(asked.target, file), problem })),
|
|
510
|
+
userName: userNameOf(product.dir),
|
|
385
511
|
},
|
|
386
512
|
};
|
|
387
513
|
});
|
|
@@ -577,18 +703,20 @@ exports.exceptionApproveAnswer = withProduct('POST', (_a) => __awaiter(void 0, [
|
|
|
577
703
|
}));
|
|
578
704
|
const knownPartOf = (product, part) => {
|
|
579
705
|
if (typeof part !== 'string' || part === '')
|
|
580
|
-
return
|
|
706
|
+
return refusal({ status: 400, reason: 'part-missing', message: 'part is required' });
|
|
581
707
|
return product.parts.some((candidate) => (0, resolve_product_1.partKeyOf)(candidate) === part)
|
|
582
708
|
? part
|
|
583
|
-
:
|
|
709
|
+
: refusal({ status: 404, reason: 'unknown-part', message: `product "${product.name}" has no part "${part}"` });
|
|
584
710
|
};
|
|
585
|
-
const
|
|
586
|
-
const
|
|
587
|
-
return 'unavailable' in
|
|
711
|
+
const drawnFindingsAnswerOf = (_a, part_1) => __awaiter(void 0, [_a, part_1], void 0, function* ({ asked, config, product }, part) {
|
|
712
|
+
const findings = yield (0, drawn_open_points_1.drawnFindingsOf)({ target: asked.target, config, product, parts: [part] });
|
|
713
|
+
return 'unavailable' in findings ? { status: 503, error: `cannot draw ${part}: ${findings.unavailable}` } : findings;
|
|
588
714
|
});
|
|
589
715
|
/**
|
|
590
716
|
* GET `?product=&part=&draw=`: the open points of one part, or of every part without `part`. Contrasts and missing
|
|
591
717
|
* control states need a draw: only `draw=true` with a `part` lists them, and `drawn` says whether they are in.
|
|
718
|
+
* `directEdit` says whether the merged part changed outside a sketch and waits for an accept; `buildReady` whether the
|
|
719
|
+
* part may be built now, or its blockers.
|
|
592
720
|
*/
|
|
593
721
|
exports.openPointsAnswer = withProduct('GET', (found) => __awaiter(void 0, void 0, void 0, function* () {
|
|
594
722
|
const { url } = found.asked;
|
|
@@ -599,42 +727,18 @@ exports.openPointsAnswer = withProduct('GET', (found) => __awaiter(void 0, void
|
|
|
599
727
|
if (asked === null) {
|
|
600
728
|
if (draw === 'true')
|
|
601
729
|
return failure(400, 'draw needs a part');
|
|
602
|
-
return {
|
|
730
|
+
return {
|
|
731
|
+
status: 200,
|
|
732
|
+
body: Object.assign({ drawn: false }, (yield (0, open_points_runner_1.openPointsInWorker)({ product: found.product, part: null }))),
|
|
733
|
+
};
|
|
603
734
|
}
|
|
604
735
|
const part = knownPartOf(found.product, asked);
|
|
605
736
|
if (typeof part !== 'string')
|
|
606
737
|
return part;
|
|
607
|
-
const
|
|
608
|
-
if (
|
|
609
|
-
return failure(
|
|
610
|
-
const
|
|
611
|
-
|
|
612
|
-
const ready = (0, part_ready_1.readyMarkOf)({ product: found.product, part });
|
|
613
|
-
return { status: 200, body: { part, hash, ready, drawn: draw === 'true', points } };
|
|
614
|
-
}));
|
|
615
|
-
/**
|
|
616
|
-
* POST `?product=`, body `{ part, hash, by }`: marks a part ready at the hash Studio showed. It draws the part and
|
|
617
|
-
* refuses with 422 and the `points` while its open-point list is not empty.
|
|
618
|
-
*/
|
|
619
|
-
exports.partReadyAnswer = withProduct('POST', (found) => __awaiter(void 0, void 0, void 0, function* () {
|
|
620
|
-
const body = yield bodyOf(found.asked.request);
|
|
621
|
-
if (!body)
|
|
622
|
-
return failure(400, 'the body must be a JSON object');
|
|
623
|
-
const part = knownPartOf(found.product, body['part']);
|
|
624
|
-
if (typeof part !== 'string')
|
|
625
|
-
return part;
|
|
626
|
-
const marked = yield (0, part_ready_1.markPartReady)({
|
|
627
|
-
product: found.product,
|
|
628
|
-
part,
|
|
629
|
-
hash: body['hash'],
|
|
630
|
-
by: body['by'],
|
|
631
|
-
pointsOf: () => drawnPointsOf(found, part),
|
|
632
|
-
});
|
|
633
|
-
if ('status' in marked)
|
|
634
|
-
return {
|
|
635
|
-
status: marked.status,
|
|
636
|
-
body: Object.assign({ error: marked.error }, (marked.points ? { points: marked.points } : {})),
|
|
637
|
-
};
|
|
638
|
-
return { status: 200, body: { part, hash: marked.hash, ready: marked, points: [] } };
|
|
738
|
+
const findings = draw === 'true' ? yield drawnFindingsAnswerOf(found, part) : undefined;
|
|
739
|
+
if (findings && 'error' in findings)
|
|
740
|
+
return failure(findings.status, findings.error);
|
|
741
|
+
const answer = yield (0, open_points_runner_1.openPointsInWorker)({ product: found.product, part, findings });
|
|
742
|
+
return { status: 200, body: Object.assign(Object.assign({}, answer), { drawn: draw === 'true' }) };
|
|
639
743
|
}));
|
|
640
744
|
//# sourceMappingURL=studio-api.js.map
|