nudge-ui 0.2.4 → 0.2.6
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/dist/cli/agentCommand.d.ts +0 -1
- package/dist/cli/agentCommand.js +4 -29
- package/dist/client.mjs +987 -221
- package/dist/compiler/ast.d.ts +0 -6
- package/dist/compiler/ast.js +0 -5
- package/dist/compiler/componentContractTypes.d.ts +11 -5
- package/dist/compiler/componentContracts.js +3 -9
- package/dist/compiler/componentInstrumentation.d.ts +2 -13
- package/dist/compiler/componentInstrumentation.js +3 -12
- package/dist/compiler/componentPolicyResolution.d.ts +3 -22
- package/dist/compiler/componentPolicyResolution.js +6 -38
- package/dist/compiler/identityAttributes.d.ts +2 -0
- package/dist/compiler/identityAttributes.js +2 -0
- package/dist/compiler/index.d.ts +0 -1
- package/dist/compiler/index.js +0 -1
- package/dist/compiler/packageComponentContracts.d.ts +10 -19
- package/dist/compiler/packageComponentContracts.js +60 -43
- package/dist/compiler/reactComponentProtocols.d.ts +0 -7
- package/dist/compiler/reactComponentProtocols.js +0 -7
- package/dist/compiler/reactIdentity.d.ts +2 -2
- package/dist/compiler/reactIdentity.js +41 -43
- package/dist/compiler/sourcePaths.d.ts +4 -8
- package/dist/compiler/sourcePaths.js +6 -8
- package/dist/css/dialects/index.d.ts +2 -21
- package/dist/css/dialects/index.js +2 -9
- package/dist/css/dialects/tailwind.d.ts +2 -16
- package/dist/css/dialects/tailwind.js +2 -25
- package/dist/css/dialects/vanillaExtract.d.ts +1 -9
- package/dist/css/dialects/vanillaExtract.js +0 -1
- package/dist/css/index.d.ts +0 -8
- package/dist/css/index.js +0 -8
- package/dist/css/model/index.d.ts +6 -38
- package/dist/css/model/index.js +0 -9
- package/dist/css/token-inventory/index.d.ts +0 -23
- package/dist/css/token-inventory/index.js +0 -23
- package/dist/css/token-inventory/inventory.js +4 -16
- package/dist/css/token-inventory/parseStylesheet.d.ts +1 -9
- package/dist/css/token-inventory/parseStylesheet.js +5 -42
- package/dist/css/token-inventory/policy.d.ts +2 -39
- package/dist/css/token-inventory/policy.js +2 -39
- package/dist/css/token-inventory/types.d.ts +2 -15
- package/dist/css/value-semantics/borderSemantics.d.ts +1 -8
- package/dist/css/value-semantics/borderSemantics.js +5 -23
- package/dist/css/value-semantics/boxSemantics.d.ts +2 -25
- package/dist/css/value-semantics/boxSemantics.js +1 -7
- package/dist/css/value-semantics/colorSemantics.d.ts +6 -60
- package/dist/css/value-semantics/colorSemantics.js +9 -40
- package/dist/css/value-semantics/cssSyntax.d.ts +10 -10
- package/dist/css/value-semantics/cssSyntax.js +39 -11
- package/dist/css/value-semantics/fontSemantics.d.ts +3 -19
- package/dist/css/value-semantics/fontSemantics.js +7 -25
- package/dist/css/value-semantics/index.d.ts +1 -12
- package/dist/css/value-semantics/index.js +1 -12
- package/dist/css/value-semantics/propertyPolicy.d.ts +6 -53
- package/dist/css/value-semantics/propertyPolicy.js +47 -59
- package/dist/css/value-semantics/stringMaps.d.ts +0 -1
- package/dist/css/value-semantics/structuredValues.d.ts +3 -37
- package/dist/css/value-semantics/structuredValues.js +6 -17
- package/dist/css/value-semantics/tokenInterpretation.d.ts +8 -50
- package/dist/css/value-semantics/tokenInterpretation.js +7 -21
- package/dist/hosts/astro/astroRuntimeConfig.d.ts +0 -1
- package/dist/hosts/astro/astroRuntimeConfig.js +0 -1
- package/dist/hosts/astro/clientAsset.d.ts +1 -5
- package/dist/hosts/astro/clientAsset.js +1 -5
- package/dist/hosts/astro/clientTransport.d.ts +0 -1
- package/dist/hosts/astro/clientTransport.js +4 -9
- package/dist/hosts/astro/integration.d.ts +2 -28
- package/dist/hosts/astro/integration.js +7 -36
- package/dist/hosts/astro/markdownIdentity.d.ts +0 -3
- package/dist/hosts/astro/markdownIdentity.js +0 -3
- package/dist/hosts/astro/middleware.d.ts +1 -12
- package/dist/hosts/astro/middleware.js +1 -12
- package/dist/hosts/astro/projectContext.d.ts +1 -9
- package/dist/hosts/astro/projectContext.js +2 -11
- package/dist/hosts/astro/responseInstrumentation.d.ts +4 -33
- package/dist/hosts/astro/responseInstrumentation.js +5 -34
- package/dist/hosts/environment.d.ts +0 -8
- package/dist/hosts/environment.js +0 -1
- package/dist/hosts/next/index.js +1 -3
- package/dist/hosts/next/loader.d.ts +5 -44
- package/dist/hosts/next/loader.js +22 -103
- package/dist/hosts/next/loaders/identity-loader.cjs +111 -65
- package/dist/hosts/next/loaders/loader-plugin.cjs +111 -65
- package/dist/hosts/next/manifest.d.ts +2 -16
- package/dist/hosts/next/manifest.js +18 -20
- package/dist/hosts/next/mount.d.ts +1 -11
- package/dist/hosts/next/mount.js +1 -11
- package/dist/hosts/next/repositoryScope.d.ts +2 -17
- package/dist/hosts/next/repositoryScope.js +2 -17
- package/dist/hosts/next/sidecar.d.ts +0 -13
- package/dist/hosts/next/sidecar.js +25 -110
- package/dist/hosts/next/wrapper.d.ts +0 -31
- package/dist/hosts/next/wrapper.js +14 -71
- package/dist/hosts/projectBridge.d.ts +0 -2
- package/dist/hosts/projectBridge.js +3 -19
- package/dist/hosts/reactRendererCapture.d.ts +2 -0
- package/dist/hosts/reactRendererCapture.js +12 -0
- package/dist/hosts/static/cli.d.ts +0 -4
- package/dist/hosts/static/cli.js +0 -3
- package/dist/hosts/static/html/bootstrap.d.ts +1 -18
- package/dist/hosts/static/html/bootstrap.js +2 -14
- package/dist/hosts/static/manifest.d.ts +2 -15
- package/dist/hosts/static/manifest.js +5 -18
- package/dist/hosts/static/server.d.ts +4 -38
- package/dist/hosts/static/server.js +17 -67
- package/dist/hosts/vite/index.d.ts +0 -10
- package/dist/hosts/vite/index.js +0 -10
- package/dist/hosts/vite/react.d.ts +4 -17
- package/dist/hosts/vite/react.js +18 -35
- package/dist/hosts/vite/tokens/activeStylesheets.d.ts +1 -10
- package/dist/hosts/vite/tokens/activeStylesheets.js +3 -8
- package/dist/hosts/vite/tokens/fileMap.d.ts +0 -1
- package/dist/hosts/vite/tokens/viteStylesheetArtifacts.d.ts +2 -15
- package/dist/hosts/vite/tokens/viteStylesheetArtifacts.js +3 -10
- package/dist/hosts/vite/vite.d.ts +5 -26
- package/dist/hosts/vite/vite.js +44 -80
- package/dist/html/dom.d.ts +0 -1
- package/dist/html/dom.js +0 -1
- package/dist/html/identity.d.ts +1 -15
- package/dist/html/identity.js +1 -8
- package/dist/html/insertions.d.ts +2 -8
- package/dist/html/insertions.js +1 -1
- package/dist/inspector/agent/McpConnectionDialog.d.ts +1 -6
- package/dist/inspector/agent/McpConnectionDialog.js +8 -9
- package/dist/inspector/agent/activity.d.ts +2 -2
- package/dist/inspector/agent/activity.js +4 -3
- package/dist/inspector/agent/client.d.ts +3 -27
- package/dist/inspector/agent/client.js +43 -91
- package/dist/inspector/agent/connectionStatus.d.ts +3 -2
- package/dist/inspector/agent/connectionStatus.js +25 -1
- package/dist/inspector/agent/httpTransport.d.ts +0 -8
- package/dist/inspector/agent/httpTransport.js +42 -176
- package/dist/inspector/agent/protocol.d.ts +1 -10
- package/dist/inspector/agent/protocol.js +1 -9
- package/dist/inspector/agent/verification.d.ts +3 -20
- package/dist/inspector/agent/verification.js +10 -43
- package/dist/inspector/boot.d.ts +5 -0
- package/dist/inspector/boot.js +289 -0
- package/dist/inspector/canvas/AgentActivityOverlay.d.ts +3 -2
- package/dist/inspector/canvas/AgentActivityOverlay.js +7 -4
- package/dist/inspector/canvas/CanvasCard.js +26 -24
- package/dist/inspector/canvas/CanvasElementOverlay.js +196 -174
- package/dist/inspector/canvas/CanvasToolbar.js +2 -1
- package/dist/inspector/canvas/CanvasWorkspace.js +87 -124
- package/dist/inspector/canvas/LockedWorkspaceNotice.d.ts +3 -2
- package/dist/inspector/canvas/LockedWorkspaceNotice.js +10 -6
- package/dist/inspector/canvas/PageCard.d.ts +9 -0
- package/dist/inspector/canvas/PageCard.js +50 -0
- package/dist/inspector/canvas/SketchToolOptions.d.ts +4 -0
- package/dist/inspector/canvas/SketchToolOptions.js +80 -0
- package/dist/inspector/canvas/StaleChangeIndicator.d.ts +1 -1
- package/dist/inspector/canvas/StaleChangeIndicator.js +1 -1
- package/dist/inspector/canvas/ToolOptionsDrawer.d.ts +16 -0
- package/dist/inspector/canvas/ToolOptionsDrawer.js +71 -0
- package/dist/inspector/canvas/activeCanvasDocument.d.ts +3 -4
- package/dist/inspector/canvas/activeCanvasDocument.js +0 -2
- package/dist/inspector/canvas/agentPresentation.d.ts +2 -13
- package/dist/inspector/canvas/agentPresentation.js +3 -14
- package/dist/inspector/canvas/assets/eraser.svg +28 -0
- package/dist/inspector/canvas/assets/pen.svg +25 -0
- package/dist/inspector/canvas/canvasFrame.d.ts +12 -0
- package/dist/inspector/canvas/canvasFrame.js +9 -0
- package/dist/inspector/canvas/canvasGestures.d.ts +0 -1
- package/dist/inspector/canvas/canvasGestures.js +0 -6
- package/dist/inspector/canvas/canvasResize.d.ts +1 -6
- package/dist/inspector/canvas/canvasResize.js +1 -6
- package/dist/inspector/canvas/canvasStore.d.ts +5 -7
- package/dist/inspector/canvas/canvasStore.js +42 -21
- package/dist/inspector/canvas/frameConnection.d.ts +42 -0
- package/dist/inspector/canvas/frameConnection.js +73 -0
- package/dist/inspector/canvas/frameContent.d.ts +0 -1
- package/dist/inspector/canvas/frameLifecycle.d.ts +12 -0
- package/dist/inspector/canvas/frameLifecycle.js +11 -0
- package/dist/inspector/canvas/frameProtocol.d.ts +20 -38
- package/dist/inspector/canvas/frameProtocol.js +37 -24
- package/dist/inspector/canvas/frameScrollbarStyles.d.ts +0 -1
- package/dist/inspector/canvas/frameScrollbarStyles.js +0 -1
- package/dist/inspector/canvas/layout.d.ts +10 -22
- package/dist/inspector/canvas/layout.js +0 -3
- package/dist/inspector/canvas/normalizeUrl.js +1 -8
- package/dist/inspector/canvas/pageSurface.d.ts +6 -0
- package/dist/inspector/canvas/pageSurface.js +29 -0
- package/dist/inspector/canvas/projection.d.ts +14 -25
- package/dist/inspector/canvas/projection.js +64 -87
- package/dist/inspector/canvas/rendererBootstrap.d.ts +8 -1
- package/dist/inspector/canvas/rendererBootstrap.js +10 -15
- package/dist/inspector/canvas/rendererCidIndex.d.ts +0 -5
- package/dist/inspector/canvas/rendererCidIndex.js +0 -5
- package/dist/inspector/canvas/rendererElementSelector.js +38 -28
- package/dist/inspector/canvas/rendererMessageRouter.d.ts +4 -6
- package/dist/inspector/canvas/rendererMessageRouter.js +12 -17
- package/dist/inspector/canvas/rendererSelectionProxy.d.ts +3 -1
- package/dist/inspector/canvas/rendererSelectionProxy.js +7 -40
- package/dist/inspector/canvas/rendererStylesheet.d.ts +0 -1
- package/dist/inspector/canvas/rendererStylesheet.js +23 -1
- package/dist/inspector/canvas/resizeHandleScale.d.ts +1 -10
- package/dist/inspector/canvas/resizeHandleScale.js +1 -10
- package/dist/inspector/canvas/sessionStore.d.ts +3 -9
- package/dist/inspector/canvas/sessionStore.js +33 -43
- package/dist/inspector/canvas/staleChangeDetector.d.ts +1 -1
- package/dist/inspector/canvas/staleChangeDetector.js +11 -26
- package/dist/inspector/canvas/toolbarScale.d.ts +1 -4
- package/dist/inspector/canvas/toolbarScale.js +1 -4
- package/dist/inspector/canvas/useCanvasLayoutAnimation.d.ts +0 -1
- package/dist/inspector/canvas/useCanvasLayoutAnimation.js +0 -1
- package/dist/inspector/canvas/viewStore.js +1 -1
- package/dist/inspector/canvas/wheelPan.d.ts +1 -1
- package/dist/inspector/canvas/wheelPan.js +1 -1
- package/dist/inspector/canvas/workspaceLease.d.ts +1 -5
- package/dist/inspector/canvas/workspaceLease.js +1 -7
- package/dist/inspector/changes/codecs.d.ts +1 -0
- package/dist/inspector/changes/codecs.js +21 -5
- package/dist/inspector/changes/draftPreview.d.ts +7 -0
- package/dist/inspector/changes/draftPreview.js +118 -0
- package/dist/inspector/changes/editModel.d.ts +11 -13
- package/dist/inspector/changes/editModel.js +9 -4
- package/dist/inspector/changes/managedStyleProjection.js +6 -15
- package/dist/inspector/changes/model.d.ts +0 -5
- package/dist/inspector/changes/model.js +1 -8
- package/dist/inspector/changes/previewDiagnostics.d.ts +2 -12
- package/dist/inspector/changes/previewDiagnostics.js +5 -21
- package/dist/inspector/changes/previewVerification.d.ts +25 -0
- package/dist/inspector/changes/previewVerification.js +34 -0
- package/dist/inspector/changes/structuralTypes.d.ts +2 -4
- package/dist/inspector/changes/types.d.ts +11 -8
- package/dist/inspector/clientManifest.d.ts +17 -6
- package/dist/inspector/clientManifest.js +16 -3
- package/dist/inspector/comments/CommentsOverlay.js +66 -23
- package/dist/inspector/comments/element.d.ts +1 -2
- package/dist/inspector/comments/element.js +1 -2
- package/dist/inspector/comments/store.d.ts +1 -1
- package/dist/inspector/comments/store.js +4 -3
- package/dist/inspector/comments/verification.d.ts +8 -2
- package/dist/inspector/comments/verification.js +19 -11
- package/dist/inspector/componentSemantics/ComponentPropsSection.d.ts +8 -0
- package/dist/inspector/componentSemantics/ComponentPropsSection.js +12 -8
- package/dist/inspector/componentSemantics/adapterRegistry.d.ts +2 -9
- package/dist/inspector/componentSemantics/adapterRegistry.js +2 -9
- package/dist/inspector/componentSemantics/changeAction.js +1 -1
- package/dist/inspector/componentSemantics/changeModel.js +2 -4
- package/dist/inspector/componentSemantics/react/callsites.d.ts +28 -0
- package/dist/inspector/componentSemantics/react/callsites.js +261 -0
- package/dist/inspector/componentSemantics/react/devtoolsHook.d.ts +23 -0
- package/dist/inspector/componentSemantics/react/devtoolsHook.js +71 -0
- package/dist/inspector/componentSemantics/react/fibers.d.ts +17 -0
- package/dist/inspector/componentSemantics/react/fibers.js +30 -0
- package/dist/inspector/componentSemantics/{reactRuntime.d.ts → react/runtime.d.ts} +3 -2
- package/dist/inspector/componentSemantics/{reactRuntime.js → react/runtime.js} +70 -53
- package/dist/inspector/componentSemantics/runtimeBridge.d.ts +2 -18
- package/dist/inspector/componentSemantics/runtimeBridge.js +5 -19
- package/dist/inspector/componentSemantics/textBinding.d.ts +2 -11
- package/dist/inspector/componentSemantics/textBinding.js +20 -87
- package/dist/inspector/componentSemantics/types.d.ts +8 -27
- package/dist/inspector/componentSemantics/types.js +0 -1
- package/dist/inspector/conformance/borderCases.d.ts +0 -5
- package/dist/inspector/conformance/borderCases.js +0 -5
- package/dist/inspector/conformance/colorCases.d.ts +0 -6
- package/dist/inspector/conformance/colorCases.js +0 -6
- package/dist/inspector/conformance/fixture.d.ts +1 -5
- package/dist/inspector/conformance/fixture.js +1 -5
- package/dist/inspector/conformance/spacingCases.d.ts +0 -4
- package/dist/inspector/conformance/spacingCases.js +0 -4
- package/dist/inspector/conformance/typographyCases.d.ts +0 -5
- package/dist/inspector/conformance/typographyCases.js +0 -5
- package/dist/inspector/drafts/draftStore.d.ts +95 -0
- package/dist/inspector/drafts/draftStore.js +461 -0
- package/dist/inspector/drafts/model.d.ts +14 -14
- package/dist/inspector/drafts/model.js +4 -2
- package/dist/inspector/drafts/store.d.ts +47 -16
- package/dist/inspector/drafts/store.js +137 -170
- package/dist/inspector/editScope.d.ts +0 -1
- package/dist/inspector/editScope.js +0 -1
- package/dist/inspector/index.d.ts +2 -4
- package/dist/inspector/index.js +2 -264
- package/dist/inspector/inline-text/inlineTextDiagnostics.d.ts +0 -2
- package/dist/inspector/inline-text/inlineTextDiagnostics.js +0 -2
- package/dist/inspector/inline-text/inlineTextEditor.d.ts +3 -9
- package/dist/inspector/inline-text/inlineTextEditor.js +27 -81
- package/dist/inspector/inline-text/inlineTextLifecycle.js +1 -6
- package/dist/inspector/inline-text/textEditChange.d.ts +1 -2
- package/dist/inspector/inspection/bridge.d.ts +3 -7
- package/dist/inspector/inspection/bridge.js +6 -13
- package/dist/inspector/inspection/browserCssInspection.d.ts +12 -11
- package/dist/inspector/inspection/browserCssInspection.js +32 -14
- package/dist/inspector/inspection/browserCssInspectionRegistry.d.ts +0 -7
- package/dist/inspector/inspection/browserCssInspectionRegistry.js +1 -16
- package/dist/inspector/inspection/inspectionSnapshot.d.ts +6 -0
- package/dist/inspector/inspection/inspectionSnapshot.js +10 -0
- package/dist/inspector/inspection/performanceDiagnostics.d.ts +18 -0
- package/dist/inspector/inspection/performanceDiagnostics.js +31 -0
- package/dist/inspector/inspection/selectionProperty.d.ts +1 -6
- package/dist/inspector/inspection/selectionProperty.js +1 -5
- package/dist/inspector/inspection/useBrowserCssInspection.d.ts +1 -5
- package/dist/inspector/inspection/useBrowserCssInspection.js +22 -59
- package/dist/inspector/iterations/capture.d.ts +2 -2
- package/dist/inspector/iterations/capture.js +4 -9
- package/dist/inspector/iterations/client.d.ts +2 -2
- package/dist/inspector/iterations/client.js +0 -1
- package/dist/inspector/iterations/coordinator.d.ts +4 -4
- package/dist/inspector/iterations/coordinator.js +5 -4
- package/dist/inspector/iterations/prompt.d.ts +0 -1
- package/dist/inspector/iterations/prompt.js +9 -9
- package/dist/inspector/overlay/DomNavigator.d.ts +3 -1
- package/dist/inspector/overlay/DomNavigator.js +39 -15
- package/dist/inspector/overlay/DropGuideOverlay.d.ts +0 -1
- package/dist/inspector/overlay/DropGuideOverlay.js +0 -1
- package/dist/inspector/overlay/MeasurementGuideOverlay.d.ts +1 -8
- package/dist/inspector/overlay/MeasurementGuideOverlay.js +1 -5
- package/dist/inspector/overlay/clickPolicy.d.ts +3 -14
- package/dist/inspector/overlay/clickPolicy.js +3 -14
- package/dist/inspector/overlay/dropGuide.d.ts +0 -3
- package/dist/inspector/overlay/dropGuide.js +0 -3
- package/dist/inspector/overlay/frameThrottle.d.ts +0 -1
- package/dist/inspector/overlay/frameThrottle.js +0 -1
- package/dist/inspector/overlay/interactionStyles.d.ts +1 -1
- package/dist/inspector/overlay/interactionStyles.js +19 -8
- package/dist/inspector/overlay/measurementGeometry.js +4 -12
- package/dist/inspector/overlay/selectedGeometry.d.ts +1 -6
- package/dist/inspector/overlay/selectedGeometry.js +1 -8
- package/dist/inspector/overlay/spacingGestures.d.ts +14 -21
- package/dist/inspector/overlay/spacingGestures.js +151 -31
- package/dist/inspector/overlay/structuralGestures.d.ts +2 -9
- package/dist/inspector/overlay/structuralGestures.js +1 -4
- package/dist/inspector/pageInspector.d.ts +33 -0
- package/dist/inspector/pageInspector.js +335 -0
- package/dist/inspector/projection/cssEscapes.d.ts +0 -1
- package/dist/inspector/projection/cssEscapes.js +2 -4
- package/dist/inspector/projection/draftProjection.d.ts +6 -10
- package/dist/inspector/projection/draftProjection.js +8 -7
- package/dist/inspector/projection/managedStylesheet.d.ts +1 -7
- package/dist/inspector/projection/managedStylesheet.js +28 -26
- package/dist/inspector/projection/renderedInstance.d.ts +5 -28
- package/dist/inspector/projection/renderedInstance.js +13 -33
- package/dist/inspector/projection/structuralProjection.d.ts +7 -48
- package/dist/inspector/projection/structuralProjection.js +31 -96
- package/dist/inspector/projection/textProjection.d.ts +7 -13
- package/dist/inspector/projection/textProjection.js +35 -80
- package/dist/inspector/prompt/PromptSettingsDialog.d.ts +0 -1
- package/dist/inspector/prompt/PromptSettingsDialog.js +0 -1
- package/dist/inspector/prompt/clipboardHandoff.d.ts +1 -0
- package/dist/inspector/prompt/clipboardHandoff.js +34 -16
- package/dist/inspector/prompt/generatePrompt.d.ts +2 -2
- package/dist/inspector/prompt/generatePrompt.js +247 -166
- package/dist/inspector/prompt/promptDocument.d.ts +3 -0
- package/dist/inspector/prompt/promptDocument.js +8 -0
- package/dist/inspector/prompt/promptSettings.d.ts +0 -3
- package/dist/inspector/prompt/promptSettings.js +7 -8
- package/dist/inspector/runtime/devFlag.d.ts +2 -25
- package/dist/inspector/runtime/devFlag.js +4 -31
- package/dist/inspector/runtime/documentStylesheetOrder.d.ts +0 -2
- package/dist/inspector/runtime/editorShell.d.ts +0 -1
- package/dist/inspector/runtime/editorShell.js +0 -1
- package/dist/inspector/runtime/inspectorStorage.d.ts +11 -0
- package/dist/inspector/runtime/inspectorStorage.js +37 -0
- package/dist/inspector/runtime/ownedStylesheets.d.ts +14 -0
- package/dist/inspector/runtime/ownedStylesheets.js +66 -0
- package/dist/inspector/runtime/runtimeConfig.d.ts +14 -84
- package/dist/inspector/runtime/runtimeConfig.js +18 -50
- package/dist/inspector/runtime/runtimeIdentityClaims.d.ts +19 -0
- package/dist/inspector/runtime/runtimeIdentityClaims.js +178 -0
- package/dist/inspector/runtime/staticHtmlRuntimeIdentity.d.ts +6 -23
- package/dist/inspector/runtime/staticHtmlRuntimeIdentity.js +103 -52
- package/dist/inspector/runtime/useRuntimeConfig.d.ts +1 -8
- package/dist/inspector/runtime/useRuntimeConfig.js +1 -8
- package/dist/inspector/selection/editScope.d.ts +2 -7
- package/dist/inspector/selection/editScope.js +15 -14
- package/dist/inspector/selection/editTarget.d.ts +1 -5
- package/dist/inspector/selection/hierarchy.d.ts +11 -11
- package/dist/inspector/selection/hierarchy.js +42 -24
- package/dist/inspector/selection/selectionStore.d.ts +0 -3
- package/dist/inspector/selection/selectionStore.js +5 -16
- package/dist/inspector/selection/sourceSite.d.ts +1 -5
- package/dist/inspector/selection/sourceSite.js +2 -8
- package/dist/inspector/selection/styleSelection.d.ts +1 -5
- package/dist/inspector/selection/styleSelection.js +1 -5
- package/dist/inspector/session/lifecycle.d.ts +1 -9
- package/dist/inspector/session/lifecycle.js +0 -1
- package/dist/inspector/session/sessionContext.d.ts +0 -4
- package/dist/inspector/session/sessionContext.js +0 -4
- package/dist/inspector/session/sessionFactory.d.ts +0 -9
- package/dist/inspector/session/sessionFactory.js +0 -6
- package/dist/inspector/settings/SettingsDialog.d.ts +0 -1
- package/dist/inspector/settings/SettingsDialog.js +5 -3
- package/dist/inspector/shell/AgentStatusButton.d.ts +3 -2
- package/dist/inspector/shell/AgentStatusButton.js +7 -7
- package/dist/inspector/shell/AppShell.js +6 -2
- package/dist/inspector/shell/ChangesLog.js +29 -12
- package/dist/inspector/shell/CopyPromptButton.d.ts +2 -1
- package/dist/inspector/shell/CopyPromptButton.js +62 -55
- package/dist/inspector/shell/EmptyState.js +3 -3
- package/dist/inspector/shell/InspectorEditors.d.ts +16 -0
- package/dist/inspector/shell/InspectorEditors.js +14 -0
- package/dist/inspector/shell/InspectorPanel.d.ts +12 -0
- package/dist/inspector/shell/InspectorPanel.js +8 -0
- package/dist/inspector/shell/InspectorSelection.d.ts +24 -0
- package/dist/inspector/shell/InspectorSelection.js +20 -0
- package/dist/inspector/shell/InspectorShell.d.ts +0 -3
- package/dist/inspector/shell/InspectorShell.js +44 -58
- package/dist/inspector/shell/NudgeLogoIcon.d.ts +5 -0
- package/dist/inspector/shell/NudgeLogoIcon.js +5 -0
- package/dist/inspector/shell/PeekOriginalButton.d.ts +0 -5
- package/dist/inspector/shell/PeekOriginalButton.js +3 -8
- package/dist/inspector/shell/PeekOriginalIcon.d.ts +0 -5
- package/dist/inspector/shell/PeekOriginalIcon.js +0 -5
- package/dist/inspector/shell/PromptActionButton.d.ts +21 -0
- package/dist/inspector/shell/PromptActionButton.js +14 -0
- package/dist/inspector/shell/elementName.d.ts +5 -0
- package/dist/inspector/shell/elementName.js +29 -0
- package/dist/inspector/shell/interactionStatePreview.d.ts +6 -0
- package/dist/inspector/shell/interactionStatePreview.js +107 -0
- package/dist/inspector/shell/originalPreview.d.ts +1 -5
- package/dist/inspector/shell/originalPreview.js +5 -37
- package/dist/inspector/shell/stateValue.d.ts +1 -2
- package/dist/inspector/shell/stateValue.js +4 -8
- package/dist/inspector/shell/styleState.d.ts +1 -2
- package/dist/inspector/shell/styleState.js +1 -2
- package/dist/inspector/sketch/SketchEditor.js +5 -5
- package/dist/inspector/sketch/SketchFrameOverlay.d.ts +2 -1
- package/dist/inspector/sketch/SketchFrameOverlay.js +13 -16
- package/dist/inspector/sketch/SketchOverlay.d.ts +3 -5
- package/dist/inspector/sketch/SketchOverlay.js +138 -263
- package/dist/inspector/sketch/SketchPromptPanel.d.ts +1 -2
- package/dist/inspector/sketch/SketchPromptPanel.js +8 -2
- package/dist/inspector/sketch/SketchThumbnail.d.ts +5 -0
- package/dist/inspector/sketch/SketchThumbnail.js +18 -0
- package/dist/inspector/sketch/SketchWorkspace.d.ts +1 -2
- package/dist/inspector/sketch/SketchWorkspace.js +70 -37
- package/dist/inspector/sketch/capture.d.ts +12 -3
- package/dist/inspector/sketch/capture.js +31 -14
- package/dist/inspector/sketch/copySketch.d.ts +4 -0
- package/dist/inspector/sketch/copySketch.js +43 -0
- package/dist/inspector/sketch/drawingTools.d.ts +15 -0
- package/dist/inspector/sketch/drawingTools.js +46 -0
- package/dist/inspector/sketch/frameHeading.d.ts +3 -0
- package/dist/inspector/sketch/frameHeading.js +23 -0
- package/dist/inspector/sketch/freehand.d.ts +0 -1
- package/dist/inspector/sketch/freehand.js +3 -4
- package/dist/inspector/sketch/geometry.d.ts +2 -1
- package/dist/inspector/sketch/geometry.js +15 -1
- package/dist/inspector/sketch/handoff.js +0 -1
- package/dist/inspector/sketch/history.d.ts +26 -0
- package/dist/inspector/sketch/history.js +55 -0
- package/dist/inspector/sketch/interaction.d.ts +3 -5
- package/dist/inspector/sketch/interaction.js +8 -11
- package/dist/inspector/sketch/model.d.ts +33 -6
- package/dist/inspector/sketch/model.js +101 -63
- package/dist/inspector/sketch/persistence.d.ts +14 -1
- package/dist/inspector/sketch/persistence.js +64 -8
- package/dist/inspector/sketch/raster.d.ts +3 -2
- package/dist/inspector/sketch/raster.js +40 -20
- package/dist/inspector/sketch/store.d.ts +1 -1
- package/dist/inspector/sketch/store.js +3 -4
- package/dist/inspector/sketch/videoFrames.d.ts +6 -0
- package/dist/inspector/sketch/videoFrames.js +80 -0
- package/dist/inspector/spacing/projection.d.ts +0 -8
- package/dist/inspector/spacing/projection.js +38 -20
- package/dist/inspector/styleEditors/BackgroundEditor.js +3 -2
- package/dist/inspector/styleEditors/BorderEditor.js +30 -135
- package/dist/inspector/styleEditors/BorderRadiusEditor.js +8 -3
- package/dist/inspector/styleEditors/ChildPlacement.d.ts +12 -0
- package/dist/inspector/styleEditors/ChildPlacement.js +9 -0
- package/dist/inspector/styleEditors/FlexControls.d.ts +35 -0
- package/dist/inspector/styleEditors/FlexControls.js +158 -0
- package/dist/inspector/styleEditors/GapField.d.ts +5 -2
- package/dist/inspector/styleEditors/GapField.js +3 -4
- package/dist/inspector/styleEditors/GridChildSection.d.ts +0 -5
- package/dist/inspector/styleEditors/GridChildSection.js +0 -5
- package/dist/inspector/styleEditors/GridPicker.d.ts +1 -1
- package/dist/inspector/styleEditors/GridPicker.js +2 -4
- package/dist/inspector/styleEditors/GridSection.d.ts +10 -8
- package/dist/inspector/styleEditors/GridSection.js +22 -9
- package/dist/inspector/styleEditors/GridValueField.d.ts +1 -5
- package/dist/inspector/styleEditors/GridValueField.js +2 -8
- package/dist/inspector/styleEditors/ImageBackgroundEditor.d.ts +0 -1
- package/dist/inspector/styleEditors/ImageBackgroundEditor.js +1 -2
- package/dist/inspector/styleEditors/LayoutBlockedIndicator.d.ts +0 -1
- package/dist/inspector/styleEditors/LayoutBlockedIndicator.js +0 -1
- package/dist/inspector/styleEditors/LayoutComboField.js +0 -5
- package/dist/inspector/styleEditors/LayoutModeRow.d.ts +14 -0
- package/dist/inspector/styleEditors/LayoutModeRow.js +60 -0
- package/dist/inspector/styleEditors/LayoutSection.d.ts +2 -2
- package/dist/inspector/styleEditors/LayoutSection.js +30 -356
- package/dist/inspector/styleEditors/OpacityEditor.js +7 -5
- package/dist/inspector/styleEditors/PositionControls.d.ts +18 -0
- package/dist/inspector/styleEditors/PositionControls.js +16 -0
- package/dist/inspector/styleEditors/SizeSection.d.ts +18 -0
- package/dist/inspector/styleEditors/SizeSection.js +71 -0
- package/dist/inspector/styleEditors/{SpacingBox.d.ts → SpacingField.d.ts} +3 -10
- package/dist/inspector/styleEditors/{SpacingBox.js → SpacingField.js} +15 -29
- package/dist/inspector/styleEditors/Typography.js +2 -4
- package/dist/inspector/styleEditors/borderModel.d.ts +36 -0
- package/dist/inspector/styleEditors/borderModel.js +105 -0
- package/dist/inspector/styleEditors/completeCssValue.d.ts +1 -5
- package/dist/inspector/styleEditors/completeCssValue.js +3 -13
- package/dist/inspector/styleEditors/fieldValue.d.ts +20 -0
- package/dist/inspector/styleEditors/fieldValue.js +26 -0
- package/dist/inspector/styleEditors/gradientValue.d.ts +1 -1
- package/dist/inspector/styleEditors/gradientValue.js +3 -2
- package/dist/inspector/styleEditors/gridChildModel.d.ts +7 -47
- package/dist/inspector/styleEditors/gridChildModel.js +6 -37
- package/dist/inspector/styleEditors/hiddenSizeOverrides.d.ts +5 -0
- package/dist/inspector/styleEditors/hiddenSizeOverrides.js +42 -0
- package/dist/inspector/styleEditors/inlineAuthored.d.ts +1 -8
- package/dist/inspector/styleEditors/inlineAuthored.js +3 -17
- package/dist/inspector/styleEditors/layoutMode.d.ts +15 -0
- package/dist/inspector/styleEditors/layoutMode.js +33 -0
- package/dist/inspector/styleEditors/layoutPreviewState.d.ts +0 -1
- package/dist/inspector/styleEditors/layoutPreviewState.js +0 -1
- package/dist/inspector/styleEditors/layoutValue.d.ts +2 -8
- package/dist/inspector/styleEditors/layoutValue.js +6 -15
- package/dist/inspector/styleEditors/nudgeValue.d.ts +1 -13
- package/dist/inspector/styleEditors/nudgeValue.js +1 -13
- package/dist/inspector/styleEditors/rowLookup.d.ts +1 -5
- package/dist/inspector/styleEditors/rowLookup.js +1 -5
- package/dist/inspector/styleEditors/stringRecord.d.ts +1 -2
- package/dist/inspector/styleEditors/stylePresence.d.ts +0 -2
- package/dist/inspector/styleEditors/stylePresence.js +1 -4
- package/dist/inspector/styleEditors/textRelevance.d.ts +1 -1
- package/dist/inspector/styleEditors/textRelevance.js +1 -1
- package/dist/inspector/styleEditors/useFieldVisibility.js +1 -2
- package/dist/inspector/styleEditors/useLayoutContext.d.ts +13 -0
- package/dist/inspector/styleEditors/useLayoutContext.js +53 -0
- package/dist/inspector/styleEditors/valuePolicy.d.ts +1 -5
- package/dist/inspector/styleEditors/valuePolicy.js +0 -1
- package/dist/inspector/testing.d.ts +1 -4
- package/dist/inspector/testing.js +1 -4
- package/dist/inspector/tokens/TokenChip.d.ts +1 -4
- package/dist/inspector/tokens/TokenChip.js +1 -4
- package/dist/inspector/tokens/TokenField.d.ts +4 -3
- package/dist/inspector/tokens/TokenField.js +53 -32
- package/dist/inspector/tokens/TokensPanel.js +2 -1
- package/dist/inspector/tokens/catalog.d.ts +2 -10
- package/dist/inspector/tokens/catalog.js +5 -12
- package/dist/inspector/tokens/dragPointerLock.d.ts +0 -1
- package/dist/inspector/tokens/dragPointerLock.js +2 -3
- package/dist/inspector/tokens/editActions.d.ts +4 -4
- package/dist/inspector/tokens/editActions.js +11 -7
- package/dist/inspector/tokens/resolution/cascade.d.ts +1 -5
- package/dist/inspector/tokens/resolution/cascade.js +1 -5
- package/dist/inspector/tokens/resolution/containerQueryEvaluator.d.ts +11 -0
- package/dist/inspector/tokens/resolution/containerQueryEvaluator.js +82 -0
- package/dist/inspector/tokens/resolution/cssomCollector.d.ts +4 -19
- package/dist/inspector/tokens/resolution/cssomCollector.js +186 -122
- package/dist/inspector/tokens/resolution/nestedSelectors.d.ts +2 -0
- package/dist/inspector/tokens/resolution/nestedSelectors.js +63 -0
- package/dist/inspector/tokens/resolution/ruleMatching.d.ts +4 -14
- package/dist/inspector/tokens/resolution/ruleMatching.js +136 -63
- package/dist/inspector/tokens/resolution/selectorSemantics.d.ts +3 -14
- package/dist/inspector/tokens/resolution/selectorSemantics.js +12 -27
- package/dist/inspector/tokens/resolution.d.ts +11 -27
- package/dist/inspector/tokens/resolution.js +105 -181
- package/dist/inspector/tokens/tokenAvailability.d.ts +2 -14
- package/dist/inspector/tokens/tokenAvailability.js +6 -38
- package/dist/inspector/tokens/tokenEdits.d.ts +1 -1
- package/dist/inspector/tokens/tokenEdits.js +1 -1
- package/dist/inspector/tokens/valueSemanticsAdapter.d.ts +0 -1
- package/dist/inspector/tokens/valueSemanticsAdapter.js +18 -2
- package/dist/inspector/ui/AtRuleContext.d.ts +5 -5
- package/dist/inspector/ui/AtRuleContext.js +8 -6
- package/dist/inspector/ui/ControlSurface.d.ts +0 -4
- package/dist/inspector/ui/Disclosure.d.ts +0 -5
- package/dist/inspector/ui/Disclosure.js +0 -4
- package/dist/inspector/ui/InlineStyleWarning.d.ts +0 -1
- package/dist/inspector/ui/InlineStyleWarning.js +2 -2
- package/dist/inspector/ui/InspectorPopover.d.ts +1 -5
- package/dist/inspector/ui/InspectorPopover.js +1 -5
- package/dist/inspector/ui/InspectorStyle.d.ts +8 -0
- package/dist/inspector/ui/InspectorStyle.js +26 -0
- package/dist/inspector/ui/PopoverListbox.d.ts +2 -1
- package/dist/inspector/ui/PopoverListbox.js +3 -3
- package/dist/inspector/ui/SegmentedControl.d.ts +4 -4
- package/dist/inspector/ui/SegmentedControl.js +6 -4
- package/dist/inspector/ui/SideValuesField.d.ts +1 -6
- package/dist/inspector/ui/SideValuesField.js +2 -8
- package/dist/inspector/ui/Toast.d.ts +10 -0
- package/dist/inspector/ui/Toast.js +26 -0
- package/dist/inspector/ui/assets/canvasIllustration.d.ts +2 -0
- package/dist/inspector/ui/assets/canvasIllustration.js +21 -0
- package/dist/inspector/ui/assets/gridIllustration.d.ts +2 -0
- package/dist/inspector/ui/assets/{grid.svg → gridIllustration.js} +3 -2
- package/dist/inspector/ui/atRuleSegments.d.ts +13 -0
- package/dist/inspector/ui/atRuleSegments.js +34 -0
- package/dist/inspector/ui/classNames.d.ts +0 -1
- package/dist/inspector/ui/classNames.js +0 -1
- package/dist/inspector/ui/customCursors.d.ts +11 -0
- package/dist/inspector/ui/customCursors.js +29 -7
- package/dist/inspector/ui/styles.js +25 -25
- package/dist/inspector/workspace/commands.js +1 -2
- package/dist/inspector/workspace/controller.js +20 -2
- package/dist/inspector/workspace/handoff.d.ts +1 -5
- package/dist/inspector/workspace/handoff.js +4 -7
- package/dist/inspector/workspace/sentItems.d.ts +3 -6
- package/dist/inspector/workspace/sentItems.js +6 -24
- package/dist/inspector/workspace/timeline.d.ts +28 -11
- package/dist/inspector/workspace/timeline.js +117 -96
- package/dist/internal/agent-protocol.d.ts +53 -38
- package/dist/internal/agent-protocol.js +151 -42
- package/dist/nudge-ui.mjs +155 -92
- package/dist/project/artifacts.js +24 -21
- package/dist/project/files.d.ts +0 -1
- package/dist/project/files.js +2 -9
- package/dist/project/identity.d.ts +1 -5
- package/dist/project/identity.js +1 -5
- package/dist/project/mcpPackage.d.ts +3 -0
- package/dist/project/mcpPackage.js +55 -0
- package/dist/project/pathPolicy.d.ts +1 -6
- package/dist/project/pathPolicy.js +1 -6
- package/dist/project/tokens.d.ts +2 -12
- package/dist/project/tokens.js +4 -15
- package/dist/transport/editor.d.ts +1 -12
- package/dist/transport/editor.js +2 -13
- package/dist/transport/index.d.ts +0 -5
- package/dist/transport/index.js +0 -5
- package/dist/transport/routes.d.ts +0 -5
- package/dist/transport/routes.js +0 -5
- package/package.json +16 -5
- package/dist/inspector/canvas/measurementProjection.d.ts +0 -8
- package/dist/inspector/canvas/measurementProjection.js +0 -16
- package/dist/inspector/changes/changesLog.d.ts +0 -49
- package/dist/inspector/changes/changesLog.js +0 -255
- package/dist/inspector/changes/draftChanges.d.ts +0 -58
- package/dist/inspector/changes/draftChanges.js +0 -304
- package/dist/inspector/conformance/projection.d.ts +0 -2
- package/dist/inspector/conformance/projection.js +0 -3
- package/dist/inspector/inline-text/textChangeBoundary.d.ts +0 -6
- package/dist/inspector/inline-text/textChangeBoundary.js +0 -1
- package/dist/inspector/overlay/InspectorOverlay.d.ts +0 -5
- package/dist/inspector/overlay/InspectorOverlay.js +0 -332
- package/dist/inspector/overlay/elementSelector.d.ts +0 -1
- package/dist/inspector/overlay/elementSelector.js +0 -111
- package/dist/inspector/sketch/SketchChanges.d.ts +0 -2
- package/dist/inspector/sketch/SketchChanges.js +0 -72
- package/dist/inspector/sketch/SketchEntryButton.d.ts +0 -4
- package/dist/inspector/sketch/SketchEntryButton.js +0 -11
- package/dist/inspector/sketch/SketchLayersPanel.d.ts +0 -2
- package/dist/inspector/sketch/SketchLayersPanel.js +0 -71
- package/dist/inspector/styleEditors/InsetSection.d.ts +0 -15
- package/dist/inspector/styleEditors/InsetSection.js +0 -15
- package/dist/inspector/styleEditors/PositionInsets.d.ts +0 -15
- package/dist/inspector/styleEditors/PositionInsets.js +0 -12
- package/dist/inspector/tokens/TokenDropdown.d.ts +0 -13
- package/dist/inspector/tokens/TokenDropdown.js +0 -59
|
@@ -18,8 +18,7 @@ function boxEdges(element) {
|
|
|
18
18
|
bottom: bottomOf(rect),
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
// Computed style
|
|
22
|
-
// An authored rem/% is intentionally rewritten as px on commit.
|
|
21
|
+
// Computed style is px; an authored rem/% is intentionally rewritten as px on commit.
|
|
23
22
|
function numberValue(value) {
|
|
24
23
|
const parsed = Number.parseFloat(value);
|
|
25
24
|
return Number.isFinite(parsed) ? Math.max(0, parsed) : 0;
|
|
@@ -32,6 +31,12 @@ function boxModel(element) {
|
|
|
32
31
|
bottom: numberValue(style.paddingBottom),
|
|
33
32
|
left: numberValue(style.paddingLeft),
|
|
34
33
|
};
|
|
34
|
+
const margin = {
|
|
35
|
+
top: numberValue(style.marginTop),
|
|
36
|
+
right: numberValue(style.marginRight),
|
|
37
|
+
bottom: numberValue(style.marginBottom),
|
|
38
|
+
left: numberValue(style.marginLeft),
|
|
39
|
+
};
|
|
35
40
|
const border = {
|
|
36
41
|
top: numberValue(style.borderTopWidth),
|
|
37
42
|
right: numberValue(style.borderRightWidth),
|
|
@@ -51,7 +56,7 @@ function boxModel(element) {
|
|
|
51
56
|
right: inner.right - padding.right,
|
|
52
57
|
bottom: inner.bottom - padding.bottom,
|
|
53
58
|
};
|
|
54
|
-
return { outer, inner, content, padding };
|
|
59
|
+
return { outer, inner, content, padding, margin };
|
|
55
60
|
}
|
|
56
61
|
function containsPoint(rect, x, y) {
|
|
57
62
|
return x >= rect.left && x <= rect.right && y >= rect.top && y <= rect.bottom;
|
|
@@ -143,14 +148,93 @@ function paddingAffordanceAtPoint(element, x, y) {
|
|
|
143
148
|
const model = boxModel(element);
|
|
144
149
|
if (!containsPoint(model.outer, x, y))
|
|
145
150
|
return null;
|
|
146
|
-
const
|
|
147
|
-
for (const side of sides) {
|
|
151
|
+
for (const side of SIDES) {
|
|
148
152
|
const affordance = paddingAffordanceForSide(element, side, model);
|
|
149
153
|
if (affordance && containsRectPoint(affordance.hit, x, y))
|
|
150
154
|
return affordance;
|
|
151
155
|
}
|
|
152
156
|
return null;
|
|
153
157
|
}
|
|
158
|
+
const MARGIN_CONFIG = {
|
|
159
|
+
top: { axis: "horizontal", dragAxis: "y", direction: -1 },
|
|
160
|
+
right: { axis: "vertical", dragAxis: "x", direction: 1 },
|
|
161
|
+
bottom: { axis: "horizontal", dragAxis: "y", direction: 1 },
|
|
162
|
+
left: { axis: "vertical", dragAxis: "x", direction: -1 },
|
|
163
|
+
};
|
|
164
|
+
const SIDES = ["top", "right", "bottom", "left"];
|
|
165
|
+
/** Children further than this from the pointer are skipped before their styles are read. */
|
|
166
|
+
const MARGIN_SCAN_DISTANCE = 512;
|
|
167
|
+
/** The margin band sits outside the border box, so a drag outward (away from the element) grows it. */
|
|
168
|
+
function marginAffordanceForSide(element, side, model = boxModel(element)) {
|
|
169
|
+
const { outer, margin } = model;
|
|
170
|
+
const value = margin[side];
|
|
171
|
+
if (value <= EPSILON)
|
|
172
|
+
return null;
|
|
173
|
+
const config = MARGIN_CONFIG[side];
|
|
174
|
+
const width = Math.max(0, outer.right - outer.left);
|
|
175
|
+
const height = Math.max(0, outer.bottom - outer.top);
|
|
176
|
+
const guide = config.axis === "horizontal"
|
|
177
|
+
? { left: outer.left, top: (side === "top" ? outer.top - value / 2 : outer.bottom + value / 2) - 1, width, height: 2 }
|
|
178
|
+
: { left: (side === "left" ? outer.left - value / 2 : outer.right + value / 2) - 1, top: outer.top, width: 2, height };
|
|
179
|
+
const area = config.axis === "horizontal"
|
|
180
|
+
? { left: outer.left, top: side === "top" ? outer.top - value : outer.bottom, width, height: value }
|
|
181
|
+
: { left: side === "left" ? outer.left - value : outer.right, top: outer.top, width: value, height };
|
|
182
|
+
return {
|
|
183
|
+
kind: "margin",
|
|
184
|
+
property: `margin-${side}`,
|
|
185
|
+
side,
|
|
186
|
+
axis: config.axis,
|
|
187
|
+
dragAxis: config.dragAxis,
|
|
188
|
+
value,
|
|
189
|
+
cursor: config.axis === "horizontal" ? "ns-resize" : "ew-resize",
|
|
190
|
+
guide,
|
|
191
|
+
affectedGuides: [guide],
|
|
192
|
+
affectedAreas: [area],
|
|
193
|
+
hit: guideHit(guide, config.axis),
|
|
194
|
+
direction: config.direction,
|
|
195
|
+
element,
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
function isTrackedElement(element, constructor) {
|
|
199
|
+
return element instanceof constructor && element.hasAttribute("data-cid");
|
|
200
|
+
}
|
|
201
|
+
function isNearPoint(rect, x, y) {
|
|
202
|
+
return x >= rect.left - MARGIN_SCAN_DISTANCE
|
|
203
|
+
&& x <= rightOf(rect) + MARGIN_SCAN_DISTANCE
|
|
204
|
+
&& y >= rect.top - MARGIN_SCAN_DISTANCE
|
|
205
|
+
&& y <= bottomOf(rect) + MARGIN_SCAN_DISTANCE;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* A margin lies outside its element, so the pointer over it hits the parent: the
|
|
209
|
+
* element's own margins and its tracked children's margins are both candidates.
|
|
210
|
+
*/
|
|
211
|
+
function marginAffordanceAtPoint(element, x, y, includeChildren, match) {
|
|
212
|
+
const HTMLElementConstructor = element.ownerDocument.defaultView?.HTMLElement;
|
|
213
|
+
if (!HTMLElementConstructor)
|
|
214
|
+
return null;
|
|
215
|
+
const owners = [
|
|
216
|
+
element,
|
|
217
|
+
...(includeChildren
|
|
218
|
+
? Array.from(element.children).filter((child) => isTrackedElement(child, HTMLElementConstructor))
|
|
219
|
+
: []),
|
|
220
|
+
];
|
|
221
|
+
for (const owner of owners) {
|
|
222
|
+
if (owner !== element && !isNearPoint(owner.getBoundingClientRect(), x, y))
|
|
223
|
+
continue;
|
|
224
|
+
const model = boxModel(owner);
|
|
225
|
+
for (const side of SIDES) {
|
|
226
|
+
const affordance = marginAffordanceForSide(owner, side, model);
|
|
227
|
+
if (!affordance)
|
|
228
|
+
continue;
|
|
229
|
+
const hit = match === "handle"
|
|
230
|
+
? containsRectPoint(affordance.hit, x, y)
|
|
231
|
+
: affordance.affectedAreas.some((area) => containsRectPoint(area, x, y));
|
|
232
|
+
if (hit)
|
|
233
|
+
return affordance;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return null;
|
|
237
|
+
}
|
|
154
238
|
function overlap(startA, endA, startB, endB) {
|
|
155
239
|
return Math.min(endA, endB) - Math.max(startA, startB) > EPSILON;
|
|
156
240
|
}
|
|
@@ -263,15 +347,12 @@ function gapDragHit(segment) {
|
|
|
263
347
|
const orientation = segment.axis === "horizontal" ? "vertical" : "horizontal";
|
|
264
348
|
return guideHit(gapGuide(segment), orientation);
|
|
265
349
|
}
|
|
266
|
-
/** Matches the padding bar
|
|
267
|
-
* not the point is inside the drag handle. Returns the first side by the same
|
|
268
|
-
* priority order as the drag affordances so both paths agree on overlaps. */
|
|
350
|
+
/** Matches the padding bar's visible area; same side priority as the drag handles. */
|
|
269
351
|
function paddingAffordanceInAreaAtPoint(element, x, y) {
|
|
270
352
|
const model = boxModel(element);
|
|
271
353
|
if (!containsPoint(model.outer, x, y))
|
|
272
354
|
return null;
|
|
273
|
-
const
|
|
274
|
-
for (const side of sides) {
|
|
355
|
+
for (const side of SIDES) {
|
|
275
356
|
const affordance = paddingAffordanceForSide(element, side, model);
|
|
276
357
|
if (affordance
|
|
277
358
|
&& affordance.affectedAreas.some((area) => containsRectPoint(area, x, y))) {
|
|
@@ -280,9 +361,7 @@ function paddingAffordanceInAreaAtPoint(element, x, y) {
|
|
|
280
361
|
}
|
|
281
362
|
return null;
|
|
282
363
|
}
|
|
283
|
-
/** Matches a layout gap
|
|
284
|
-
* the point is inside the drag handle. Shares segment priority and geometry
|
|
285
|
-
* with gapAffordanceAtPoint so hover and drag agree on crossed gap properties. */
|
|
364
|
+
/** Matches a layout gap's visible area; shares segment priority with gapAffordanceAtPoint. */
|
|
286
365
|
function gapAffordanceInAreaAtPoint(element, x, y) {
|
|
287
366
|
const segments = gapSegments(element);
|
|
288
367
|
if (segments.length === 0)
|
|
@@ -314,9 +393,7 @@ function gapValue(style, property) {
|
|
|
314
393
|
|| (property === "row-gap" ? style.rowGap : style.columnGap);
|
|
315
394
|
if (direct.trim())
|
|
316
395
|
return numberValue(direct);
|
|
317
|
-
// jsdom and
|
|
318
|
-
// the longhands through getPropertyValue(). Keep the gesture model aligned
|
|
319
|
-
// with the browser's shorthand fallback in those realms.
|
|
396
|
+
// jsdom and some CSSOM implementations expose only the `gap` shorthand.
|
|
320
397
|
const shorthand = style.getPropertyValue("gap") || style.gap;
|
|
321
398
|
const values = shorthand.trim().split(/\s+/).filter(Boolean);
|
|
322
399
|
if (values.length === 0)
|
|
@@ -344,7 +421,6 @@ function trackedElementsAtPoint(doc, x, y) {
|
|
|
344
421
|
}
|
|
345
422
|
return result;
|
|
346
423
|
}
|
|
347
|
-
/** Finds the spacing target under a document-local pointer location. */
|
|
348
424
|
export function getSpacingAffordanceAtPoint(doc, x, y) {
|
|
349
425
|
const candidates = trackedElementsAtPoint(doc, x, y);
|
|
350
426
|
for (const element of candidates) {
|
|
@@ -352,6 +428,11 @@ export function getSpacingAffordanceAtPoint(doc, x, y) {
|
|
|
352
428
|
if (padding)
|
|
353
429
|
return padding;
|
|
354
430
|
}
|
|
431
|
+
for (const [index, element] of candidates.entries()) {
|
|
432
|
+
const margin = marginAffordanceAtPoint(element, x, y, index === 0, "handle");
|
|
433
|
+
if (margin)
|
|
434
|
+
return margin;
|
|
435
|
+
}
|
|
355
436
|
for (const element of candidates) {
|
|
356
437
|
const gap = gapAffordanceAtPoint(element, x, y);
|
|
357
438
|
if (gap)
|
|
@@ -359,10 +440,7 @@ export function getSpacingAffordanceAtPoint(doc, x, y) {
|
|
|
359
440
|
}
|
|
360
441
|
return null;
|
|
361
442
|
}
|
|
362
|
-
/**
|
|
363
|
-
* pointer, even when the pointer is outside the drag handle. Hover previews use
|
|
364
|
-
* this; drags and the resize cursor still require the handle hit from
|
|
365
|
-
* getSpacingAffordanceAtPoint. */
|
|
443
|
+
/** Hover previews use this; drags and the resize cursor require the handle from getSpacingAffordanceAtPoint. */
|
|
366
444
|
export function getSpacingHoverAtPoint(doc, x, y) {
|
|
367
445
|
const candidates = trackedElementsAtPoint(doc, x, y);
|
|
368
446
|
for (const element of candidates) {
|
|
@@ -370,6 +448,11 @@ export function getSpacingHoverAtPoint(doc, x, y) {
|
|
|
370
448
|
if (padding)
|
|
371
449
|
return padding;
|
|
372
450
|
}
|
|
451
|
+
for (const [index, element] of candidates.entries()) {
|
|
452
|
+
const margin = marginAffordanceAtPoint(element, x, y, index === 0, "area");
|
|
453
|
+
if (margin)
|
|
454
|
+
return margin;
|
|
455
|
+
}
|
|
373
456
|
for (const element of candidates) {
|
|
374
457
|
const gap = gapAffordanceInAreaAtPoint(element, x, y);
|
|
375
458
|
if (gap)
|
|
@@ -377,7 +460,45 @@ export function getSpacingHoverAtPoint(doc, x, y) {
|
|
|
377
460
|
}
|
|
378
461
|
return null;
|
|
379
462
|
}
|
|
380
|
-
/**
|
|
463
|
+
/** Only descendants of `element` can win: candidates run innermost first and padding beats gaps. */
|
|
464
|
+
function affordanceForElement(candidates, element, padding, margin, gap) {
|
|
465
|
+
const index = candidates.indexOf(element);
|
|
466
|
+
if (index < 0)
|
|
467
|
+
return null;
|
|
468
|
+
for (let candidate = 0; candidate <= index; candidate++) {
|
|
469
|
+
const match = padding(candidates[candidate]);
|
|
470
|
+
if (match)
|
|
471
|
+
return match.element === element ? match : null;
|
|
472
|
+
}
|
|
473
|
+
// A margin belongs to a child of the hovered element (or to the element itself), so its owner may differ from `element`.
|
|
474
|
+
const marginMatch = margin(element, candidates[0] === element);
|
|
475
|
+
if (marginMatch)
|
|
476
|
+
return marginMatch;
|
|
477
|
+
let gapMatch = null;
|
|
478
|
+
for (let candidate = 0; candidate <= index && !gapMatch; candidate++) {
|
|
479
|
+
gapMatch = gap(candidates[candidate]);
|
|
480
|
+
}
|
|
481
|
+
if (gapMatch?.element !== element)
|
|
482
|
+
return null;
|
|
483
|
+
for (let candidate = index + 1; candidate < candidates.length; candidate++) {
|
|
484
|
+
if (padding(candidates[candidate]))
|
|
485
|
+
return null;
|
|
486
|
+
}
|
|
487
|
+
return gapMatch;
|
|
488
|
+
}
|
|
489
|
+
function elementSpacingHandle(candidates, element, x, y) {
|
|
490
|
+
return affordanceForElement(candidates, element, (candidate) => paddingAffordanceAtPoint(candidate, x, y), (candidate, includeChildren) => marginAffordanceAtPoint(candidate, x, y, includeChildren, "handle"), (candidate) => gapAffordanceAtPoint(candidate, x, y));
|
|
491
|
+
}
|
|
492
|
+
export function getElementSpacingHandleAtPoint(doc, element, x, y) {
|
|
493
|
+
return elementSpacingHandle(trackedElementsAtPoint(doc, x, y), element, x, y);
|
|
494
|
+
}
|
|
495
|
+
export function getElementSpacingAtPoint(doc, element, x, y) {
|
|
496
|
+
const candidates = trackedElementsAtPoint(doc, x, y);
|
|
497
|
+
return {
|
|
498
|
+
handle: elementSpacingHandle(candidates, element, x, y),
|
|
499
|
+
area: affordanceForElement(candidates, element, (candidate) => paddingAffordanceInAreaAtPoint(candidate, x, y), (candidate, includeChildren) => marginAffordanceAtPoint(candidate, x, y, includeChildren, "area"), (candidate) => gapAffordanceInAreaAtPoint(candidate, x, y)),
|
|
500
|
+
};
|
|
501
|
+
}
|
|
381
502
|
export function getSpacingAffordanceForDescriptor(element, descriptor) {
|
|
382
503
|
if (descriptor.kind === "padding") {
|
|
383
504
|
const side = descriptor.side;
|
|
@@ -385,6 +506,12 @@ export function getSpacingAffordanceForDescriptor(element, descriptor) {
|
|
|
385
506
|
return null;
|
|
386
507
|
return paddingAffordanceForSide(element, side);
|
|
387
508
|
}
|
|
509
|
+
if (descriptor.kind === "margin") {
|
|
510
|
+
const side = descriptor.side;
|
|
511
|
+
if (!side || descriptor.property !== `margin-${side}`)
|
|
512
|
+
return null;
|
|
513
|
+
return marginAffordanceForSide(element, side);
|
|
514
|
+
}
|
|
388
515
|
if (descriptor.property !== "row-gap" && descriptor.property !== "column-gap")
|
|
389
516
|
return null;
|
|
390
517
|
const segment = gapSegments(element).find((candidate) => candidate.property === descriptor.property);
|
|
@@ -393,14 +520,7 @@ export function getSpacingAffordanceForDescriptor(element, descriptor) {
|
|
|
393
520
|
const guide = gapGuide(segment);
|
|
394
521
|
return gapAffordanceAtPoint(element, guide.left + guide.width / 2, guide.top + guide.height / 2, descriptor.property);
|
|
395
522
|
}
|
|
396
|
-
/**
|
|
397
|
-
* Calculates a direct-manipulation value, optionally stepping changes by 8px.
|
|
398
|
-
* While Shift is held the value snaps to a step anchor: the first displacement
|
|
399
|
-
* picks the nearest multiple of 8 from the authored value in the drag
|
|
400
|
-
* direction (ties resolve upward), and further movement adds whole 8px steps
|
|
401
|
-
* from that anchor, so the result is always a multiple of 8 once the drag
|
|
402
|
-
* moves. At the exact start point the authored value is preserved.
|
|
403
|
-
*/
|
|
523
|
+
/** With Shift, snaps to a multiple of 8 from the authored value in the drag direction. */
|
|
404
524
|
export function spacingValueForDrag(affordance, start, point, shiftKey = false) {
|
|
405
525
|
const delta = affordance.dragAxis === "x" ? point.x - start.x : point.y - start.y;
|
|
406
526
|
const signedDelta = delta * affordance.direction;
|
|
@@ -418,7 +538,7 @@ export function spacingValueForDrag(affordance, start, point, shiftKey = false)
|
|
|
418
538
|
export function spacingValueCss(value) {
|
|
419
539
|
return `${Math.max(0, Math.round(value))}px`;
|
|
420
540
|
}
|
|
421
|
-
/**
|
|
541
|
+
/** The stable subset sent across the renderer boundary. */
|
|
422
542
|
export function toSpacingDescriptor(affordance) {
|
|
423
543
|
return {
|
|
424
544
|
kind: affordance.kind,
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import type { SelectedElement } from "../selection/selectionStore.js";
|
|
2
2
|
import { type StructuralDelete, type StructuralMove } from "../projection/structuralProjection.js";
|
|
3
3
|
export type StructuralNudgeKey = "ArrowUp" | "ArrowDown" | "ArrowLeft" | "ArrowRight";
|
|
4
|
-
/**
|
|
5
|
-
* A temporary, document-local insertion point. It is intentionally not a
|
|
6
|
-
* structural record: `moveElement` captures durable rendered-instance refs
|
|
7
|
-
* before handing the canonical action to structuralProjection.
|
|
8
|
-
*/
|
|
4
|
+
/** Temporary, document-local insertion point; canonical moves capture durable rendered-instance refs instead. */
|
|
9
5
|
export interface DropLocation {
|
|
10
6
|
parent: HTMLElement;
|
|
11
7
|
before: Node | null;
|
|
@@ -15,14 +11,11 @@ export interface DropLocation {
|
|
|
15
11
|
width: number;
|
|
16
12
|
height: number;
|
|
17
13
|
}
|
|
18
|
-
/**
|
|
14
|
+
/** Delegates to the guard shared with canonical capture and document replay. */
|
|
19
15
|
export declare function canContainElement(parent: HTMLElement, child: HTMLElement): boolean;
|
|
20
|
-
/** Derives a safe insertion point; its nodes never leave this gesture module. */
|
|
21
16
|
export declare function getDropLocationForElement(dragged: HTMLElement, target: HTMLElement, beforeTarget: boolean, preferContainer?: boolean): DropLocation | null;
|
|
22
17
|
export declare function getDropLocationAtPoint(doc: Document, dragged: HTMLElement, x: number, y: number): DropLocation | null;
|
|
23
|
-
/** Capture the move as canonical intent, then preview it in an inline host. */
|
|
24
18
|
export declare function moveElement(node: HTMLElement, destination: DropLocation): StructuralMove | null;
|
|
25
19
|
/** Reorder only same-parent siblings; horizontal movement needs a flex row. */
|
|
26
20
|
export declare function nudgeElement(node: HTMLElement, key: StructuralNudgeKey): StructuralMove | null;
|
|
27
|
-
/** Capture delete intent, then preview it in an inline host. */
|
|
28
21
|
export declare function deleteElement(selected: SelectedElement): StructuralDelete | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { applyStructuralProjection, canContainElement as canContainStructuralElement, createStructuralDelete, createStructuralMove, getStructuralMoveLegality, getStructuralChanges, } from "../projection/structuralProjection.js";
|
|
2
2
|
import { isEditorShellDocument } from "../runtime/editorShell.js";
|
|
3
|
-
/**
|
|
3
|
+
/** Delegates to the guard shared with canonical capture and document replay. */
|
|
4
4
|
export function canContainElement(parent, child) {
|
|
5
5
|
return canContainStructuralElement(parent, child);
|
|
6
6
|
}
|
|
@@ -96,7 +96,6 @@ function flexRowChildAtTarget(dragged, target) {
|
|
|
96
96
|
}
|
|
97
97
|
return null;
|
|
98
98
|
}
|
|
99
|
-
/** Derives a safe insertion point; its nodes never leave this gesture module. */
|
|
100
99
|
export function getDropLocationForElement(dragged, target, beforeTarget, preferContainer = true) {
|
|
101
100
|
if (target === dragged || dragged.contains(target))
|
|
102
101
|
return null;
|
|
@@ -147,7 +146,6 @@ function projectInlineHost(node) {
|
|
|
147
146
|
return;
|
|
148
147
|
applyStructuralProjection(document, getStructuralChanges());
|
|
149
148
|
}
|
|
150
|
-
/** Capture the move as canonical intent, then preview it in an inline host. */
|
|
151
149
|
export function moveElement(node, destination) {
|
|
152
150
|
if (!getStructuralMoveLegality(node, destination).valid)
|
|
153
151
|
return null;
|
|
@@ -170,7 +168,6 @@ export function nudgeElement(node, key) {
|
|
|
170
168
|
const before = moveEarlier ? sibling : sibling.nextElementSibling;
|
|
171
169
|
return moveElement(node, { parent, before, ...lineFor(parent, before) });
|
|
172
170
|
}
|
|
173
|
-
/** Capture delete intent, then preview it in an inline host. */
|
|
174
171
|
export function deleteElement(selected) {
|
|
175
172
|
const node = selected.domElement;
|
|
176
173
|
if (!node.parentElement || !node.isConnected)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type InspectorStorage } from "./runtime/inspectorStorage.js";
|
|
2
|
+
import { type SketchStorage } from "./sketch/persistence.js";
|
|
3
|
+
export type { InspectorStorage } from "./runtime/inspectorStorage.js";
|
|
4
|
+
export { createMirroredStorage } from "./runtime/inspectorStorage.js";
|
|
5
|
+
export type { SketchPersistenceSnapshot, SketchStorage, SketchStorageChange } from "./sketch/persistence.js";
|
|
6
|
+
export { isSketchDocument, isSketchHandoffRecord } from "./sketch/model.js";
|
|
7
|
+
export type { SketchDocument, SketchHandoffRecord } from "./sketch/model.js";
|
|
8
|
+
export interface PageInspectorOptions {
|
|
9
|
+
/** Replaces `localStorage` for comments, drafts, and Canvas state. */
|
|
10
|
+
storage?: InspectorStorage;
|
|
11
|
+
/** Replaces the page origin's IndexedDB for sketch documents and handoffs. */
|
|
12
|
+
sketchStorage?: SketchStorage;
|
|
13
|
+
/** Skips the `<style>` policy probe and always uses constructable stylesheets. */
|
|
14
|
+
adoptStylesheets?: boolean;
|
|
15
|
+
/** `"editor"` requires the editor URL marker; otherwise the page itself is the only Canvas card. */
|
|
16
|
+
surface?: "editor" | "page";
|
|
17
|
+
/** Shows a short error instead of enabling inspection on an unsupported page. */
|
|
18
|
+
unavailableReason?: string;
|
|
19
|
+
/** Called whenever an editor renderer frame's document finishes parsing. */
|
|
20
|
+
onRendererFrameLoad?: () => void;
|
|
21
|
+
}
|
|
22
|
+
/** Published on `window` so a second injection toggles the first instance. */
|
|
23
|
+
export interface PageInspectorHandle {
|
|
24
|
+
readonly surface: "editor" | "page" | "renderer";
|
|
25
|
+
/** Toggles the page inspector, or leaves the editor. */
|
|
26
|
+
toggle(): void;
|
|
27
|
+
/** Starts the `window.__nudgeUiPerformance` counters for this document. */
|
|
28
|
+
enablePerformanceDiagnostics(): void;
|
|
29
|
+
}
|
|
30
|
+
/** A second bundle copy in the same window toggles the first instance, whose stores own the UI. */
|
|
31
|
+
export declare function startPageInspector(options?: PageInspectorOptions): Promise<void>;
|
|
32
|
+
/** Only acts inside an editor Canvas frame that has no renderer yet. */
|
|
33
|
+
export declare function startCanvasRenderer(options?: Pick<PageInspectorOptions, "adoptStylesheets">): void;
|