@weasel-js/core 1.5.2 → 1.6.1
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 +159 -0
- package/dist/{autoPoseDescriptor-Dr6CwNZK.d.ts → autoPoseDescriptor-_XOyF7t4.d.ts} +2 -1
- package/dist/{depSchema-FKQBEfg7.d.ts → builtins-HWyuLzE-.d.ts} +158 -64
- package/dist/{chunk-QEZL53V6.js → chunk-MZAIDI6D.js} +2019 -1092
- package/dist/chunk-MZAIDI6D.js.map +1 -0
- package/dist/{chunk-T3UQ3F6R.js → chunk-RMR4QMM6.js} +45 -11
- package/dist/chunk-RMR4QMM6.js.map +1 -0
- package/dist/clipboard.d.ts +2 -1
- package/dist/clipboard.js +1 -1
- package/dist/clone.d.ts +3 -2
- package/dist/{grid-CuxXjaQV.d.ts → grid-BXdz8GF2.d.ts} +28 -28
- package/dist/index.d.ts +607 -344
- package/dist/index.js +2 -2
- package/dist/insert.d.ts +4 -3
- package/dist/{math-CeGmGPy8.d.ts → math-MCQcf_gc.d.ts} +114 -113
- package/dist/math.d.ts +4 -3
- package/dist/move.d.ts +5 -4
- package/dist/{options-BPcmwYk7.d.ts → options-CzjxFoYZ.d.ts} +1 -1
- package/dist/path-JEV2c5If.d.ts +48 -0
- package/dist/{pointSnapToGrid-CgcK2R_I.d.ts → pointSnapToGrid-7mCcm6qG.d.ts} +1 -1
- package/dist/{poseDescriptor-PgfVKfa0.d.ts → poseDescriptor-rZa9W5hJ.d.ts} +1 -48
- package/dist/renderer.d.ts +7 -5
- package/dist/renderer.js +2 -2
- package/dist/resize.d.ts +6 -5
- package/dist/{types-BdaK9PcP.d.ts → types-CxC8P6W0.d.ts} +27 -1
- package/dist/{types-BHGdrOcu.d.ts → types-D_74YlWs.d.ts} +1 -1
- package/package.json +10 -10
- package/dist/chunk-QEZL53V6.js.map +0 -1
- package/dist/chunk-T3UQ3F6R.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,44 +1,224 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import
|
|
3
|
-
import { a as UnitValue, b as UnitSystem, c as UnitEntry, d as Unit, U as UseMoveOptions, O as OriginProjection } from './grid-
|
|
4
|
-
export { A as ANGLE_RADIANS, I as IMPERIAL_INCHES, M as METRIC_MM, P as PIXELS, R as RECT_ORIGIN_PROJECTION, e as UnitScale, f as formatUnit, g as gridSnapStrategy, p as pointToGridCell, r as resolveUnit, u as unitScale } from './grid-
|
|
5
|
-
import { View, NodeId, Bounds, ModifierState, PointerSessionCancelReason, DeviceProfile, Action, SelectionMode, SelectionExtendKey, SelectionApi, DepSchema, AnyToolOf, Contribution as Contribution$1, ContributionChrome as ContributionChrome$1, Tool as Tool$1, ToolDef as ToolDef$1, ViewportToolDef as ViewportToolDef$1,
|
|
6
|
-
export { ALWAYS, Action, ActionDeps, ActionDisabledReason, ActionDispatch, ActionEnabledResult, ActionEntry, ActionPresentation, ActionsProp, ActionsRegistry, AffordanceHit, BindingOpts, BindingScope, BindingSource, BoundGesture, Bounds, BuildRuleCtxArgs, COARSE_TARGET_SCALE, ContributionRouting, DEFAULT_ALLOWED_CAPABILITIES, DEFAULT_DEVICE_PROFILE, DebugSink, DepName, DepSchema, DetectedDeviceFacts, DeviceProfile, Dispatcher, DispatcherContext, DragSample, Eligibility, EligibilityState, GestureBinding, HandleKind, HitShape, HotkeyTrigger, ImmediateInvoker, IngestItem, InputEvent, InvocationCtx, Invoker, MatchResult, ModifierState, NEVER, NodeId, OngoingHandle, OngoingInvoker, OngoingOverlay, OverlayPosition, OverlayRole, Point2, PointerSession, PointerSessionCallbacks, PointerSessionCancelReason, PointerSessionOptions, ResizeAnchor, ResolveAllOptions, ResolveOnlyResult, ResolvedCandidate, Rule, RuleCtx, ScopedBinding, ScratchKey, ScratchStore, SelectionApi, SelectionExtendKey, SelectionMode, Selector, ToolCtx, ToolKeybinding, ToolModifiers, ToolPresentation, ToolSlot, UiOngoingControl, Point2 as Vec2, View, actionBindings, buildRuleCtx, clientToCanvas, createDispatcher, deleteScratch, describeRule, evaluate, evaluateEnabled, getScratch, isEditableTarget, liveScope, matchesKeyBinding,
|
|
7
|
-
import { FillStyle, Stroke, TextureHandle, GradientUnits, ColorSpace, TilePatternSpec, GradientKind, GradStop, GradientFill, MarkerKey, MarkerRef } from '@weasel-js/paint';
|
|
8
|
-
export { ColorSpace, FillStyle, GradStop, GradientFill, GradientKind, GradientUnits, KitMarkerKey, MarkerKey, MarkerRef, OklchDeg, Region, STROKE_DASH_RATIOS, ScreenLength, Stroke, StrokeAlign, StrokeDashStyle, TextureHandle, TilePatternSpec, alignedStrokeRect, dashForStrokeStyle, hexToOklchDeg, lerpColorArray, lerpOklab, lerpOklch, oklabToOklch, oklabToSrgbU8, oklchDegToHex, oklchToOklab, resolveScreenLength, srgbFloatToOklab, srgbU8ToOklab, strokeDashStyleOf } from '@weasel-js/paint';
|
|
9
|
-
import { D as DrawCommand, E as Effect, w as Scene, x as RectPose, y as InertiaConfig, V as ViewAnimationOptions, N as Node$1, z as PoseComposition, A as SliceDep, B as VertexColorChannel, f as ShaderProgramHandle, F as InsertExtras, H as SerializedScene, J as GeometryProjection, K as ContentHandlerEntry, L as SvgIngestOptions, O as PanBounds, Q as Animator, U as ColorOverrideRegistry, X as UseSceneOptions, Y as SceneRegistry, Z as RegisteredOp, _ as PoseOverrides, $ as DerivedDep, a0 as ViewportDims, P as PathDrawCommand, T as TextDrawCommand,
|
|
10
|
-
export {
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import react__default, { RefObject, ReactNode, Ref, MouseEvent, ComponentType, MutableRefObject } from 'react';
|
|
3
|
+
import { a as UnitValue, b as UnitSystem, c as UnitEntry, d as Unit, U as UseMoveOptions, O as OriginProjection } from './grid-BXdz8GF2.js';
|
|
4
|
+
export { A as ANGLE_RADIANS, I as IMPERIAL_INCHES, M as METRIC_MM, P as PIXELS, R as RECT_ORIGIN_PROJECTION, e as UnitScale, f as formatUnit, g as gridSnapStrategy, p as pointToGridCell, r as resolveUnit, u as unitScale } from './grid-BXdz8GF2.js';
|
|
5
|
+
import { View, HitShape, HandleKind, NodeId, Bounds, ModifierState, PointerSessionCancelReason, DeviceProfile, Action, SelectionMode, SelectionExtendKey, SelectionApi, DepSchema, AnyToolOf, Contribution as Contribution$1, ContributionChrome as ContributionChrome$1, Tool as Tool$1, ToolDef as ToolDef$1, ViewportToolDef as ViewportToolDef$1, DebugSink, ToolKeybinding, HotkeyTrigger, RuleCtx, Rule, IngestItem, OngoingOverlay, DepName, ActionsProp, OverlayRole, ResizeAnchor, Point2 } from '@weasel-js/routing';
|
|
6
|
+
export { ALWAYS, Action, ActionDeps, ActionDisabledReason, ActionDispatch, ActionEnabledResult, ActionEntry, ActionItem, ActionPresentation, ActionVariant, ActionsProp, ActionsRegistry, AffordanceHit, BindingOpts, BindingScope, BindingSource, BoundGesture, Bounds, BuildRuleCtxArgs, COARSE_TARGET_SCALE, ContributionDeps, ContributionRouting, DEFAULT_ALLOWED_CAPABILITIES, DEFAULT_DEVICE_PROFILE, DebugSink, DepName, DepSchema, DetectedDeviceFacts, DeviceProfile, Dispatcher, DispatcherContext, DragSample, Eligibility, EligibilityState, GestureBinding, HandleKind, HitShape, HotkeyTrigger, ImmediateInvoker, IngestItem, InputEvent, InvocationCtx, Invoker, MatchResult, ModifierState, NEVER, NodeId, OngoingHandle, OngoingInvoker, OngoingOverlay, OverlayPosition, OverlayRole, Point2, PointerSession, PointerSessionCallbacks, PointerSessionCancelReason, PointerSessionOptions, ResizeAnchor, ResolveAllOptions, ResolveOnlyResult, ResolvedCandidate, Rule, RuleCtx, ScopedBinding, ScratchKey, ScratchStore, SelectionApi, SelectionExtendKey, SelectionMode, Selector, ToolCtx, ToolKeybinding, ToolModifiers, ToolPresentation, ToolSlot, UiOngoingControl, Point2 as Vec2, View, actionBindings, actionItems, buildDepsFromRequires, buildRuleCtx, clientToCanvas, createDispatcher, deleteScratch, describeRule, evaluate, evaluateEnabled, getScratch, isEditableTarget, liveScope, matchesKeyBinding, openPointerSession, resolveDeviceProfile, resolveParams, scopeBindings, scratchKey, setScratch, specificity } from '@weasel-js/routing';
|
|
7
|
+
import { FillStyle, Stroke, TextureHandle, GradientUnits, ColorSpace, TilePatternSpec, GradientKind, GradStop, GradientFill, MarkerKey, MarkerRef, Palette } from '@weasel-js/paint';
|
|
8
|
+
export { ColorInterpolationSpace, ColorSpace, FillStyle, GradStop, GradientFill, GradientKind, GradientUnits, HueInterpolation, KitMarkerKey, MarkerKey, MarkerRef, OklchDeg, Region, STROKE_DASH_RATIOS, ScreenLength, Stroke, StrokeAlign, StrokeDashStyle, TextureHandle, TilePatternSpec, alignedStrokeRect, contrastLineColor, dashForStrokeStyle, hexToOklchDeg, hslToSrgb, interpolateSrgb, lerpColorArray, lerpOklab, lerpOklch, linearSrgbToOklab, linearToSrgb, oklabToLinearSrgb, oklabToOklch, oklabToSrgbU8, oklchDegToHex, oklchToOklab, resolveScreenLength, srgbFloatToOklab, srgbToHsl, srgbToLinear, srgbU8ToOklab, strokeDashStyleOf } from '@weasel-js/paint';
|
|
9
|
+
import { D as DrawCommand, E as Effect, w as Scene, x as RectPose, y as InertiaConfig, V as ViewAnimationOptions, N as Node$1, z as PoseComposition, A as SliceDep, B as VertexColorChannel, f as ShaderProgramHandle, F as InsertExtras, H as SerializedScene, J as GeometryProjection, K as ContentHandlerEntry, L as SvgIngestOptions, O as PanBounds, Q as Animator, U as ColorOverrideRegistry, X as UseSceneOptions, Y as SceneRegistry, Z as RegisteredOp, _ as PoseOverrides, $ as DerivedDep, a0 as ViewportDims, P as PathDrawCommand, a1 as ViewApi, T as TextDrawCommand, a2 as ShaderProgram, G as GlMat3, a3 as BooleansAdapter, a4 as UseAnimatorOptions, a5 as SpringPresetName, a6 as EasingSpec, a7 as AnimationHandle, a8 as SampledTrack } from './builtins-HWyuLzE-.js';
|
|
10
|
+
export { a9 as AddLayerSpec, aa as AddNodeSpec, ab as AnimateToBoundsOptions, ac as AreaSelectDep, ad as BezierEasing, ae as BooleanOp, af as BooleanOpResult, ag as ClipboardDep, ah as ClipboardIngestCtx, ai as ColorOverride, aj as ColorOverrideFn, ak as ContainerNode, C as CullRect, al as DecayLoopConfig, am as DecayOptions, an as EASINGS, ao as EasingFn, ap as EasingName, aq as EditAnchorsDep, ar as EventBooking, as as EventBookingHandle, at as EventTrack, au as FitViewToBoundsOptions, a as GroupDrawCommand, av as IDENTITY_POSE_COMPOSITION, b as ImageDrawCommand, c as ImageMinification, aw as IngestCtx, ax as IngestionDep, ay as InsertDep, az as Interpolate, aA as InterpolatorFactory, aB as Keyframe, aC as LassoSelectDep, aD as LayerRecord, aE as LayoutDep, aF as LeafNode, aG as LoopFactory, aH as LoopOptions, aI as NestedTimeline, aJ as NodeAtPointDep, aK as PhysicsHandle, aL as PhysicsOptions, aM as PointerContextProvider, aN as PointerContextValue, aO as PointerWorldPos, aP as PoseAdapter, aQ as PoseClosure, aR as PoseOverride, aS as RECT_POSE_COMPOSITION, aT as RIGID_POSE_COMPOSITION, R as RenderTarget, aU as ResizePolicy, aV as SPRING_PRESETS, S as SPRITE_STRIDE, aW as SerializedNode, e as ShaderDrawCommand, g as ShaderUniform, aX as SnapDep, aY as SpringOptions, aZ as SpringPreset, i as SpriteSheet, j as SpritesDrawCommand, a_ as StaggerBuilder, a$ as StaggerDelay, b0 as StaggerFactory, b1 as StaggerOptions, b2 as StaggerPerItem, b3 as StaggerSpringPoseOptions, b4 as StaggerTweenOptions, b5 as SvgUnpacker, b6 as SystemLayerRecord, b7 as SystemLayerSpec, b8 as TextEditDep, b9 as TimelineClock, ba as TimelineEvent, bb as TimelineHandle, bc as TimelineOptions, bd as TimelineTrack, be as Track, bf as TweenLoopOptions, bg as TweenOptions, bh as UserLayerRecord, bi as VIEW_ANIMATION_KEY, bj as ViewAnimationApi, bk as ViewChannel, bl as applyBooleanOp, bm as asNodeId, m as blur, bn as composeRectPose, bo as composeRigidPose, bp as composeWorldPose, bq as createPointerStore, br as cubicBezierEasing, o as cullDrawCommands, bs as decomposeRectPose, bt as decomposeRigidPose, bu as easeIn, bv as easeInBack, bw as easeInBounce, bx as easeInCirc, by as easeInCubic, bz as easeInElastic, bA as easeInExpo, bB as easeInOut, bC as easeInOutBack, bD as easeInOutBounce, bE as easeInOutCirc, bF as easeInOutCubic, bG as easeInOutElastic, bH as easeInOutExpo, bI as easeInOutQuad, bJ as easeInOutQuart, bK as easeInOutQuint, bL as easeInOutSine, bM as easeInQuad, bN as easeInQuart, bO as easeInQuint, bP as easeInSine, bQ as easeOut, bR as easeOutBack, bS as easeOutBounce, bT as easeOutCirc, bU as easeOutCubic, bV as easeOutElastic, bW as easeOutExpo, bX as easeOutQuad, bY as easeOutQuart, bZ as easeOutQuint, b_ as easeOutSine, b$ as fitViewToBounds, p as frameRect, c0 as linear, q as mat3, c1 as rebaseLocalPose, c2 as registerContentHandler, r as registerEffect, c3 as resolveEasing, c4 as resolveStrokeWidth, c5 as translateRectPose, c6 as useDecayLoop, c7 as usePointerContext, c8 as usePointerPosition, c9 as useViewAnimation, ca as useViewAnimationOn, v as viewToMat3, u as vignette, cb as worldPoseLookup } from './builtins-HWyuLzE-.js';
|
|
11
11
|
import { CursorSpec, PaintedCursorState } from '@weasel-js/cursor';
|
|
12
12
|
export { BakeOptions, CursorGlyph, CursorGlyphName, CursorGlyphSpec, CursorSpec, PaintedCursor, PaintedCursorFrame, PaintedCursorState, ResolvedCursor, bakeCursor, createPaintedCursorState, cursorFor, resolveCursor, resolveCursorTier } from '@weasel-js/cursor';
|
|
13
13
|
import { ClaimableGesture, GestureSpec } from '@weasel-js/gestures';
|
|
14
|
-
export { ClaimableGesture, ClickSpec, DragSpec, DropSpec, GestureSpec, KeyHeldSpec, KeySpec, ModSpec, MultiTouchSpec, PasteSpec, TargetSpec, WheelSpec } from '@weasel-js/gestures';
|
|
15
|
-
import { S as SimulationNode, U as UseSimulationOptions, a as Simulation, P as PathBuilder } from './math-
|
|
16
|
-
export { D as DEFAULT_ALPHA_DECAY, b as DEFAULT_ALPHA_MIN, c as DEFAULT_VELOCITY_DECAY, d as PathStation, e as PointAlongPathOptions, f as SimulationCore, g as SimulationForce, h as SimulationOptions, i as aabbCenter, j as createSimulation, k as ellipsePath, l as linePath, p as pointAlongPath, m as pointInRotatedRect, n as polygonFromPoints, o as polylineFromPoints, r as rectCorners, q as rectPath, s as regularPolygonPath, t as rotatePoint, u as rotatedRectCorners, v as starPath } from './math-
|
|
14
|
+
export { ClaimableGesture, ClickSpec, DragSpec, DropSpec, GestureSpec, KeyHeldSpec, KeySpec, ModSpec, MultiTouchSpec, PasteSpec, PinchSpec, TargetSpec, WheelSpec } from '@weasel-js/gestures';
|
|
15
|
+
import { S as SimulationNode, U as UseSimulationOptions, a as Simulation, P as PathBuilder } from './math-MCQcf_gc.js';
|
|
16
|
+
export { D as DEFAULT_ALPHA_DECAY, b as DEFAULT_ALPHA_MIN, c as DEFAULT_VELOCITY_DECAY, d as PathStation, e as PointAlongPathOptions, f as SimulationCore, g as SimulationForce, h as SimulationOptions, i as aabbCenter, j as createSimulation, k as ellipsePath, l as linePath, p as pointAlongPath, m as pointInRotatedRect, n as polygonFromPoints, o as polylineFromPoints, r as rectCorners, q as rectPath, s as regularPolygonPath, t as rotatePoint, u as rotatedRectCorners, v as starPath } from './math-MCQcf_gc.js';
|
|
17
17
|
import { ToolsApi as ToolsApi$1, UseToolsOptions as UseToolsOptions$1 } from '@weasel-js/routing/react';
|
|
18
|
-
export { ActionsProvider, ActionsScope, ActiveToolContextProvider, ActiveToolContextProviderIfRoot, ActiveToolContextProviderProps, ActiveToolContextValue, DepRegistry, DepRegistryProvider, DispatcherChannels, UseGestureDispatcherOptions, useAction, useActionsRegistry, useActiveToolContext, useDepRegistry, useDepSource, useGestureDispatcher, useOptionalActiveToolContext, useOptionalDepRegistry } from '@weasel-js/routing/react';
|
|
19
|
-
import { B as BoundsConstraint, P as PointSnapBehavior, L as LassoSelectBehavior, R as RotateBehavior, S as SnapStrategy, M as MoveBehavior, I as InsertBehavior } from './types-
|
|
20
|
-
export { A as ActionBehavior, b as AreaSelectOverlay, c as BehaviorMoveResult, d as BehaviorResult, C as CloneBehavior, e as CloneLayer, f as ClonePose, G as GestureContext, g as GroupTransform, h as InsertMoveResult, i as InsertOverlay, j as InsertPoint, k as InsertProposed, l as LassoSelectMoveResult, m as LassoSelectOverlay, n as LassoSelectPose, o as LassoSelectProposed, p as PointSnapContext, a as PointSnapFrame, q as PointSnapResult, r as PointerState, s as ResizeMoveResult, t as ResizeOverlay, u as ResizeProposed, v as RotateMoveResult, w as RotateOverlay, x as RotateProposed } from './types-
|
|
21
|
-
import { P as PoseDescriptor,
|
|
22
|
-
export {
|
|
23
|
-
import { U as UseResizeOptions } from './pointSnapToGrid-
|
|
24
|
-
export { C as CORNER_ANCHORS, a as CornerAnchor, e as CornerEdge, b as CornerHandle, c as cornerPoint, d as cornerResizeHandles, h as hitCornerHandle, p as pointSnapToGrid } from './pointSnapToGrid-
|
|
25
|
-
import { M as MoveAdapter, A as AreaSelectAdapter,
|
|
26
|
-
export {
|
|
27
|
-
import
|
|
18
|
+
export { ActionsProvider, ActionsScope, ActiveToolContextProvider, ActiveToolContextProviderIfRoot, ActiveToolContextProviderProps, ActiveToolContextValue, DepRegistry, DepRegistryProvider, DispatcherChannels, OngoingAction, UseGestureDispatcherOptions, useAction, useActionsRegistry, useActiveToolContext, useDepRegistry, useDepSource, useGestureDispatcher, useOngoingAction, useOptionalActiveToolContext, useOptionalDepRegistry } from '@weasel-js/routing/react';
|
|
19
|
+
import { B as BoundsConstraint, P as PointSnapBehavior, L as LassoSelectBehavior, R as RotateBehavior, S as SnapStrategy, M as MoveBehavior, I as InsertBehavior } from './types-D_74YlWs.js';
|
|
20
|
+
export { A as ActionBehavior, b as AreaSelectOverlay, c as BehaviorMoveResult, d as BehaviorResult, C as CloneBehavior, e as CloneLayer, f as ClonePose, G as GestureContext, g as GroupTransform, h as InsertMoveResult, i as InsertOverlay, j as InsertPoint, k as InsertProposed, l as LassoSelectMoveResult, m as LassoSelectOverlay, n as LassoSelectPose, o as LassoSelectProposed, p as PointSnapContext, a as PointSnapFrame, q as PointSnapResult, r as PointerState, s as ResizeMoveResult, t as ResizeOverlay, u as ResizeProposed, v as RotateMoveResult, w as RotateOverlay, x as RotateProposed } from './types-D_74YlWs.js';
|
|
21
|
+
import { P as PoseDescriptor, b as RotatedPose } from './poseDescriptor-rZa9W5hJ.js';
|
|
22
|
+
export { R as RECT_POSE_DESCRIPTOR, a as ROTATED_POSE_DESCRIPTOR, p as poseDescriptorForNode, t as translatePoseViaDescriptor, v as visualBoundsViaDescriptor } from './poseDescriptor-rZa9W5hJ.js';
|
|
23
|
+
import { U as UseResizeOptions } from './pointSnapToGrid-7mCcm6qG.js';
|
|
24
|
+
export { C as CORNER_ANCHORS, a as CornerAnchor, e as CornerEdge, b as CornerHandle, c as cornerPoint, d as cornerResizeHandles, h as hitCornerHandle, p as pointSnapToGrid } from './pointSnapToGrid-7mCcm6qG.js';
|
|
25
|
+
import { M as MoveAdapter, A as AreaSelectAdapter, c as LassoHitMode, d as LassoSelectAdapter, R as ResizeAdapter, e as RotateAdapter, L as LayoutStrategy, f as LayerEnumerableAdapter, I as InsertAdapter, C as ClipboardSnapshot, b as LayoutDropTargetMode, O as OrderedAdapter, a as SceneAdapter, g as LayoutSnap } from './types-CxC8P6W0.js';
|
|
26
|
+
export { h as ContainerBounds, D as DropRegion, i as DropTarget, j as LayoutChild, k as LayoutContainer, l as LayoutDragged, S as SnapTarget } from './types-CxC8P6W0.js';
|
|
27
|
+
import { a as PolygonPath, P as Path, R as RectPath } from './path-JEV2c5If.js';
|
|
28
|
+
export { b as PathFillRule } from './path-JEV2c5If.js';
|
|
28
29
|
import { Op, HistorySelection, CreateHistoryOptions, History } from '@weasel-js/history';
|
|
29
30
|
export * from '@weasel-js/history';
|
|
30
31
|
export { Op } from '@weasel-js/history';
|
|
31
32
|
import { PlacementAlign, Rect, Mat3 } from '@weasel-js/geom';
|
|
32
33
|
export { DEFAULT_FLATTEN_TOLERANCE, PATH_C, PATH_CMD_LENGTHS, PATH_L, PATH_M, PATH_Q, PATH_Z, Rect, flattenCubic, flattenCubicWithArcLen, flattenQuadratic, flattenQuadraticWithArcLen, pathCommandCoordCount } from '@weasel-js/geom';
|
|
33
34
|
import { TextRenderer, TextPose, StyledRun, TextStyle, TextVerticalAlign, TextPaint } from '@weasel-js/text';
|
|
34
|
-
export { DEFAULT_TEXT_STYLE, LaidOutDecoration, LaidOutGroup, LaidOutLineBox, LaidOutOutlineGlyph, LaidOutQuad, LaidOutRuns, LayoutLine, LayoutResult, LayoutRunsOpts, MARKDOWN_RUN_GRAMMAR, MarkdownFontOptions, MeasureFn, MeasureTextBoundsOpts, MeasuredText, PositionedRun, ResolvedRun, ResolvedTextStyle, RunFlag, RunGrammar, RunMarker, SCRIPT_METRICS, StyledRun, TextAlign, TextDirection, TextLineBoxesOpts, TextPaint, TextPose, TextPoseLayout, TextPoseLayoutInput, TextRenderer, TextStyle, TextVerticalAlign, cachedLayoutRuns, createMarkdownRenderer, fontString, layoutMarkdown, layoutRuns, layoutTextPose, markdownToRuns, measureText, measureTextBounds, measuredWidth, resolveAlign, resolveRuns, resolveTextStyle, runsToMarkdown, runsToPlainText, textLineBoxes, textPoseLayoutInput, toRuns, verticalAlignOffset } from '@weasel-js/text';
|
|
35
|
+
export { DEFAULT_TEXT_STYLE, LaidOutDecoration, LaidOutGroup, LaidOutLineBox, LaidOutOutlineGlyph, LaidOutQuad, LaidOutRuns, LayoutLine, LayoutResult, LayoutRunsOpts, MARKDOWN_RUN_GRAMMAR, MarkdownFontOptions, MeasureFn, MeasureTextBoundsOpts, MeasuredText, PositionedRun, ResolvedRun, ResolvedTextStyle, RunFlag, RunGrammar, RunMarker, RunSourceMap, SCRIPT_METRICS, StyledRun, TextAlign, TextDirection, TextLineBoxesOpts, TextPaint, TextPose, TextPoseLayout, TextPoseLayoutInput, TextRenderer, TextStyle, TextTransform, TextVerticalAlign, TransformedRunText, cachedLayoutRuns, createMarkdownRenderer, fontString, layoutMarkdown, layoutRuns, layoutTextPose, markdownToRuns, measureText, measureTextBounds, measuredWidth, resolveAlign, resolveRuns, resolveTextStyle, runsToMarkdown, runsToPlainText, textLineBoxes, textPoseLayoutInput, toRuns, transformRunTexts, verticalAlignOffset } from '@weasel-js/text';
|
|
35
36
|
import { G as Guide } from './types-D2tTKEU0.js';
|
|
36
|
-
export { A as AUTO_POSE_DESCRIPTOR, i as isPathLike, a as isRectPose } from './autoPoseDescriptor-
|
|
37
|
-
export { U as UseInsertOptions } from './options-
|
|
37
|
+
export { A as AUTO_POSE_DESCRIPTOR, i as isPathLike, a as isRectPose } from './autoPoseDescriptor-_XOyF7t4.js';
|
|
38
|
+
export { U as UseInsertOptions } from './options-CzjxFoYZ.js';
|
|
38
39
|
export { UseClipboardOpsOptions, UseClipboardOpsReturn, WEASEL_CLIPBOARD_MIME, WEASEL_CLIPBOARD_MIME_WEB, buildWeaselClipboardText, embedWeaselMetadataInSvg, extractWeaselClipboardFromSvg, parseWeaselClipboardText, sniffWeaselClipboardText, useClipboardOps } from './clipboard.js';
|
|
39
40
|
export { cloneByAltDrag } from './clone.js';
|
|
40
41
|
export { FontStyle, FontVariant, LocalFontOutlinesResult, OutlineSource, OutlineStatus, OutlineVariant, canQueryLocalFonts, enableLocalFontOutlines, hasFontOutlines, isCanvasFont, listFontOutlines, outlineStatus, registerCanvasFont, registerFont, registerFontOutlines, subscribeGlyphReady, unregisterCanvasFont, unregisterFontOutlines } from '@weasel-js/font';
|
|
41
42
|
|
|
43
|
+
/** Pan offset (in pixels) plus per-axis zoom (pixels per content unit). */
|
|
44
|
+
interface ViewTransform {
|
|
45
|
+
panX: number;
|
|
46
|
+
panY: number;
|
|
47
|
+
zoom: {
|
|
48
|
+
x: number;
|
|
49
|
+
y: number;
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/** Project a world-space point to screen-space pixels through a `ViewTransform`. */
|
|
53
|
+
declare function worldToScreen(worldX: number, worldY: number, view: ViewTransform): [number, number];
|
|
54
|
+
/** Inverse of `worldToScreen` — recover the world-space point under a screen-space pixel. */
|
|
55
|
+
declare function screenToWorld(screenX: number, screenY: number, view: ViewTransform): [number, number];
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Input convenience for zoom primitives. A `number` is treated as a
|
|
59
|
+
* uniform factor applied to both axes; a `{x, y}` vector applies
|
|
60
|
+
* per-axis factors.
|
|
61
|
+
*/
|
|
62
|
+
type ZoomFactor = number | {
|
|
63
|
+
x: number;
|
|
64
|
+
y: number;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Input convenience for zoom-clamp ranges. A `number` is applied as the
|
|
68
|
+
* same bound on both axes; a `{x, y}` vector applies per-axis bounds.
|
|
69
|
+
*/
|
|
70
|
+
type ZoomBound = number | {
|
|
71
|
+
x: number;
|
|
72
|
+
y: number;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Bridge `View` into the legacy `ViewTransform` shape so chrome can keep
|
|
76
|
+
* calling `worldToScreen` / `screenToWorld`. `View` and `ViewTransform`
|
|
77
|
+
* use opposite sign conventions for the translation half (`view.x` is
|
|
78
|
+
* camera position; `panX` is canvas translation), so the adapter flips
|
|
79
|
+
* the sign and multiplies by per-axis scale.
|
|
80
|
+
*/
|
|
81
|
+
declare function viewToTransform(view: View): ViewTransform;
|
|
82
|
+
/**
|
|
83
|
+
* How far `view` is zoomed in, as one number — the geometric mean of its two
|
|
84
|
+
* axes, so a uniform view reports its own scale and a stretched one reports
|
|
85
|
+
* the scale that covers the same area.
|
|
86
|
+
*
|
|
87
|
+
* What a `RuleCtx` carries, because the only rule that asks about the
|
|
88
|
+
* viewport asks for a threshold rather than a camera.
|
|
89
|
+
*/
|
|
90
|
+
declare function viewZoom(view: View): number;
|
|
91
|
+
/**
|
|
92
|
+
* `view` inside the invariant {@link View} documents: a zero or non-finite
|
|
93
|
+
* scale axis becomes `ZOOM_FLOOR`, a negative one keeps its sign, and a
|
|
94
|
+
* non-finite translation becomes 0. Returns `view` itself when it already
|
|
95
|
+
* holds, so a valid view keeps its identity.
|
|
96
|
+
*/
|
|
97
|
+
declare function normalizeView(view: View): View;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* `DebugSink`, `HitShape` and `HandleKind` are declared in
|
|
101
|
+
* `@weasel-js/routing` — `ToolCtx.debug` carries a sink, so routing has to
|
|
102
|
+
* name the type. Re-exported here, beside the overlay that reads one.
|
|
103
|
+
*/
|
|
104
|
+
|
|
105
|
+
/** One bit per debug feature; absent keys are off. */
|
|
106
|
+
interface DebugConfig {
|
|
107
|
+
hitboxes?: boolean;
|
|
108
|
+
handles?: boolean;
|
|
109
|
+
bounds?: boolean;
|
|
110
|
+
origins?: boolean;
|
|
111
|
+
snap?: boolean;
|
|
112
|
+
layers?: boolean;
|
|
113
|
+
/** Render each tracked node's id as a label at the top-left of its
|
|
114
|
+
* bounds. Pulls from the same `recordBounds` stream `bounds` uses, so
|
|
115
|
+
* no extra sink calls are required to enable. */
|
|
116
|
+
ids?: boolean;
|
|
117
|
+
/** Rolling FPS counter rendered in the top-left corner of the canvas.
|
|
118
|
+
* Tracks the rate at which the debug overlay's draw callback runs;
|
|
119
|
+
* this matches the canvas's effective repaint rate. */
|
|
120
|
+
fps?: boolean;
|
|
121
|
+
/** Optional per-feature color overrides; falls back to the default theme. */
|
|
122
|
+
theme?: Partial<DebugTheme>;
|
|
123
|
+
/** Optional per-feature line-width / dash overrides; falls back to
|
|
124
|
+
* {@link DEFAULT_DEBUG_STROKES}. */
|
|
125
|
+
strokes?: Partial<DebugStrokes>;
|
|
126
|
+
}
|
|
127
|
+
/** The name of one debug-overlay feature — the keys of {@link DebugConfig}
|
|
128
|
+
* that toggle a visualization. */
|
|
129
|
+
type DebugFeature = 'hitboxes' | 'handles' | 'bounds' | 'origins' | 'snap' | 'layers' | 'ids' | 'fps';
|
|
130
|
+
/** Colors the debug overlay draws with, one entry per feature. */
|
|
131
|
+
interface DebugTheme {
|
|
132
|
+
hitboxFill: string;
|
|
133
|
+
hitboxStroke: string;
|
|
134
|
+
handle: string;
|
|
135
|
+
bounds: string;
|
|
136
|
+
origin: string;
|
|
137
|
+
snap: string;
|
|
138
|
+
layerText: string;
|
|
139
|
+
layerTextBg: string;
|
|
140
|
+
/** Color for the per-node id label rendered when `config.ids` is on. */
|
|
141
|
+
idText: string;
|
|
142
|
+
/** Foreground / background for the FPS panel. */
|
|
143
|
+
fpsText: string;
|
|
144
|
+
fpsTextBg: string;
|
|
145
|
+
}
|
|
146
|
+
/** Line width and dash pattern for one stroked debug feature. An empty (or
|
|
147
|
+
* omitted) `dash` is a solid line. */
|
|
148
|
+
interface DebugStroke {
|
|
149
|
+
width: number;
|
|
150
|
+
dash?: readonly number[];
|
|
151
|
+
}
|
|
152
|
+
/** The stroked half of the debug overlay's appearance, split from
|
|
153
|
+
* {@link DebugTheme} because only some features draw a line at all — text
|
|
154
|
+
* panels and filled origin dots take color and nothing else. */
|
|
155
|
+
interface DebugStrokes {
|
|
156
|
+
hitbox: DebugStroke;
|
|
157
|
+
bounds: DebugStroke;
|
|
158
|
+
handle: DebugStroke;
|
|
159
|
+
/** Rejected snap candidates only; accepted ones paint as a filled dot. */
|
|
160
|
+
snap: DebugStroke;
|
|
161
|
+
}
|
|
162
|
+
/** A hit region tested during the current frame. */
|
|
163
|
+
interface RecordedHitbox {
|
|
164
|
+
id: string;
|
|
165
|
+
kind: 'body' | 'handle' | 'rotation' | 'anchor';
|
|
166
|
+
shape: HitShape;
|
|
167
|
+
}
|
|
168
|
+
/** A handle drawn during the current frame, and where. */
|
|
169
|
+
interface RecordedHandle {
|
|
170
|
+
id: string;
|
|
171
|
+
position: {
|
|
172
|
+
x: number;
|
|
173
|
+
y: number;
|
|
174
|
+
};
|
|
175
|
+
kind: HandleKind;
|
|
176
|
+
}
|
|
177
|
+
/** A node's bounds as computed during the current frame. */
|
|
178
|
+
interface RecordedBounds {
|
|
179
|
+
id: string;
|
|
180
|
+
bounds: {
|
|
181
|
+
x: number;
|
|
182
|
+
y: number;
|
|
183
|
+
width: number;
|
|
184
|
+
height: number;
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
/** A node's transform origin as used during the current frame. */
|
|
188
|
+
interface RecordedOrigin {
|
|
189
|
+
id: string;
|
|
190
|
+
point: {
|
|
191
|
+
x: number;
|
|
192
|
+
y: number;
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
/** A snap candidate considered during the current gesture, and whether it
|
|
196
|
+
* won. Unlike the other records these survive across frames, until the
|
|
197
|
+
* gesture ends. */
|
|
198
|
+
interface RecordedSnap {
|
|
199
|
+
point: {
|
|
200
|
+
x: number;
|
|
201
|
+
y: number;
|
|
202
|
+
};
|
|
203
|
+
accepted: boolean;
|
|
204
|
+
}
|
|
205
|
+
/** A render layer that drew during the current frame. */
|
|
206
|
+
interface RecordedLayer {
|
|
207
|
+
id: string;
|
|
208
|
+
label: string;
|
|
209
|
+
space: 'world' | 'screen';
|
|
210
|
+
index: number;
|
|
211
|
+
}
|
|
212
|
+
/** Everything the sink collected, ready for the overlay to draw. */
|
|
213
|
+
interface DebugSnapshot {
|
|
214
|
+
hitboxes: RecordedHitbox[];
|
|
215
|
+
handles: RecordedHandle[];
|
|
216
|
+
bounds: RecordedBounds[];
|
|
217
|
+
origins: RecordedOrigin[];
|
|
218
|
+
snap: RecordedSnap[];
|
|
219
|
+
layers: RecordedLayer[];
|
|
220
|
+
}
|
|
221
|
+
|
|
42
222
|
/**
|
|
43
223
|
* The kit version a build was compiled from, so an app can report what it is
|
|
44
224
|
* running. Substituted at build time — by `tsup.config.ts` for the published
|
|
@@ -62,20 +242,6 @@ declare const VERSION: string;
|
|
|
62
242
|
/** Round `value` to the nearest multiple of `cellSize`. Returns 0 when the result would be -0. */
|
|
63
243
|
declare function roundToCell(value: number, cellSize: number): number;
|
|
64
244
|
|
|
65
|
-
/** Pan offset (in pixels) plus per-axis zoom (pixels per content unit). */
|
|
66
|
-
interface ViewTransform {
|
|
67
|
-
panX: number;
|
|
68
|
-
panY: number;
|
|
69
|
-
zoom: {
|
|
70
|
-
x: number;
|
|
71
|
-
y: number;
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
/** Project a world-space point to screen-space pixels through a `ViewTransform`. */
|
|
75
|
-
declare function worldToScreen(worldX: number, worldY: number, view: ViewTransform): [number, number];
|
|
76
|
-
/** Inverse of `worldToScreen` — recover the world-space point under a screen-space pixel. */
|
|
77
|
-
declare function screenToWorld(screenX: number, screenY: number, view: ViewTransform): [number, number];
|
|
78
|
-
|
|
79
245
|
/**
|
|
80
246
|
* Pointer-tracking glue that turns hover position into a grid cell, suitable
|
|
81
247
|
* for dropping straight into `createCellHighlightLayer({ getCell })`. Pairs
|
|
@@ -134,48 +300,6 @@ interface UseGridCellHoverReturn {
|
|
|
134
300
|
/** Track which grid cell the pointer is over; pairs with `createCellHighlightLayer`. */
|
|
135
301
|
declare function useGridCellHover(opts: UseGridCellHoverOptions): UseGridCellHoverReturn;
|
|
136
302
|
|
|
137
|
-
/**
|
|
138
|
-
* Input convenience for zoom primitives. A `number` is treated as a
|
|
139
|
-
* uniform factor applied to both axes; a `{x, y}` vector applies
|
|
140
|
-
* per-axis factors.
|
|
141
|
-
*/
|
|
142
|
-
type ZoomFactor = number | {
|
|
143
|
-
x: number;
|
|
144
|
-
y: number;
|
|
145
|
-
};
|
|
146
|
-
/**
|
|
147
|
-
* Input convenience for zoom-clamp ranges. A `number` is applied as the
|
|
148
|
-
* same bound on both axes; a `{x, y}` vector applies per-axis bounds.
|
|
149
|
-
*/
|
|
150
|
-
type ZoomBound = number | {
|
|
151
|
-
x: number;
|
|
152
|
-
y: number;
|
|
153
|
-
};
|
|
154
|
-
/**
|
|
155
|
-
* Bridge `View` into the legacy `ViewTransform` shape so chrome can keep
|
|
156
|
-
* calling `worldToScreen` / `screenToWorld`. `View` and `ViewTransform`
|
|
157
|
-
* use opposite sign conventions for the translation half (`view.x` is
|
|
158
|
-
* camera position; `panX` is canvas translation), so the adapter flips
|
|
159
|
-
* the sign and multiplies by per-axis scale.
|
|
160
|
-
*/
|
|
161
|
-
declare function viewToTransform(view: View): ViewTransform;
|
|
162
|
-
/**
|
|
163
|
-
* How far `view` is zoomed in, as one number — the geometric mean of its two
|
|
164
|
-
* axes, so a uniform view reports its own scale and a stretched one reports
|
|
165
|
-
* the scale that covers the same area.
|
|
166
|
-
*
|
|
167
|
-
* What a `RuleCtx` carries, because the only rule that asks about the
|
|
168
|
-
* viewport asks for a threshold rather than a camera.
|
|
169
|
-
*/
|
|
170
|
-
declare function viewZoom(view: View): number;
|
|
171
|
-
/**
|
|
172
|
-
* `view` inside the invariant {@link View} documents: a zero or non-finite
|
|
173
|
-
* scale axis becomes `ZOOM_FLOOR`, a negative one keeps its sign, and a
|
|
174
|
-
* non-finite translation becomes 0. Returns `view` itself when it already
|
|
175
|
-
* holds, so a valid view keeps its identity.
|
|
176
|
-
*/
|
|
177
|
-
declare function normalizeView(view: View): View;
|
|
178
|
-
|
|
179
303
|
interface ChromeState {
|
|
180
304
|
/** Currently selected ids. Live; reflects useSelection's React state. */
|
|
181
305
|
readonly selection: readonly NodeId[];
|
|
@@ -1608,7 +1732,7 @@ interface DeviceProfileProviderProps {
|
|
|
1608
1732
|
* Publish one resolved profile to a subtree. `<SceneCanvas>` renders this so
|
|
1609
1733
|
* overlays, affordances, and consumer chrome all read the same object.
|
|
1610
1734
|
*/
|
|
1611
|
-
declare function DeviceProfileProvider({ value, children }: DeviceProfileProviderProps):
|
|
1735
|
+
declare function DeviceProfileProvider({ value, children }: DeviceProfileProviderProps): react.FunctionComponentElement<react.ProviderProps<DeviceProfile | null>>;
|
|
1612
1736
|
|
|
1613
1737
|
/**
|
|
1614
1738
|
* Compute the largest uniform zoom (px per content-unit) that fits a content
|
|
@@ -1820,8 +1944,11 @@ declare function keySpecShortcut(spec: GestureSpec): ActionShortcut | undefined;
|
|
|
1820
1944
|
* Every keyboard shortcut an action answers to, in declaration order.
|
|
1821
1945
|
* Specs `keySpecShortcut` has no chip for are skipped, and bindings it leaves
|
|
1822
1946
|
* identical are emitted once; an action bound only to those returns empty.
|
|
1947
|
+
*
|
|
1948
|
+
* With `params` — an `ActionItem`'s — only the bindings that pass those same
|
|
1949
|
+
* values count, so each variant of `flip` gets its own key.
|
|
1823
1950
|
*/
|
|
1824
|
-
declare function actionShortcuts(action: Action): readonly ActionShortcut[];
|
|
1951
|
+
declare function actionShortcuts(action: Action, params?: Readonly<Record<string, unknown>>): readonly ActionShortcut[];
|
|
1825
1952
|
|
|
1826
1953
|
/**
|
|
1827
1954
|
* `moveAction` — first `ongoing`-timing Action descriptor.
|
|
@@ -2263,17 +2390,23 @@ declare const viewportDragPanAction: Action & {
|
|
|
2263
2390
|
* Browsers synthesize a trackpad pinch as ctrl+wheel. On a Mac that is a
|
|
2264
2391
|
* *different* event from the `mod` binding above (`mod` is metaKey there), so
|
|
2265
2392
|
* pinch needs its own binding or nothing claims it and the page zooms instead.
|
|
2393
|
+
* - `{ kind: 'pinch' }` → Safari trackpad pinch (WebKit `gesturechange`),
|
|
2394
|
+
* params: `{ kind: 'pinch' }`. Safari may send the same pinch as ctrl+wheel
|
|
2395
|
+
* as well; the dispatcher swallows that copy while a claimed gesture is live,
|
|
2396
|
+
* so only one of the two bindings fires per pinch.
|
|
2266
2397
|
* - `{ kind: 'key', key: '=' }` → zoom in, params: `{ kind: 'in' }`
|
|
2267
2398
|
* - `{ kind: 'key', key: '-' }` → zoom out, params: `{ kind: 'out' }`
|
|
2268
2399
|
* - `{ kind: 'key', key: '0' }` → reset zoom, params: `{ kind: 'reset' }`
|
|
2269
2400
|
*
|
|
2270
2401
|
* ## Design notes
|
|
2271
2402
|
* The invoker switches on `params.kind`:
|
|
2272
|
-
* - `'wheel'`:
|
|
2273
|
-
* one
|
|
2274
|
-
*
|
|
2275
|
-
*
|
|
2276
|
-
*
|
|
2403
|
+
* - `'wheel'` and `'pinch'`: both reduce to a scale factor about a focal
|
|
2404
|
+
* point and share one `zoomAt` call. A wheel sample's factor is
|
|
2405
|
+
* `wheelZoomFactor(deltaY)`, the kit's one statement of the wheel
|
|
2406
|
+
* convention; a pinch sample carries its factor as `scale`. The dispatcher
|
|
2407
|
+
* merges event data into params and converts client coords to canvas-local
|
|
2408
|
+
* (subtracting the canvas's bounding rect) before merging — `zoomAt`
|
|
2409
|
+
* expects canvas-local.
|
|
2277
2410
|
* - `'in'`/`'out'`: step zoom by ×1.25 / ×0.8, anchored at the host center
|
|
2278
2411
|
* when the `view` dep wires `hostSize()` (SceneCanvas does), falling back
|
|
2279
2412
|
* to the canvas top-left origin for consumers that don't.
|
|
@@ -2283,7 +2416,7 @@ declare const viewportDragPanAction: Action & {
|
|
|
2283
2416
|
* The three discrete branches glide instead of jumping when the `animate`
|
|
2284
2417
|
* option is configured and the `view` dep implements `animate` — they hand the
|
|
2285
2418
|
* action a target and nothing in between, which is the whole condition for
|
|
2286
|
-
* tweening. `'wheel'` always
|
|
2419
|
+
* tweening. `'wheel'` and `'pinch'` always jump per sample.
|
|
2287
2420
|
*
|
|
2288
2421
|
* ## Key binding modifier notes
|
|
2289
2422
|
* The key bindings (`=`, `-`, `0`) require `mod: true` (Cmd on Mac, Ctrl elsewhere).
|
|
@@ -2576,6 +2709,16 @@ declare const clipboardCopyAction: Action & {
|
|
|
2576
2709
|
declare const clipboardCutAction: Action & {
|
|
2577
2710
|
requires: string[];
|
|
2578
2711
|
};
|
|
2712
|
+
/**
|
|
2713
|
+
* @experimental
|
|
2714
|
+
* Static descriptor for the `clipboard.paste` Action — what a Paste button or
|
|
2715
|
+
* menu item triggers. It has no key binding: Cmd/Ctrl+V already arrives as a
|
|
2716
|
+
* DOM `paste` event, which the dispatcher routes to `ingest`, and a binding
|
|
2717
|
+
* here would fire alongside it and paste twice.
|
|
2718
|
+
*/
|
|
2719
|
+
declare const clipboardPasteAction: Action & {
|
|
2720
|
+
requires: string[];
|
|
2721
|
+
};
|
|
2579
2722
|
|
|
2580
2723
|
/**
|
|
2581
2724
|
* `enterTextEditAction` — immediate Action descriptor for entering in-place
|
|
@@ -2739,8 +2882,12 @@ declare function useStandardActions(opts: UseStandardActionsOptions): void;
|
|
|
2739
2882
|
/** Build the adapter the default actions commit through when the consumer
|
|
2740
2883
|
* supplies no `applyOps` hook of its own — it applies ops straight to the
|
|
2741
2884
|
* scene. Path and text ops are not covered; those surfaces belong to their
|
|
2742
|
-
* own owners.
|
|
2743
|
-
|
|
2885
|
+
* own owners.
|
|
2886
|
+
*
|
|
2887
|
+
* Pass `selection` (a `SelectionApi`'s `adapterMethods`) and selection reads
|
|
2888
|
+
* and writes go through it rather than the scene, so a canvas that gates its
|
|
2889
|
+
* selection — `selectionMode="none"` — gates what these batches select too. */
|
|
2890
|
+
declare function defaultCommitAdapter<TPose>(scene: Scene<unknown, string, TPose>, selection?: SelectionApi['adapterMethods']): {
|
|
2744
2891
|
getNode: (id: string) => Node$1<unknown, string, TPose> | undefined;
|
|
2745
2892
|
getNodes: () => Node$1<unknown, string, TPose>[];
|
|
2746
2893
|
getPose: (id: string) => TPose;
|
|
@@ -3191,129 +3338,6 @@ interface ToolPrefGroup {
|
|
|
3191
3338
|
children: Record<string, ToolPrefLeaf | ToolPrefGroup>;
|
|
3192
3339
|
}
|
|
3193
3340
|
|
|
3194
|
-
/**
|
|
3195
|
-
* `DebugSink`, `HitShape` and `HandleKind` are declared in
|
|
3196
|
-
* `@weasel-js/routing` — `ToolCtx.debug` carries a sink, so routing has to
|
|
3197
|
-
* name the type. Re-exported here, beside the overlay that reads one.
|
|
3198
|
-
*/
|
|
3199
|
-
|
|
3200
|
-
/** One bit per debug feature; absent keys are off. */
|
|
3201
|
-
interface DebugConfig {
|
|
3202
|
-
hitboxes?: boolean;
|
|
3203
|
-
handles?: boolean;
|
|
3204
|
-
bounds?: boolean;
|
|
3205
|
-
origins?: boolean;
|
|
3206
|
-
snap?: boolean;
|
|
3207
|
-
layers?: boolean;
|
|
3208
|
-
/** Render each tracked node's id as a label at the top-left of its
|
|
3209
|
-
* bounds. Pulls from the same `recordBounds` stream `bounds` uses, so
|
|
3210
|
-
* no extra sink calls are required to enable. */
|
|
3211
|
-
ids?: boolean;
|
|
3212
|
-
/** Rolling FPS counter rendered in the top-left corner of the canvas.
|
|
3213
|
-
* Tracks the rate at which the debug overlay's draw callback runs;
|
|
3214
|
-
* this matches the canvas's effective repaint rate. */
|
|
3215
|
-
fps?: boolean;
|
|
3216
|
-
/** Optional per-feature color overrides; falls back to the default theme. */
|
|
3217
|
-
theme?: Partial<DebugTheme>;
|
|
3218
|
-
/** Optional per-feature line-width / dash overrides; falls back to
|
|
3219
|
-
* {@link DEFAULT_DEBUG_STROKES}. */
|
|
3220
|
-
strokes?: Partial<DebugStrokes>;
|
|
3221
|
-
}
|
|
3222
|
-
/** The name of one debug-overlay feature — the keys of {@link DebugConfig}
|
|
3223
|
-
* that toggle a visualization. */
|
|
3224
|
-
type DebugFeature = 'hitboxes' | 'handles' | 'bounds' | 'origins' | 'snap' | 'layers' | 'ids' | 'fps';
|
|
3225
|
-
/** Colors the debug overlay draws with, one entry per feature. */
|
|
3226
|
-
interface DebugTheme {
|
|
3227
|
-
hitboxFill: string;
|
|
3228
|
-
hitboxStroke: string;
|
|
3229
|
-
handle: string;
|
|
3230
|
-
bounds: string;
|
|
3231
|
-
origin: string;
|
|
3232
|
-
snap: string;
|
|
3233
|
-
layerText: string;
|
|
3234
|
-
layerTextBg: string;
|
|
3235
|
-
/** Color for the per-node id label rendered when `config.ids` is on. */
|
|
3236
|
-
idText: string;
|
|
3237
|
-
/** Foreground / background for the FPS panel. */
|
|
3238
|
-
fpsText: string;
|
|
3239
|
-
fpsTextBg: string;
|
|
3240
|
-
}
|
|
3241
|
-
/** Line width and dash pattern for one stroked debug feature. An empty (or
|
|
3242
|
-
* omitted) `dash` is a solid line. */
|
|
3243
|
-
interface DebugStroke {
|
|
3244
|
-
width: number;
|
|
3245
|
-
dash?: readonly number[];
|
|
3246
|
-
}
|
|
3247
|
-
/** The stroked half of the debug overlay's appearance, split from
|
|
3248
|
-
* {@link DebugTheme} because only some features draw a line at all — text
|
|
3249
|
-
* panels and filled origin dots take color and nothing else. */
|
|
3250
|
-
interface DebugStrokes {
|
|
3251
|
-
hitbox: DebugStroke;
|
|
3252
|
-
bounds: DebugStroke;
|
|
3253
|
-
handle: DebugStroke;
|
|
3254
|
-
/** Rejected snap candidates only; accepted ones paint as a filled dot. */
|
|
3255
|
-
snap: DebugStroke;
|
|
3256
|
-
}
|
|
3257
|
-
/** A hit region tested during the current frame. */
|
|
3258
|
-
interface RecordedHitbox {
|
|
3259
|
-
id: string;
|
|
3260
|
-
kind: 'body' | 'handle' | 'rotation' | 'anchor';
|
|
3261
|
-
shape: HitShape;
|
|
3262
|
-
}
|
|
3263
|
-
/** A handle drawn during the current frame, and where. */
|
|
3264
|
-
interface RecordedHandle {
|
|
3265
|
-
id: string;
|
|
3266
|
-
position: {
|
|
3267
|
-
x: number;
|
|
3268
|
-
y: number;
|
|
3269
|
-
};
|
|
3270
|
-
kind: HandleKind;
|
|
3271
|
-
}
|
|
3272
|
-
/** A node's bounds as computed during the current frame. */
|
|
3273
|
-
interface RecordedBounds {
|
|
3274
|
-
id: string;
|
|
3275
|
-
bounds: {
|
|
3276
|
-
x: number;
|
|
3277
|
-
y: number;
|
|
3278
|
-
width: number;
|
|
3279
|
-
height: number;
|
|
3280
|
-
};
|
|
3281
|
-
}
|
|
3282
|
-
/** A node's transform origin as used during the current frame. */
|
|
3283
|
-
interface RecordedOrigin {
|
|
3284
|
-
id: string;
|
|
3285
|
-
point: {
|
|
3286
|
-
x: number;
|
|
3287
|
-
y: number;
|
|
3288
|
-
};
|
|
3289
|
-
}
|
|
3290
|
-
/** A snap candidate considered during the current gesture, and whether it
|
|
3291
|
-
* won. Unlike the other records these survive across frames, until the
|
|
3292
|
-
* gesture ends. */
|
|
3293
|
-
interface RecordedSnap {
|
|
3294
|
-
point: {
|
|
3295
|
-
x: number;
|
|
3296
|
-
y: number;
|
|
3297
|
-
};
|
|
3298
|
-
accepted: boolean;
|
|
3299
|
-
}
|
|
3300
|
-
/** A render layer that drew during the current frame. */
|
|
3301
|
-
interface RecordedLayer {
|
|
3302
|
-
id: string;
|
|
3303
|
-
label: string;
|
|
3304
|
-
space: 'world' | 'screen';
|
|
3305
|
-
index: number;
|
|
3306
|
-
}
|
|
3307
|
-
/** Everything the sink collected, ready for the overlay to draw. */
|
|
3308
|
-
interface DebugSnapshot {
|
|
3309
|
-
hitboxes: RecordedHitbox[];
|
|
3310
|
-
handles: RecordedHandle[];
|
|
3311
|
-
bounds: RecordedBounds[];
|
|
3312
|
-
origins: RecordedOrigin[];
|
|
3313
|
-
snap: RecordedSnap[];
|
|
3314
|
-
layers: RecordedLayer[];
|
|
3315
|
-
}
|
|
3316
|
-
|
|
3317
3341
|
/** Options for `useSelectTool`: how a point resolves to nodes, how a click
|
|
3318
3342
|
* chooses among them, and the appearance of the marquee. */
|
|
3319
3343
|
interface UseSelectToolOptions<TPose> {
|
|
@@ -3565,6 +3589,18 @@ declare namespace useTextTool {
|
|
|
3565
3589
|
description: string;
|
|
3566
3590
|
default: undefined;
|
|
3567
3591
|
};
|
|
3592
|
+
textTransform: {
|
|
3593
|
+
kind: "enum";
|
|
3594
|
+
name: string;
|
|
3595
|
+
description: string;
|
|
3596
|
+
control: "toggle";
|
|
3597
|
+
default: string;
|
|
3598
|
+
options: {
|
|
3599
|
+
value: string;
|
|
3600
|
+
label: string;
|
|
3601
|
+
short: string;
|
|
3602
|
+
}[];
|
|
3603
|
+
};
|
|
3568
3604
|
fontFamily: {
|
|
3569
3605
|
kind: string;
|
|
3570
3606
|
name: string;
|
|
@@ -3625,10 +3661,9 @@ declare namespace useTextTool {
|
|
|
3625
3661
|
}
|
|
3626
3662
|
|
|
3627
3663
|
/**
|
|
3628
|
-
* In-progress pen anchor.
|
|
3629
|
-
*
|
|
3630
|
-
*
|
|
3631
|
-
* emission unless `altBroken` is set on that previous anchor.
|
|
3664
|
+
* In-progress pen anchor. A click places a corner, with no handles. A drag
|
|
3665
|
+
* sets `outHandle` to the drag point and `inHandle` to its mirror through
|
|
3666
|
+
* the anchor, which shapes the segment coming into it.
|
|
3632
3667
|
*/
|
|
3633
3668
|
interface PenAnchor$1 {
|
|
3634
3669
|
x: number;
|
|
@@ -3641,8 +3676,9 @@ interface PenAnchor$1 {
|
|
|
3641
3676
|
x: number;
|
|
3642
3677
|
y: number;
|
|
3643
3678
|
};
|
|
3644
|
-
/** True
|
|
3645
|
-
*
|
|
3679
|
+
/** True once Alt is held during the placement drag: from then on the
|
|
3680
|
+
* in-handle stays where it is, and an anchor dragged with Alt down from
|
|
3681
|
+
* the start gets none. */
|
|
3646
3682
|
altBroken?: boolean;
|
|
3647
3683
|
}
|
|
3648
3684
|
/** One in-progress subpath of the pen tool: its anchors so far, and whether
|
|
@@ -3712,6 +3748,13 @@ interface UsePenToolOptions<TPose> {
|
|
|
3712
3748
|
adapter: {
|
|
3713
3749
|
addNode: (pose: TPose) => string;
|
|
3714
3750
|
setSelection: (ids: string[]) => void;
|
|
3751
|
+
/** Build, without inserting, the node `addNode` would insert for `pose`,
|
|
3752
|
+
* so the pen can put it in a larger op batch — a new path finished on
|
|
3753
|
+
* another open path's endpoint is inserted and the other path deleted
|
|
3754
|
+
* in one undo step. Without it, that click only places an anchor. */
|
|
3755
|
+
makeNode?: (pose: TPose) => {
|
|
3756
|
+
id: string;
|
|
3757
|
+
};
|
|
3715
3758
|
};
|
|
3716
3759
|
/** Auto-select the new object after commit. Default `true`. */
|
|
3717
3760
|
autoSelect?: boolean;
|
|
@@ -4754,6 +4797,13 @@ interface CanvasSurfaceHelpers {
|
|
|
4754
4797
|
* are split so a per-view set can be built independently of the surface's,
|
|
4755
4798
|
* not to make layers ask for one. */
|
|
4756
4799
|
interface CanvasHelpers<TPose> extends CanvasViewHelpers<TPose>, CanvasSurfaceHelpers {
|
|
4800
|
+
/**
|
|
4801
|
+
* The view this draw is for: a `<CanvasView>` id, or `null` for the
|
|
4802
|
+
* surface's own camera. One layer array paints every view, so a layer that
|
|
4803
|
+
* belongs in some views and not others — a minimap's indicator — declines
|
|
4804
|
+
* the rest by this id.
|
|
4805
|
+
*/
|
|
4806
|
+
readonly viewId: string | null;
|
|
4757
4807
|
}
|
|
4758
4808
|
|
|
4759
4809
|
/**
|
|
@@ -4803,6 +4853,11 @@ interface NodePaintCtx {
|
|
|
4803
4853
|
* paints the deterministic grey placeholder outline (never the ambient
|
|
4804
4854
|
* load-status error variant). */
|
|
4805
4855
|
resolveImage?: (node: Node$1<unknown, string, unknown>) => ImageBitmap | undefined;
|
|
4856
|
+
/** Device pixels per world unit where this paint will land — the view's
|
|
4857
|
+
* scale times the device-pixel ratio. `defaultDrawOne` fills it from its
|
|
4858
|
+
* view when absent. Lets a painter size resolution-dependent work, such as
|
|
4859
|
+
* re-rasterizing an SVG image; one that has no such work ignores it. */
|
|
4860
|
+
pixelScale?: number;
|
|
4806
4861
|
/** The node's derived path, resolved by the scene-aware `drawOne` wrapper
|
|
4807
4862
|
* before painting: `paint` has no scene handle, and deriving needs the
|
|
4808
4863
|
* dependencies' poses. **Absent** for a node that derives from nothing —
|
|
@@ -5256,13 +5311,21 @@ type LayersMap<TNode extends {
|
|
|
5256
5311
|
[customKey: string]: LayerSlotValue<TNode, TPose> | undefined;
|
|
5257
5312
|
};
|
|
5258
5313
|
/**
|
|
5259
|
-
*
|
|
5260
|
-
*
|
|
5314
|
+
* What `<SceneCanvas selectionMode>` lets the canvas do to the selection.
|
|
5315
|
+
*
|
|
5316
|
+
* - `'single'` (default) — a click replaces the selection with the clicked
|
|
5317
|
+
* node, modifiers or not. It sets click policy, not a limit: a marquee,
|
|
5318
|
+
* lasso, select-all or paste can still select several nodes.
|
|
5319
|
+
* - `'multi'` — a click with the extend key (shift by default) toggles the
|
|
5320
|
+
* node in or out of the selection.
|
|
5321
|
+
* - `'none'` — nothing the canvas does writes the selection: no click,
|
|
5322
|
+
* marquee, lasso, action or tool, and no op committed through the adapter
|
|
5323
|
+
* it hands its tools. The consumer's own `SelectionApi` — the `selection`
|
|
5324
|
+
* prop, or `useSelection({ scene })` — still writes, and the canvas draws
|
|
5325
|
+
* what it holds. Undo and redo still restore the selection each history
|
|
5326
|
+
* entry recorded.
|
|
5261
5327
|
*
|
|
5262
|
-
*
|
|
5263
|
-
* - `'multi'` — shift-click extends/toggles. Multi-selected objects draw a
|
|
5264
|
-
* union AABB with corner handles.
|
|
5265
|
-
* - `'none'` — canvas interactions never update selection state.
|
|
5328
|
+
* Several selected nodes draw one union box with corner handles in every mode.
|
|
5266
5329
|
*/
|
|
5267
5330
|
type CanvasSelectionMode = 'single' | 'multi' | 'none';
|
|
5268
5331
|
/**
|
|
@@ -5392,14 +5455,14 @@ interface CanvasProps<TNode extends {
|
|
|
5392
5455
|
*/
|
|
5393
5456
|
inputElement?: HTMLElement | null;
|
|
5394
5457
|
className?: string;
|
|
5395
|
-
style?:
|
|
5458
|
+
style?: react__default.CSSProperties;
|
|
5396
5459
|
tabIndex?: number;
|
|
5397
5460
|
/** Fired when the canvas element gains focus. The canvas is focusable by
|
|
5398
5461
|
* default (`tabIndex` 0), so consumers driving focus-dependent chrome —
|
|
5399
5462
|
* a focus ring, a "keyboard shortcuts active" hint — need to observe it. */
|
|
5400
|
-
onFocus?:
|
|
5463
|
+
onFocus?: react__default.FocusEventHandler<HTMLCanvasElement>;
|
|
5401
5464
|
/** Fired when the canvas element loses focus. */
|
|
5402
|
-
onBlur?:
|
|
5465
|
+
onBlur?: react__default.FocusEventHandler<HTMLCanvasElement>;
|
|
5403
5466
|
/**
|
|
5404
5467
|
* When `true` (default), the canvas element receives focus on `pointerdown`
|
|
5405
5468
|
* so keyboard events (tool hotkeys, undo/redo) are captured without a
|
|
@@ -5449,7 +5512,7 @@ interface CanvasProps<TNode extends {
|
|
|
5449
5512
|
* Useful for custom layers that render scene content outside of the standard
|
|
5450
5513
|
* slot system and need to stay in sync with gesture previews.
|
|
5451
5514
|
*/
|
|
5452
|
-
helpersRef?:
|
|
5515
|
+
helpersRef?: react__default.MutableRefObject<CanvasHelpers<TPose> | null>;
|
|
5453
5516
|
/**
|
|
5454
5517
|
* Debug overlay configuration.
|
|
5455
5518
|
* - `undefined` (default): read `?debug=…` from the URL.
|
|
@@ -5463,7 +5526,7 @@ interface CanvasProps<TNode extends {
|
|
|
5463
5526
|
debug?: DebugConfig | false;
|
|
5464
5527
|
/** Test-only escape hatch: writes the live debug sink to this ref so tests
|
|
5465
5528
|
* can call `snapshot()` after a render. No effect when debug is off. */
|
|
5466
|
-
debugSinkRef?:
|
|
5529
|
+
debugSinkRef?: react__default.MutableRefObject<(DebugSink & {
|
|
5467
5530
|
snapshot(): DebugSnapshot;
|
|
5468
5531
|
}) | null>;
|
|
5469
5532
|
/**
|
|
@@ -5623,6 +5686,9 @@ type SceneCanvasAdapter<TData, TLayer extends string, TPose> = MoveAdapter<Node$
|
|
|
5623
5686
|
/** The node's pose with every ancestor's frame folded in. Equal to
|
|
5624
5687
|
* `getPose` unless a `poseComposition` is configured. */
|
|
5625
5688
|
getWorldPose(id: string): TPose;
|
|
5689
|
+
/** Whether `id`'s pose is a frame its children are expressed in — see
|
|
5690
|
+
* `definesFrame`. */
|
|
5691
|
+
definesFrame(id: string): boolean;
|
|
5626
5692
|
/** Present only when a composing strategy is configured; the render
|
|
5627
5693
|
* walk feature-detects it. */
|
|
5628
5694
|
composePose?(parent: TPose, child: TPose): TPose;
|
|
@@ -5692,14 +5758,8 @@ interface SceneToAdapterOptions<TData, TLayer extends string, TPose> {
|
|
|
5692
5758
|
* undoable. */
|
|
5693
5759
|
declare function sceneToAdapter<TData, TLayer extends string, TPose>(scene: Scene<TData, TLayer, TPose>, options?: SceneToAdapterOptions<TData, TLayer, TPose>): SceneCanvasAdapter<TData, TLayer, TPose>;
|
|
5694
5760
|
/**
|
|
5695
|
-
* React-hook wrapper around `sceneToAdapter`. Memoizes on
|
|
5696
|
-
*
|
|
5697
|
-
* `options.layouts` so the adapter identity is stable across renders unless
|
|
5698
|
-
* one of those changes.
|
|
5699
|
-
*
|
|
5700
|
-
* Saves the per-demo `useMemo(() => sceneToAdapter(scene, { selection }),
|
|
5701
|
-
* [scene, selection])` boilerplate every consumer that wires custom tools
|
|
5702
|
-
* would otherwise repeat.
|
|
5761
|
+
* React-hook wrapper around `sceneToAdapter`. Memoizes on every option, so
|
|
5762
|
+
* the adapter keeps its identity across renders unless one of them changes.
|
|
5703
5763
|
*/
|
|
5704
5764
|
declare function useSceneAdapter<TData, TLayer extends string, TPose>(scene: Scene<TData, TLayer, TPose>, options?: SceneToAdapterOptions<TData, TLayer, TPose>): SceneCanvasAdapter<TData, TLayer, TPose>;
|
|
5705
5765
|
|
|
@@ -5741,6 +5801,36 @@ interface UseRotateOptions<TPose> {
|
|
|
5741
5801
|
pivot?: 'each' | 'union';
|
|
5742
5802
|
}
|
|
5743
5803
|
|
|
5804
|
+
/** Reads the surface's deps from inside `SurfaceContribution.attach`. */
|
|
5805
|
+
interface ContributionDepReader {
|
|
5806
|
+
get<K extends DepName>(name: K): DepSchema[K] | undefined;
|
|
5807
|
+
}
|
|
5808
|
+
/**
|
|
5809
|
+
* A feature a surface installs in one step. Every role is optional: `bindings`,
|
|
5810
|
+
* `actions`, `deps`, `overlay` and `presentation` from `Contribution`, plus
|
|
5811
|
+
* the two below. Installing it installs every role it declares, and removing
|
|
5812
|
+
* it removes them.
|
|
5813
|
+
*/
|
|
5814
|
+
interface SurfaceContribution extends Contribution {
|
|
5815
|
+
/** Views this entry adds to the surface, as `<SceneCanvas views>` takes. */
|
|
5816
|
+
views?: readonly CanvasViewProps[];
|
|
5817
|
+
/**
|
|
5818
|
+
* Runs once the surface mounts; returns its teardown. For what the roles
|
|
5819
|
+
* above cannot say — a registered (hit-testable) layer, a subscription.
|
|
5820
|
+
*
|
|
5821
|
+
* Keyed by the function's identity, so a contribution built once (in a
|
|
5822
|
+
* `useMemo`, or at module scope) attaches once however often the host
|
|
5823
|
+
* re-renders.
|
|
5824
|
+
*/
|
|
5825
|
+
attach?: (api: CanvasExtensionApi, deps: ContributionDepReader) => () => void;
|
|
5826
|
+
}
|
|
5827
|
+
/**
|
|
5828
|
+
* Concatenate contribution bundles into one registry, preserving order. Throws
|
|
5829
|
+
* on a duplicate entry id, dep name or view id — two features answering for
|
|
5830
|
+
* the same name is a bug in whichever was added second.
|
|
5831
|
+
*/
|
|
5832
|
+
declare function mergeContributions<T extends SurfaceContribution>(...bundles: readonly (readonly T[])[]): T[];
|
|
5833
|
+
|
|
5744
5834
|
/**
|
|
5745
5835
|
* The kit's built-in shape kinds — one table, every other spelling derived.
|
|
5746
5836
|
*
|
|
@@ -5813,6 +5903,8 @@ declare const SHAPE_KINDS: {
|
|
|
5813
5903
|
readonly insertPreview: true;
|
|
5814
5904
|
};
|
|
5815
5905
|
};
|
|
5906
|
+
/** Every kind in the table, tool or not. */
|
|
5907
|
+
type ShapeKind = keyof typeof SHAPE_KINDS;
|
|
5816
5908
|
/** The keys of a shape-kind table whose descriptor sets `F` to `true`. */
|
|
5817
5909
|
type ShapeKindsWhere<T, F extends keyof ShapeKindDescriptor> = {
|
|
5818
5910
|
[K in keyof T]: T[K] extends Record<F, true> ? K : never;
|
|
@@ -5997,7 +6089,7 @@ declare function rotateAroundAABBCenter(x: number, y: number, width: number, hei
|
|
|
5997
6089
|
/** Paint one node the way the kit does by default: dispatch to the first
|
|
5998
6090
|
* registered node-shape painter that matches, then draw its `data.label` on
|
|
5999
6091
|
* top when it has one. Consumers replace or wrap this via `drawOne`. */
|
|
6000
|
-
declare function defaultDrawOne<TData, TLayer extends string, TPose>(node: Node$1<TData, TLayer, TPose>, pose: TPose,
|
|
6092
|
+
declare function defaultDrawOne<TData, TLayer extends string, TPose>(node: Node$1<TData, TLayer, TPose>, pose: TPose, view?: View, ctx?: NodePaintCtx): DrawCommand[];
|
|
6001
6093
|
|
|
6002
6094
|
/** Default size in CSS pixels for selection corner-handles AND their
|
|
6003
6095
|
* hit-test radius, at `targetScale = 1`. Used by the SceneCanvas defaults;
|
|
@@ -6060,6 +6152,11 @@ type SceneCanvasProps<TData, TLayer extends string, TPose> = Omit<CanvasProps<No
|
|
|
6060
6152
|
* to `sceneToAdapter` so `useMove`'s layout pass runs on configured
|
|
6061
6153
|
* containers (reflow on enter, reparent + reflow on commit). */
|
|
6062
6154
|
layouts?: SceneToAdapterOptions<TData, TLayer, TPose>['layouts'];
|
|
6155
|
+
/** Which layout container a drag lands in when several contain the drop
|
|
6156
|
+
* point — the innermost (default), the topmost in paint order, or only
|
|
6157
|
+
* containers whose strategy declares a `dropRegion`. Decides both the
|
|
6158
|
+
* drag-time reflow preview and the commit. */
|
|
6159
|
+
layoutDropTarget?: LayoutDropTargetMode;
|
|
6063
6160
|
/** How a child's stored pose folds into its parent's frame. Omit for the
|
|
6064
6161
|
* absolute-pose model, where a container groups its children but imposes
|
|
6065
6162
|
* no transform. Pass `RIGID_POSE_COMPOSITION` to make a container's pose
|
|
@@ -6206,12 +6303,8 @@ type SceneCanvasProps<TData, TLayer extends string, TPose> = Omit<CanvasProps<No
|
|
|
6206
6303
|
selection?: SelectionApi;
|
|
6207
6304
|
selectionOptions?: UseSelectionOptions;
|
|
6208
6305
|
/**
|
|
6209
|
-
*
|
|
6210
|
-
*
|
|
6211
|
-
* - `'single'` (default) — click selects one id.
|
|
6212
|
-
* - `'multi'` — shift-click extends/toggles.
|
|
6213
|
-
* - `'none'` — canvas interactions never update selection.
|
|
6214
|
-
* See {@link CanvasSelectionMode}.
|
|
6306
|
+
* What the canvas may do to the selection. See {@link CanvasSelectionMode}.
|
|
6307
|
+
* Default `'single'`.
|
|
6215
6308
|
*/
|
|
6216
6309
|
selectionMode?: CanvasSelectionMode;
|
|
6217
6310
|
/** Extra tools or overrides keyed by id, or a full `ToolsApi` takeover.
|
|
@@ -6290,11 +6383,13 @@ type SceneCanvasProps<TData, TLayer extends string, TPose> = Omit<CanvasProps<No
|
|
|
6290
6383
|
* lasso demo starts with `initialActiveTool="lasso"`. Ignored when the
|
|
6291
6384
|
* consumer supplies their own `tools` prop. */
|
|
6292
6385
|
initialActiveTool?: string;
|
|
6293
|
-
/** Always-on
|
|
6294
|
-
*
|
|
6295
|
-
*
|
|
6296
|
-
*
|
|
6297
|
-
|
|
6386
|
+
/** Always-on entries to register alongside the internal default select:
|
|
6387
|
+
* tools, and features written as a `SurfaceContribution` — whose views,
|
|
6388
|
+
* deps, overlay, bindings, actions and `attach` all install from this one
|
|
6389
|
+
* list, and uninstall when the entry leaves it. If you supply your own
|
|
6390
|
+
* `tools` prop, this is ignored — wire `ambient` through your own
|
|
6391
|
+
* `useTools` call instead. */
|
|
6392
|
+
ambient?: readonly (AnyTool | SurfaceContribution)[];
|
|
6298
6393
|
/** Viewport feature wiring.
|
|
6299
6394
|
*
|
|
6300
6395
|
* - `inertia` and `animatedZoom` are opt-in: pass `true` for defaults or
|
|
@@ -6560,7 +6655,7 @@ type SceneCanvasProps<TData, TLayer extends string, TPose> = Omit<CanvasProps<No
|
|
|
6560
6655
|
*/
|
|
6561
6656
|
onDoubleClick?: (hit: SceneCanvasHit | null) => void;
|
|
6562
6657
|
};
|
|
6563
|
-
declare function SceneCanvasInner<TData, TLayer extends string, TPose>(props: SceneCanvasProps<TData, TLayer, TPose>, ref:
|
|
6658
|
+
declare function SceneCanvasInner<TData, TLayer extends string, TPose>(props: SceneCanvasProps<TData, TLayer, TPose>, ref: react__default.ForwardedRef<SceneCanvasApi>): react__default.JSX.Element;
|
|
6564
6659
|
/**
|
|
6565
6660
|
* The canvas component: renders a `Scene` and wires the interaction stack
|
|
6566
6661
|
* around it.
|
|
@@ -6575,7 +6670,7 @@ declare function SceneCanvasInner<TData, TLayer extends string, TPose>(props: Sc
|
|
|
6575
6670
|
* fit a prop (view control, hit queries, redraw requests).
|
|
6576
6671
|
*/
|
|
6577
6672
|
declare const SceneCanvas: <TData, TLayer extends string, TPose>(props: SceneCanvasProps<TData, TLayer, TPose> & {
|
|
6578
|
-
ref?:
|
|
6673
|
+
ref?: react__default.Ref<SceneCanvasApi>;
|
|
6579
6674
|
}) => ReturnType<typeof SceneCanvasInner>;
|
|
6580
6675
|
|
|
6581
6676
|
/** Which of the host's edges the panel is held against, per axis. */
|
|
@@ -6673,7 +6768,7 @@ interface CursorCoordsHudProps {
|
|
|
6673
6768
|
}
|
|
6674
6769
|
/** Debug overlay showing the pointer's client and world coordinates and the
|
|
6675
6770
|
* current frame rate, pinned to the canvas's top-right corner. */
|
|
6676
|
-
declare function CursorCoordsHud({ canvasRef, anchorRef, viewRef, offset }: CursorCoordsHudProps):
|
|
6771
|
+
declare function CursorCoordsHud({ canvasRef, anchorRef, viewRef, offset }: CursorCoordsHudProps): react.JSX.Element | null;
|
|
6677
6772
|
|
|
6678
6773
|
/** Props for `<PickHud>`. */
|
|
6679
6774
|
interface PickHudProps {
|
|
@@ -6697,7 +6792,7 @@ interface PickHudProps {
|
|
|
6697
6792
|
}
|
|
6698
6793
|
/** Debug overlay listing every node under the pointer, with the one a click
|
|
6699
6794
|
* would actually select shown in bold. */
|
|
6700
|
-
declare function PickHud({ canvasRef, anchorRef, viewRef, pickEvery, pickBest, offset }: PickHudProps):
|
|
6795
|
+
declare function PickHud({ canvasRef, anchorRef, viewRef, pickEvery, pickBest, offset }: PickHudProps): react.JSX.Element | null;
|
|
6701
6796
|
|
|
6702
6797
|
/**
|
|
6703
6798
|
* imageCache — the kit's per-`src` image loader + cache.
|
|
@@ -6721,14 +6816,42 @@ interface ImageNodeData {
|
|
|
6721
6816
|
image: {
|
|
6722
6817
|
src: string;
|
|
6723
6818
|
opacity?: number;
|
|
6819
|
+
/** The part of the bitmap drawn into the pose rect, as fractions of the
|
|
6820
|
+
* bitmap's width and height from its top-left. Omitted draws the whole
|
|
6821
|
+
* bitmap. Fractions, so the data means the same thing before the bitmap
|
|
6822
|
+
* has decoded and after `src` is swapped for another resolution. */
|
|
6823
|
+
source?: {
|
|
6824
|
+
x: number;
|
|
6825
|
+
y: number;
|
|
6826
|
+
width: number;
|
|
6827
|
+
height: number;
|
|
6828
|
+
};
|
|
6829
|
+
/** Mirror the drawn region within the pose rect. The rect does not move. */
|
|
6830
|
+
flipX?: boolean;
|
|
6831
|
+
flipY?: boolean;
|
|
6724
6832
|
};
|
|
6725
6833
|
}
|
|
6726
6834
|
/** Where an image is in its load: never requested, in flight, decoded, or
|
|
6727
6835
|
* failed. Renderers paint a placeholder for anything but `'ready'`. */
|
|
6728
6836
|
type ImageStatus = 'idle' | 'loading' | 'ready' | 'error';
|
|
6837
|
+
/** A size in device pixels. */
|
|
6838
|
+
interface ImageRasterSize {
|
|
6839
|
+
width: number;
|
|
6840
|
+
height: number;
|
|
6841
|
+
}
|
|
6842
|
+
/** True when `src` names SVG — a `data:image/svg+xml` URI, or a URL whose path
|
|
6843
|
+
* ends in `.svg`/`.svgz`. Such sources re-rasterize at the size they are drawn
|
|
6844
|
+
* at; everything else decodes once. A `blob:` URL carries no type and counts
|
|
6845
|
+
* as raster. */
|
|
6846
|
+
declare function isVectorImageSrc(src: string): boolean;
|
|
6729
6847
|
/** Synchronous read. Returns the decoded bitmap when ready; otherwise returns
|
|
6730
|
-
* `undefined` and lazily starts a de-duped async load for `src`.
|
|
6731
|
-
|
|
6848
|
+
* `undefined` and lazily starts a de-duped async load for `src`.
|
|
6849
|
+
*
|
|
6850
|
+
* `drawnAt` is the size in device pixels the image is about to cover. A
|
|
6851
|
+
* vector source ({@link isVectorImageSrc}) uses it to re-rasterize in
|
|
6852
|
+
* power-of-two steps — the current raster is returned until the sharper one
|
|
6853
|
+
* is ready. Raster sources ignore it. */
|
|
6854
|
+
declare function getImageBitmap(src: string, drawnAt?: ImageRasterSize): ImageBitmap | undefined;
|
|
6732
6855
|
/** Current load status for `src` (`'idle'` if never requested). */
|
|
6733
6856
|
declare function imageStatus(src: string): ImageStatus;
|
|
6734
6857
|
/** Subscribe to load-resolution events (fires after any `src` resolves or
|
|
@@ -7037,9 +7160,7 @@ declare function resolveOverlays(overlays: Iterable<OngoingOverlay>): ResolvedOv
|
|
|
7037
7160
|
* (`<SceneViewCanvas>` / `<MinimapCanvas>`). Given a `<canvas>`, a `Scene`,
|
|
7038
7161
|
* a `View`, and a per-node `drawOne`, render one frame.
|
|
7039
7162
|
*
|
|
7040
|
-
*
|
|
7041
|
-
* (`docs/superpowers/specs/2026-05-31-detached-minimap-design.md`). The full
|
|
7042
|
-
* `<SceneCanvas>` render pipeline does much more than this (slots, layer
|
|
7163
|
+
* The full `<SceneCanvas>` render pipeline does much more than this (slots, layer
|
|
7043
7164
|
* ordering, debug sinks, tool overlays). The helper deliberately re-implements
|
|
7044
7165
|
* the small subset needed for a non-interactive scene view rather than
|
|
7045
7166
|
* refactoring `<SceneCanvas>` to share code — the spec calls for that
|
|
@@ -7194,7 +7315,7 @@ interface SceneViewCanvasProps<TData, TLayer extends string, TPose> {
|
|
|
7194
7315
|
* pointer listeners or call `toBlob` for snapshots through this. */
|
|
7195
7316
|
canvasRef?: Ref<HTMLCanvasElement>;
|
|
7196
7317
|
}
|
|
7197
|
-
declare function SceneViewCanvasInner<TData, TLayer extends string, TPose>(props: SceneViewCanvasProps<TData, TLayer, TPose>):
|
|
7318
|
+
declare function SceneViewCanvasInner<TData, TLayer extends string, TPose>(props: SceneViewCanvasProps<TData, TLayer, TPose>): react.JSX.Element;
|
|
7198
7319
|
/**
|
|
7199
7320
|
* Pointer-inert read-only scene view. See `SceneViewCanvasProps` for the
|
|
7200
7321
|
* full surface and the module docstring for the rendering model.
|
|
@@ -7337,6 +7458,20 @@ declare function documentPose<TPose>(source: PoseSource<TPose>, node: PosedNode<
|
|
|
7337
7458
|
* walks, the pick walk, the adapters tools and actions commit through.
|
|
7338
7459
|
*/
|
|
7339
7460
|
declare function effectivePose<TPose>(source: PoseSource<TPose>, node: PosedNode<TPose>): TPose;
|
|
7461
|
+
/**
|
|
7462
|
+
* Whether `node`'s pose is a frame its children are expressed in, under a
|
|
7463
|
+
* composing strategy.
|
|
7464
|
+
*
|
|
7465
|
+
* A container that derives its pose from its children cannot be one: moving
|
|
7466
|
+
* the frame to cover the children would move the children, and a `RectPose`
|
|
7467
|
+
* frame's origin is its corner, so no envelope leaves them in place. Such a
|
|
7468
|
+
* container is an envelope instead — its children are stored in its own
|
|
7469
|
+
* frame — and the composition fold passes over it.
|
|
7470
|
+
*/
|
|
7471
|
+
declare function definesFrame(node: {
|
|
7472
|
+
dependsOn?: unknown;
|
|
7473
|
+
derivePose?: unknown;
|
|
7474
|
+
}): boolean;
|
|
7340
7475
|
|
|
7341
7476
|
/** A node and the pose a renderer should draw it at. `node.pose` beside it is
|
|
7342
7477
|
* still the committed pose, so a host has both without a second channel. */
|
|
@@ -7365,6 +7500,10 @@ declare const UNION_OF_CHILDREN = "kit:unionOfChildren";
|
|
|
7365
7500
|
* box. Paired with `dependsOn: 'children'`, this is what makes a group's
|
|
7366
7501
|
* bounds track its members instead of freezing at the moment it was made.
|
|
7367
7502
|
*
|
|
7503
|
+
* Its members and its result share one frame: a container deriving its pose
|
|
7504
|
+
* from its children defines none of its own (see `definesFrame`), so the same
|
|
7505
|
+
* union is right under any composition strategy.
|
|
7506
|
+
*
|
|
7368
7507
|
* Returns `null` for an emptied container, which falls back to its authored
|
|
7369
7508
|
* pose — the group stays where the last member left it rather than collapsing
|
|
7370
7509
|
* to a zero box at the origin.
|
|
@@ -7497,17 +7636,121 @@ interface MinimapCanvasProps<TData, TLayer extends string, TPose> {
|
|
|
7497
7636
|
className?: string;
|
|
7498
7637
|
/** Forwarded ref to the underlying `<canvas>`. */
|
|
7499
7638
|
canvasRef?: Ref<HTMLCanvasElement>;
|
|
7639
|
+
/** The view id this minimap publishes its pointer under. Default
|
|
7640
|
+
* `'minimap'`. */
|
|
7641
|
+
id?: string;
|
|
7500
7642
|
}
|
|
7501
|
-
declare function MinimapCanvasInner<TData, TLayer extends string, TPose>(props: MinimapCanvasProps<TData, TLayer, TPose>): react_jsx_runtime.JSX.Element;
|
|
7502
7643
|
/**
|
|
7503
7644
|
* Opinionated minimap. See `MinimapCanvasProps` for the full surface and
|
|
7504
|
-
* the module docstring for the rendering /
|
|
7645
|
+
* the module docstring for the rendering / input model.
|
|
7646
|
+
*
|
|
7647
|
+
* Its dispatcher, actions and deps are its own, so it never competes with
|
|
7648
|
+
* the main canvas for input. The pointer store is shared when one is in scope.
|
|
7505
7649
|
*
|
|
7506
7650
|
* `forwardRef` is not used because the component is generic over
|
|
7507
7651
|
* `<TData, TLayer, TPose>` and React's `forwardRef` erases generics. The
|
|
7508
7652
|
* `canvasRef` prop is the plain-prop equivalent.
|
|
7509
7653
|
*/
|
|
7510
|
-
declare
|
|
7654
|
+
declare function MinimapCanvas<TData, TLayer extends string, TPose>(props: MinimapCanvasProps<TData, TLayer, TPose>): react.JSX.Element;
|
|
7655
|
+
|
|
7656
|
+
/**
|
|
7657
|
+
* A minimap over a `<SceneCanvas>`, written as one `SurfaceContribution`: a
|
|
7658
|
+
* view through a fit camera, the pan that moves the main camera from inside
|
|
7659
|
+
* it, the visible-rect indicator, and a linked crosshair.
|
|
7660
|
+
*/
|
|
7661
|
+
|
|
7662
|
+
/** Options for {@link createLinkedCursorContribution}. */
|
|
7663
|
+
interface LinkedCursorOptions {
|
|
7664
|
+
/** Entry id. Default `'linked-cursor'`. */
|
|
7665
|
+
id?: string;
|
|
7666
|
+
/** Views on this surface the crosshair may paint in. Default `[null]`, the
|
|
7667
|
+
* surface's own camera — the main canvas beside a detached minimap. */
|
|
7668
|
+
views?: readonly (string | null)[];
|
|
7669
|
+
}
|
|
7670
|
+
/**
|
|
7671
|
+
* The linked crosshair alone: this surface paints the pointer's position
|
|
7672
|
+
* whenever the pointer is over some other view — another surface under the
|
|
7673
|
+
* same `<PointerContextProvider>`, such as a detached `<MinimapCanvas>`.
|
|
7674
|
+
*
|
|
7675
|
+
* A surface carrying `createMinimapContribution` already has one, in both its
|
|
7676
|
+
* views; this is for a surface without.
|
|
7677
|
+
*/
|
|
7678
|
+
declare function createLinkedCursorContribution(opts?: LinkedCursorOptions): SurfaceContribution;
|
|
7679
|
+
/** Options for {@link createMinimapContribution}. */
|
|
7680
|
+
interface MinimapContributionOptions<TData = unknown, TLayer extends string = string, TPose = unknown> {
|
|
7681
|
+
/** View and entry id. Default `'minimap'`. */
|
|
7682
|
+
id?: string;
|
|
7683
|
+
/** Where the minimap paints, in CSS pixels from the canvas top-left. A
|
|
7684
|
+
* function is re-read every frame, so it can follow the canvas's size. */
|
|
7685
|
+
rect: ViewRect | ((outer: View, dims: Dims) => ViewRect);
|
|
7686
|
+
/** What the minimap frames. Default `'scene'`, the union of leaf poses. */
|
|
7687
|
+
fit?: MinimapFit<TData, TLayer, TPose>;
|
|
7688
|
+
/** The surface layers the minimap paints. Default: all of them. */
|
|
7689
|
+
layers?: (surface: readonly RenderLayer<unknown>[]) => readonly RenderLayer<unknown>[];
|
|
7690
|
+
/** Ground painted before the minimap's layers, so the main canvas does not
|
|
7691
|
+
* show through. */
|
|
7692
|
+
background?: string;
|
|
7693
|
+
/** The visible-rect indicator's stroke. */
|
|
7694
|
+
indicatorStyle?: IndicatorStyle;
|
|
7695
|
+
}
|
|
7696
|
+
/**
|
|
7697
|
+
* A minimap inside a `<SceneCanvas>`, installed with one entry:
|
|
7698
|
+
*
|
|
7699
|
+
* ```tsx
|
|
7700
|
+
* const minimap = useMemo(() => createMinimapContribution({ rect: { x: 8, y: 8, w: 160, h: 110 } }), []);
|
|
7701
|
+
* <SceneCanvas ambient={[minimap]} … />
|
|
7702
|
+
* ```
|
|
7703
|
+
*
|
|
7704
|
+
* Press in it to center the main camera on that point, drag to keep it there.
|
|
7705
|
+
* It shows the main camera's visible rect, and a crosshair where the pointer is
|
|
7706
|
+
* over the other view. Build it once — each instance keeps the live state its
|
|
7707
|
+
* layers read.
|
|
7708
|
+
*/
|
|
7709
|
+
declare function createMinimapContribution<TData = unknown, TLayer extends string = string, TPose = unknown>(opts: MinimapContributionOptions<TData, TLayer, TPose>): SurfaceContribution;
|
|
7710
|
+
|
|
7711
|
+
/**
|
|
7712
|
+
* The minimap's input: press to recenter the main camera on a world point,
|
|
7713
|
+
* drag to keep it there. Both read `rootView` — never `view`, which inside the
|
|
7714
|
+
* minimap's own view answers the minimap's camera.
|
|
7715
|
+
*/
|
|
7716
|
+
|
|
7717
|
+
declare const MINIMAP_CENTER = "minimap.center";
|
|
7718
|
+
declare const MINIMAP_PAN = "minimap.pan";
|
|
7719
|
+
/** Move `root` so world point (`x`, `y`) sits at the center of its host,
|
|
7720
|
+
* keeping its scale. A no-op while the host is unmeasured. */
|
|
7721
|
+
declare function centerRootOn(root: ViewApi, x: number, y: number): void;
|
|
7722
|
+
/** Recenter the main camera on the pressed world point. */
|
|
7723
|
+
declare function minimapCenterAction(): Action;
|
|
7724
|
+
/** Keep the main camera centered on the pointer's world point while dragging.
|
|
7725
|
+
* Pair it with `minimap.center` on `pointerDown`, which handles the press.
|
|
7726
|
+
* A recenter lands the moment it is computed, so there is nothing to commit
|
|
7727
|
+
* and a cancel ends where a release does. */
|
|
7728
|
+
declare function minimapPanAction(): Action;
|
|
7729
|
+
|
|
7730
|
+
/**
|
|
7731
|
+
* The minimap's chrome: the main camera's visible rect, drawn in the minimap,
|
|
7732
|
+
* and the linked crosshair, drawn in every view the pointer is not over.
|
|
7733
|
+
*/
|
|
7734
|
+
|
|
7735
|
+
/** The halo's color: dark enough to separate the accent from any content. */
|
|
7736
|
+
declare const CROSSHAIR_HALO = "rgba(0, 0, 0, 0.6)";
|
|
7737
|
+
/** An axis-aligned rect, `{ x, y, w, h }`. */
|
|
7738
|
+
interface CrosshairRect {
|
|
7739
|
+
x: number;
|
|
7740
|
+
y: number;
|
|
7741
|
+
w: number;
|
|
7742
|
+
h: number;
|
|
7743
|
+
}
|
|
7744
|
+
/**
|
|
7745
|
+
* The linked crosshair at (`x`, `y`) as rects in the caller's units, where one
|
|
7746
|
+
* screen pixel is `unitsPerPx` of them: four halo rects to paint first, then
|
|
7747
|
+
* four bars. A painter with no weasel renderer — a 2D canvas — draws the same
|
|
7748
|
+
* crosshair from these.
|
|
7749
|
+
*/
|
|
7750
|
+
declare function crosshairRects(x: number, y: number, unitsPerPx: number): {
|
|
7751
|
+
halo: CrosshairRect[];
|
|
7752
|
+
bars: CrosshairRect[];
|
|
7753
|
+
};
|
|
7511
7754
|
|
|
7512
7755
|
/** Plain RGBA raster — structurally `ImageData`-compatible ({ width, height,
|
|
7513
7756
|
* data }), deliberately free of printer/dpi/physical-unit concepts. */
|
|
@@ -7669,74 +7912,22 @@ declare function SelectionContextProviderIfRoot({ children, }: {
|
|
|
7669
7912
|
*/
|
|
7670
7913
|
declare function usePublishSelection(ids: readonly NodeId[], kinds?: readonly (string | undefined)[]): void;
|
|
7671
7914
|
|
|
7672
|
-
/**
|
|
7673
|
-
* @experimental
|
|
7674
|
-
* PointerContext — a tiny ambient context that publishes the world-space
|
|
7675
|
-
* position of the canvas pointer, refreshed on every `pointermove` over
|
|
7676
|
-
* the canvas. Cleared (set to `null`) on `pointerleave`.
|
|
7677
|
-
*
|
|
7678
|
-
* Why ref-based and not state-based: cursor moves fire dozens of times per
|
|
7679
|
-
* second; routing those through React state would re-render every consumer
|
|
7680
|
-
* in the tree. The context exposes a stable `pointerRef` whose `.current`
|
|
7681
|
-
* is mutated directly by the publisher, plus a thunk `getDropPoint()` that
|
|
7682
|
-
* reads it on demand. Consumers (e.g. `useClipboard`) pull via the thunk
|
|
7683
|
-
* inside their callbacks — no subscription, no re-render.
|
|
7684
|
-
*
|
|
7685
|
-
* `<SceneCanvas>` publishes automatically. `useClipboardOps` consumes when
|
|
7686
|
-
* the caller didn't pass an explicit `getDropPoint` option. Other future
|
|
7687
|
-
* hit-on-cursor consumers (drop-zone hover, context-menu anchor) can reuse
|
|
7688
|
-
* the same context.
|
|
7689
|
-
*/
|
|
7690
|
-
|
|
7691
|
-
/** @experimental World-space pointer position, or `null` when the pointer
|
|
7692
|
-
* isn't over the publishing canvas. */
|
|
7693
|
-
type PointerWorldPos = {
|
|
7694
|
-
worldX: number;
|
|
7695
|
-
worldY: number;
|
|
7696
|
-
} | null;
|
|
7697
|
-
/** @experimental */
|
|
7698
|
-
interface PointerContextValue {
|
|
7699
|
-
/** Live ref — mutate to publish, read for the latest snapshot. The
|
|
7700
|
-
* identity is stable for the lifetime of the provider. */
|
|
7701
|
-
readonly pointerRef: MutableRefObject<PointerWorldPos>;
|
|
7702
|
-
/** Convenience thunk equivalent to `() => pointerRef.current`. Stable
|
|
7703
|
-
* identity for the lifetime of the provider; safe to pass to hooks. */
|
|
7704
|
-
readonly getDropPoint: () => PointerWorldPos;
|
|
7705
|
-
}
|
|
7706
|
-
/**
|
|
7707
|
-
* @experimental
|
|
7708
|
-
* Wrap the part of the React tree that should share a pointer-position
|
|
7709
|
-
* context. Usually placed at the demo / app root, alongside
|
|
7710
|
-
* `<ActionsProvider>` and `<SelectionContextProvider>`.
|
|
7711
|
-
*
|
|
7712
|
-
* Most consumers don't need to mount this directly — `<SceneCanvas>` mounts
|
|
7713
|
-
* an internal provider when no parent provider is in scope, so child hooks
|
|
7714
|
-
* (`useClipboard` without an explicit `getDropPoint`) read the canvas's
|
|
7715
|
-
* tracked pointer for free.
|
|
7716
|
-
*/
|
|
7717
|
-
declare function PointerContextProvider({ children }: {
|
|
7718
|
-
children: ReactNode;
|
|
7719
|
-
}): ReactNode;
|
|
7720
|
-
/** @experimental Read the surrounding pointer-context value, or `null` when
|
|
7721
|
-
* no provider is in scope. */
|
|
7722
|
-
declare function usePointerContext(): PointerContextValue | null;
|
|
7723
|
-
|
|
7724
7915
|
/** Mount a `<PointerContextProvider>` only when none is already in scope. */
|
|
7725
7916
|
declare function PointerProviderIfRoot({ children }: {
|
|
7726
7917
|
children: ReactNode;
|
|
7727
|
-
}):
|
|
7918
|
+
}): react.JSX.Element;
|
|
7728
7919
|
|
|
7729
7920
|
/** Mount an `<ActionsProvider>` only when none is already in scope, so
|
|
7730
7921
|
* nesting canvases share one action registry instead of shadowing it. */
|
|
7731
7922
|
declare function ActionsProviderIfRoot({ children }: {
|
|
7732
7923
|
children: ReactNode;
|
|
7733
|
-
}):
|
|
7924
|
+
}): react.JSX.Element;
|
|
7734
7925
|
|
|
7735
7926
|
/** Mount a `<DepRegistryProvider>` only when none is already in scope, so a
|
|
7736
7927
|
* consumer's dep sources are not shadowed by a nested canvas. */
|
|
7737
7928
|
declare function DepRegistryProviderIfRoot({ children }: {
|
|
7738
7929
|
children: ReactNode;
|
|
7739
|
-
}):
|
|
7930
|
+
}): react.JSX.Element;
|
|
7740
7931
|
|
|
7741
7932
|
interface WeaselProviderProps {
|
|
7742
7933
|
children: ReactNode;
|
|
@@ -7761,7 +7952,7 @@ interface WeaselProviderProps {
|
|
|
7761
7952
|
* state has to be shared by things outside a canvas: a toolbar, a property
|
|
7762
7953
|
* panel, or two canvases that should agree on the selection.
|
|
7763
7954
|
*/
|
|
7764
|
-
declare function WeaselProvider({ children, isolate }: WeaselProviderProps):
|
|
7955
|
+
declare function WeaselProvider({ children, isolate }: WeaselProviderProps): react.JSX.Element;
|
|
7765
7956
|
|
|
7766
7957
|
/** Options for `useCanvasFocus`. */
|
|
7767
7958
|
interface UseCanvasFocusOptions {
|
|
@@ -10518,7 +10709,11 @@ declare const DEFAULT_FILL_COLOR = "#ffffffff";
|
|
|
10518
10709
|
declare const DEFAULT_STROKE_COLOR = "#000000ff";
|
|
10519
10710
|
/** Default fill palette cycled through for auto-generated shape nodes
|
|
10520
10711
|
* (the kit's built-in shape tools and the `insert` action). */
|
|
10521
|
-
declare const DEFAULT_PALETTE:
|
|
10712
|
+
declare const DEFAULT_PALETTE: Palette;
|
|
10713
|
+
/** The `seq`th color of `palette`'s entries as hex, wrapping past the end.
|
|
10714
|
+
* An entry that resolves to nothing, or to a space with no hex form, gives
|
|
10715
|
+
* `fallback`. */
|
|
10716
|
+
declare function cycleFill(seq: number, palette?: Palette, fallback?: string): string;
|
|
10522
10717
|
/** Preview / "ghost" stroke color used by drag-to-draw tool overlays and the
|
|
10523
10718
|
* selected-anchor highlight. Derived from the first palette entry so the
|
|
10524
10719
|
* preview chrome matches the default insert color. */
|
|
@@ -11968,32 +12163,32 @@ interface IconProps {
|
|
|
11968
12163
|
/** Classic cursor-arrow shape — filled silhouette pointing top-left to
|
|
11969
12164
|
* bottom-right with the diagonal "tail" along the lower edge. Used for
|
|
11970
12165
|
* `useSelectTool`. */
|
|
11971
|
-
declare function SelectIcon({ className, size }: IconProps):
|
|
12166
|
+
declare function SelectIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11972
12167
|
|
|
11973
12168
|
/** Freeform marquee — outlined irregular loop with a short tail
|
|
11974
12169
|
* suggesting "the lasso closed where you released the pointer." Used
|
|
11975
12170
|
* for `useLassoTool`. */
|
|
11976
|
-
declare function LassoIcon({ className, size }: IconProps):
|
|
12171
|
+
declare function LassoIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11977
12172
|
|
|
11978
12173
|
/** Outlined rectangle with a small crosshair at the upper-left corner,
|
|
11979
12174
|
* signaling "this is a drawing tool, not just a shape." Used for the
|
|
11980
12175
|
* rectangle insertion tool (`useInsertTool` today, future `useRectTool`). */
|
|
11981
|
-
declare function RectIcon({ className, size }: IconProps):
|
|
12176
|
+
declare function RectIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11982
12177
|
|
|
11983
12178
|
/** Outlined ellipse. Used for the ellipse insertion tool. */
|
|
11984
|
-
declare function EllipseIcon({ className, size }: IconProps):
|
|
12179
|
+
declare function EllipseIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11985
12180
|
|
|
11986
12181
|
/** Framed picture with a sun and mountain — the conventional "image" glyph.
|
|
11987
12182
|
* Used for the image insertion tool (`useImageTool`). */
|
|
11988
|
-
declare function ImageIcon({ className, size }: IconProps):
|
|
12183
|
+
declare function ImageIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11989
12184
|
|
|
11990
12185
|
/** Eyedropper — diagonal stem running from upper-right (bulb) to
|
|
11991
12186
|
* lower-left (tip), with a small squared bulb cap at the top. Used
|
|
11992
12187
|
* for the eyedropper / color-picker tool. */
|
|
11993
|
-
declare function EyedropperIcon({ className, size }: IconProps):
|
|
12188
|
+
declare function EyedropperIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11994
12189
|
|
|
11995
12190
|
/** Diagonal line. Used for the line insertion tool. */
|
|
11996
|
-
declare function LineIcon({ className, size }: IconProps):
|
|
12191
|
+
declare function LineIcon({ className, size }: IconProps): react.JSX.Element;
|
|
11997
12192
|
|
|
11998
12193
|
/** `LineIcon`'s diagonal with a filled head, so the two read as one tool with
|
|
11999
12194
|
* and without the marker. Used for the arrow insertion tool.
|
|
@@ -12002,47 +12197,115 @@ declare function LineIcon({ className, size }: IconProps): react_jsx_runtime.JSX
|
|
|
12002
12197
|
* under antialiasing and the notch disappears, leaving a blob. Its base
|
|
12003
12198
|
* corners are `tip ∓ 5.6·d ± 2.1·d⊥` — computed, and the shaft stops half a
|
|
12004
12199
|
* unit inside the base so its round cap hides under the fill. */
|
|
12005
|
-
declare function ArrowIcon({ className, size }: IconProps):
|
|
12200
|
+
declare function ArrowIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12006
12201
|
|
|
12007
12202
|
/** Outlined hexagon. Used for the polygon insertion tool. */
|
|
12008
|
-
declare function PolygonIcon({ className, size }: IconProps):
|
|
12203
|
+
declare function PolygonIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12009
12204
|
|
|
12010
12205
|
/** Outlined five-point star. Used for the star insertion tool. */
|
|
12011
|
-
declare function StarIcon({ className, size }: IconProps):
|
|
12206
|
+
declare function StarIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12012
12207
|
|
|
12013
12208
|
/** Slanted pencil pointing toward the upper-right corner. Used for the
|
|
12014
12209
|
* freehand pencil insertion tool. */
|
|
12015
|
-
declare function PencilIcon({ className, size }: IconProps):
|
|
12210
|
+
declare function PencilIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12016
12211
|
|
|
12017
12212
|
/** Serif "T" — top bar + stem + small bottom serif. Used for
|
|
12018
12213
|
* `useTextTool`. Visually consistent with the layer-list text icon. */
|
|
12019
|
-
declare function TextIcon({ className, size }: IconProps):
|
|
12214
|
+
declare function TextIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12020
12215
|
|
|
12021
12216
|
/** Pen nib — angled filled body with a pointed tip and a small ink dot
|
|
12022
12217
|
* at the very tip, plus a short "control" handle extending out the
|
|
12023
12218
|
* back. Used for `usePenTool`. */
|
|
12024
|
-
declare function PenIcon({ className, size }: IconProps):
|
|
12219
|
+
declare function PenIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12025
12220
|
|
|
12026
12221
|
/** Open hand — rounded palm with four upward fingers (variable length)
|
|
12027
12222
|
* and a thumb stub. Used for `useHandTool` (viewport pan). */
|
|
12028
|
-
declare function HandIcon({ className, size }: IconProps):
|
|
12223
|
+
declare function HandIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12029
12224
|
|
|
12030
12225
|
/** Placeholder for tools without `presentation.icon`. A circle with "?"
|
|
12031
12226
|
* inside — readable, debuggable, not hidden. */
|
|
12032
|
-
declare function UnknownIcon({ className, size }: IconProps):
|
|
12227
|
+
declare function UnknownIcon({ className, size }: IconProps): react.JSX.Element;
|
|
12033
12228
|
|
|
12034
12229
|
/** Icon for the union operation: two overlapping circles merged into one filled shape. */
|
|
12035
|
-
declare function UnionIcon():
|
|
12230
|
+
declare function UnionIcon(): react.JSX.Element;
|
|
12036
12231
|
/** Icon for the intersect operation: only the overlap of two circles filled. */
|
|
12037
|
-
declare function IntersectIcon():
|
|
12232
|
+
declare function IntersectIcon(): react.JSX.Element;
|
|
12038
12233
|
/** Icon for the subtract operation: the front circle removed from the back one. */
|
|
12039
|
-
declare function SubtractIcon():
|
|
12234
|
+
declare function SubtractIcon(): react.JSX.Element;
|
|
12040
12235
|
/** Icon for the exclude operation: both circles filled except their overlap. */
|
|
12041
|
-
declare function ExcludeIcon():
|
|
12236
|
+
declare function ExcludeIcon(): react.JSX.Element;
|
|
12042
12237
|
/** Icon for the divide operation: two circles split into their separate regions. */
|
|
12043
|
-
declare function DivideIcon():
|
|
12238
|
+
declare function DivideIcon(): react.JSX.Element;
|
|
12044
12239
|
/** Icon for the crop operation: the back shape clipped to the front one. */
|
|
12045
|
-
declare function CropIcon():
|
|
12240
|
+
declare function CropIcon(): react.JSX.Element;
|
|
12241
|
+
|
|
12242
|
+
/** Cut: scissors. */
|
|
12243
|
+
declare function CutIcon(): react.JSX.Element;
|
|
12244
|
+
/** Copy: a document peeking out behind another. */
|
|
12245
|
+
declare function CopyIcon(): react.JSX.Element;
|
|
12246
|
+
/** Paste: a clipboard with a filled clip. */
|
|
12247
|
+
declare function PasteIcon(): react.JSX.Element;
|
|
12248
|
+
/** Duplicate: the source outlined, the copy filled. */
|
|
12249
|
+
declare function DuplicateIcon(): react.JSX.Element;
|
|
12250
|
+
/** Group: corner brackets framing two filled rects. */
|
|
12251
|
+
declare function GroupIcon(): react.JSX.Element;
|
|
12252
|
+
/** Ungroup: two filled rects escaping a frame broken to two dashed corners. */
|
|
12253
|
+
declare function UngroupIcon(): react.JSX.Element;
|
|
12254
|
+
/** Bring forward: two stacked rects, the front one filled. */
|
|
12255
|
+
declare function BringForwardIcon(): react.JSX.Element;
|
|
12256
|
+
/** Bring to front: three stacked rects, the frontmost filled. */
|
|
12257
|
+
declare function BringToFrontIcon(): react.JSX.Element;
|
|
12258
|
+
/** Send backward: two stacked rects, the rear one filled. */
|
|
12259
|
+
declare function SendBackwardIcon(): react.JSX.Element;
|
|
12260
|
+
/** Send to back: three stacked rects, the rearmost filled. */
|
|
12261
|
+
declare function SendToBackIcon(): react.JSX.Element;
|
|
12262
|
+
/** Flip horizontal: an outlined and a filled chevron either side of a dashed vertical axis. */
|
|
12263
|
+
declare function FlipXIcon(): react.JSX.Element;
|
|
12264
|
+
/** Flip vertical: an outlined and a filled chevron either side of a dashed horizontal axis. */
|
|
12265
|
+
declare function FlipYIcon(): react.JSX.Element;
|
|
12266
|
+
|
|
12267
|
+
declare function AlignLeftIcon(): react.JSX.Element;
|
|
12268
|
+
declare function AlignRightIcon(): react.JSX.Element;
|
|
12269
|
+
declare function AlignTopIcon(): react.JSX.Element;
|
|
12270
|
+
declare function AlignBottomIcon(): react.JSX.Element;
|
|
12271
|
+
declare function AlignCenterXIcon(): react.JSX.Element;
|
|
12272
|
+
declare function AlignCenterYIcon(): react.JSX.Element;
|
|
12273
|
+
|
|
12274
|
+
declare function DistributeHorizontalIcon(): react.JSX.Element;
|
|
12275
|
+
declare function DistributeVerticalIcon(): react.JSX.Element;
|
|
12276
|
+
|
|
12277
|
+
/**
|
|
12278
|
+
* @experimental
|
|
12279
|
+
* Props for the undo, redo and delete glyphs — the same shape as
|
|
12280
|
+
* `@weasel-js/ui`'s `IconProps`, which re-exports these components.
|
|
12281
|
+
*/
|
|
12282
|
+
interface ActionGlyphProps extends IconProps {
|
|
12283
|
+
/** Accessible name. Omit inside a button that already labels itself; the
|
|
12284
|
+
* glyph is then `aria-hidden`. */
|
|
12285
|
+
label?: string;
|
|
12286
|
+
/** Accepted for parity with the rest of the ui icon set; none of these
|
|
12287
|
+
* glyphs encloses a region, so it draws nothing. */
|
|
12288
|
+
filled?: boolean;
|
|
12289
|
+
fillOpacity?: number;
|
|
12290
|
+
}
|
|
12291
|
+
/** @experimental Undo: a straight run returning in a half circle, arrowhead on the run. */
|
|
12292
|
+
declare function UndoIcon(p: ActionGlyphProps): react.JSX.Element;
|
|
12293
|
+
/** @experimental Redo: the undo glyph mirrored. */
|
|
12294
|
+
declare function RedoIcon(p: ActionGlyphProps): react.JSX.Element;
|
|
12295
|
+
/** @experimental Delete: a lidded trash can. */
|
|
12296
|
+
declare function DeleteIcon(p: ActionGlyphProps): react.JSX.Element;
|
|
12297
|
+
|
|
12298
|
+
/**
|
|
12299
|
+
* @experimental
|
|
12300
|
+
* SVG bodies of the glyphs the undo, redo and delete actions ship as their
|
|
12301
|
+
* icons: 20x20 viewBox, stroked in currentColor at stroke-width 1.5 with round
|
|
12302
|
+
* caps and joins. `<Icon name="undo" />` in `@weasel-js/ui` draws the same one.
|
|
12303
|
+
*/
|
|
12304
|
+
declare const ACTION_GLYPHS: {
|
|
12305
|
+
readonly delete: "<path d=\"M3.6 5.8h12.8M8 5.8V4.5A1.1 1.1 0 0 1 9.1 3.4h1.8A1.1 1.1 0 0 1 12 4.5v1.3\"/><path d=\"M5.2 5.8v9.6A1.6 1.6 0 0 0 6.8 17h6.4a1.6 1.6 0 0 0 1.6-1.6V5.8\"/><path d=\"M8.4 8.8v5.2M11.6 8.8v5.2\" stroke-width=\"1\"/>";
|
|
12306
|
+
readonly undo: "<path d=\"M4.4 8.4h6.8a3.6 3.6 0 0 1 0 7.2H8.6\"/><path d=\"M6.47 10.14 4.4 8.4 6.47 6.66\"/>";
|
|
12307
|
+
readonly redo: "<path d=\"M15.6 8.4H8.8a3.6 3.6 0 0 0 0 7.2H11.4\"/><path d=\"M13.53 6.66 15.6 8.4 13.53 10.14\"/>";
|
|
12308
|
+
};
|
|
12046
12309
|
|
|
12047
12310
|
/**
|
|
12048
12311
|
* The painted tier: draws a cursor glyph into the scene when it is too big,
|
|
@@ -12071,4 +12334,4 @@ interface InsertOverlayStyle {
|
|
|
12071
12334
|
lineWidth?: number;
|
|
12072
12335
|
}
|
|
12073
12336
|
|
|
12074
|
-
export { ANCHOR_HIT_BASE_PX, type ActionShortcut, ActionsProviderIfRoot, type Affordance, type AffordanceBinding, type AffordanceRegion, type AffordanceRegionHit, type AlignAdapter, type AlignAnchor, type AlignEdge, type AlignMatchResult, type AlignMoveArgs, type AlignmentBehaviorBase, type AnchorHit, type AnchorScratch, type AnchorState, type AnimateOnSetPoseOptions, AnimationHandle, Animator, type AnyTool, AreaSelectAdapter, type ArrayAdapter, type ArrayAdapterConfig, ArrowIcon, BUILTIN_MARKERS, BUNDLE_TOOLS, type BakedMesh, type BindRigOptions, BooleansAdapter, BoundsConstraint, type BuildChromeCtxArgs, type BuiltinShapeToolId, type BuiltinToolId, type BuiltinToolOptions, CURVE_REPS, type CanvasExtensionApi, type CanvasFocusReturn, type CanvasHelpers, type CanvasProps, type CanvasSelectionMode, type CanvasSize, type CanvasSizeSnapshot, type CanvasSurfaceHelpers, CanvasView, type CanvasViewHandle, type CanvasViewHelpers, type CanvasViewProps, type CellHighlightLayerOpts, type ChromeCtx, type ChromeId, type ChromeState, type ClampBounds, ClipboardSnapshot, type CoalescedCtx, type ColorInterpolate, ColorOverrideRegistry, type CommonAffordanceScratch, type ComposeSelectionPoseOpts, type ComputeFitViewOptions, type Condition, ContentHandlerEntry, type Contribution, type ContributionChrome, type CornerResizeAffordanceOptions, type CornerResizeScratch, type CreateChildrenLayerOpts, type CreateParallaxLayerOpts, type CreatePathEditingOverlayLayerOptions, type CreatePathLayerOpts, type CreatePenPreviewLayerOptions, type CreateTextLayerOpts, type CreateTiledLayerOpts, type CreateViewResolverOpts, type CreateViewportLayerOpts, CropIcon, CursorCoordsHud, type CursorCoordsHudProps, type CurveRepKind, type CurveRepresentation, type CustomLayerEntry, type CustomPaintContext, type CycleHandle, type CycleVertexColorsOptions, DEFAULT_DEBUG_STROKES, DEFAULT_DEBUG_THEME, DEFAULT_FILL_COLOR, DEFAULT_GUIDE_TOLERANCE_PX, DEFAULT_HANDLE_SIZE, DEFAULT_MAX_ZOOM, DEFAULT_MIN_ZOOM, DEFAULT_PALETTE, DEFAULT_ROTATION_HANDLE_DISTANCE, DEFAULT_SHAPE_FILL, DEFAULT_STROKE_COLOR, type DebugConfig, type DebugFeature, type DebugSnapshot, type DebugStroke, type DebugStrokes, type DebugTheme, type DefaultTextData, DepRegistryProviderIfRoot, type DeriveAlignmentGuidesOptions, DerivedDep, DeviceProfileProvider, type DeviceProfileProviderProps, type Dims, type Discriminator, type DistributeAdapter, type DistributeAxis, type DistributeMode, DivideIcon, type DragGestureController, type DragGestureCtx, type DragGestureEndCtx, type DragGesturePhase, type DragGesturePoint, type DragHandleOptions, type DragPanParams, type DragPayload, type DragRadialController, type DragRadialCtx, type DragRadialEndCtx, type DragRadialPoint, type DragRadialState, type DragRectBounds, type DragRectController, type DragRectCtx, type DragRectEndCtx, type DragRectPoint, DrawCommand, type DropZoneOptions, EasingSpec, Effect, EllipseIcon, ExcludeIcon, EyedropperIcon, FALLBACK_FIT_VIEW, type FeedDelta, type FeedNode, type FillPoseBox, type FitTextPoseOptions, type FlagKey, type FreeformOptions, GHOST_STROKE, type GateLayerOptions, GeometryProjection, type GesturePreviewSource, type GestureSource, GlMat3, type GridLayerOpts, type GridSlotConfig, Guide, type GuideSnapOptions, type GuidesLayerOpts, HANDLE_BASE_PX, HandIcon, InertiaConfig as HandToolInertiaConfig, type HandleDragEnd, type HandleDragPoint, type HeadlessCanvasLike, type HostAnchorAlign, type HostAnchorInput, type HostAnchorOffset, type HostAnchorStyle, IDENTITY_JOINT, type IconProps, ImageIcon, type ImageNodeData, type ImageStatus, type IndicatorStyle, InertiaConfig, InsertAdapter, InsertBehavior, InsertExtras, type InsertNodeFactory, type InsertOp, type InsertOverlayStyle, type InsertPreviewExtent, type InsertPreviewGeometry, type InsertPreviewLike, type InsertPreviewOverlay, IntersectIcon, type Joint, type JointTransform, KIT_SHAPE_KINDS, KIT_STANDARD_ACTION_IDS, type KeyModifiers, type KeyState, type KeyStateAttachOptions, type LabelOptions, LassoHitMode, LassoIcon, LassoSelectAdapter, LassoSelectBehavior, type LayerCommandCache, type LayerDrawFailure, LayerEnumerableAdapter, type LayerGroup, type LayerHit, type LayerSlotValue, type LayersMap, LayoutSnap, LayoutStrategy, type LifecycleAnimation, LineIcon, type LinePoint, MESH_BAKE_SIZE, MESH_GRADIENT_KIND, MIXED, MOVE_ANCHORS, type MarkerCtx, type MarkerEntry, type MarkerPaint, type MarkerSite, type MarkerSiteRequest, type MeshGradientFill, type MeshPatch, type MeshPoint, MinimapCanvas, type MinimapCanvasProps, type MinimapFit, type Mixed, type MomentumOptions, MoveAdapter, MoveBehavior, type NestedHitOpts, type NestedHitTester, type NodeClientRect, type NodeInk, type NodeInkCtx, type NodeOverlayFrame, type NodePaintCtx, type NodeProperties, type NodePropertiesEntry, type NodeRouting, type NodeRoutingEntry, type NodeShapeEntry, type NodeSilhouetteCtx, type OpenFilePickerOptions, OrderedAdapter, OriginProjection, type OverlayPoint, type OverlayVisibilityId, PAINTED_CURSOR_LAYER_ID, PATH_ANCHOR_CHROME_ID, type PaintBindContext, type PaintKind, type PaintKindEditorProps, type PaintKindEntry, type PaintProgram, PanBounds, type ParallaxOpts, Path, type PathAnchor, type PathAnchorAffordanceOptions, PathBuilder, PathDrawCommand, type PathEditingOverlayStyle, type PathInWorldPose, type PenAnchor, PenIcon, type PenPreviewStyle, type PenScratch, type PenSubpath, PencilIcon, type PencilPoint, PickHud, type PickHudProps, type PickTopMostHitAdapter, type PinchZoomOptions, type PixelRenderPlan, type PointInPathOptions, type PointInTextPoseOpts, PointSnapBehavior, PointerContextProvider, type PointerContextValue, PointerProviderIfRoot, type PointerSample, type PointerStylusState, type PointerWorldPos, PolygonIcon, PolygonPath, type PolygonPoint, type Pose, PoseComposition, PoseDescriptor, type PoseFeed, PoseOverrides, type PoseRotation, type PoseRun, type PoseRunCtx, type PoseRunStep, type PoseSource, type PosedNode, type PressureToWidthOptions, type PreviewNode, ROTATION_HANDLE_BASE_PX, type RangeStyle, type RasterImage, type RecordedBounds, type RecordedHandle, type RecordedHitbox, type RecordedLayer, type RecordedOrigin, type RecordedSnap, RectIcon, RectPath, RectPose, type RegisterNodeShapeOptions, RegisteredOp, type RenderLayer, type RenderSceneToCanvasArgs, type RenderSceneToPixelsArgs, type ReorderDirection, ResizeAdapter, type ResolvableView, type ResolvedOverlay, type Rig, type RigApply, type RigApplyContext, type RigScene, RotateAdapter, RotateBehavior, RotatedPose, type RotationAffordanceOptions, type RotationHandle, type RotationScratch, type RunStylePatch, SampledTrack, type ScalarOrXY, Scene, SceneAdapter, type SceneAdapterSelection, SceneCanvas, type SceneCanvasAdapter, type SceneCanvasApi, type SceneCanvasHit, type SceneCanvasProps, Node$1 as SceneNode, type SceneNodeClientRectOpts, SceneRegistry, type SceneSlotConfig, type SceneToAdapterOptions, SceneViewCanvas, type SceneViewCanvasProps, type SceneViewDrawOne, type SceneViewLayers, type SelectAdapter, type SelectFromLassoOptions, SelectIcon, SelectionContextProvider, SelectionContextProviderIfRoot, type SelectionContextValue, type SelectionHandleStyle, type SelectionHandlesLayerOpts, type SelectionOutlineLayerOpts, type SelectionOverlayLayerOpts, type SelectionOverlaySlotConfig, SerializedScene, type SetFlagResult, type SetPathFields, ShaderProgramHandle, type ShapeCoversPointOptions, type SharedAnchor, Simulation, SimulationNode, type Skeleton, type Slew, type SlewRates, SliceDep, type SnapPattern, type SnapPointOptions, SnapStrategy, type SplitByLineOptions, type SpringPoseOptions, SpringPresetName, type SpringVertexColorsOptions, type StaggerVertexColorsOptions, type StandardSlotConfig, type StandardSlotName, StarIcon, type StarPoint, type StartEditOptions, type StyleKey, type StylusData, SubtractIcon, SvgIngestOptions, TOOL_PREF_KINDS, TextDrawCommand, type TextEditClipRect, type TextEditScreenPose, type TextEditSelection, TextIcon, type ThresholdDragHandle, type ThresholdDragOptions, type TileBleed, type TileGridOptions, type TilePatternOpts, type TilePeriod, type TileRange, type Tool, type ToolBundle, type ToolDef, type ToolPref, type ToolPrefBoolean, type ToolPrefBooleanControl, type ToolPrefColor, type ToolPrefCustom, type ToolPrefEnum, type ToolPrefEnumControl, type ToolPrefEnumEncoding, type ToolPrefGroup, type ToolPrefKind, type ToolPrefLeaf, type ToolPrefNumber, type ToolPrefNumberControl, type ToolPrefNumberFormat, type ToolPrefNumberUnit, type ToolPrefObject, type ToolPrefPaint, type ToolPrefString, type ToolPrefStringControl, type ToolsApi, type TweenPoseOptions, type TweenVertexColorsOptions, UNION_OF_CHILDREN, UnionIcon, Unit, UnitEntry, UnitSystem, UnitValue, UnknownIcon, type UseAlignOptions, type UseAlignReturn, UseAnimatorOptions, type UseArrayAdapterOptions, type UseBooleansOptions, type UseBooleansReturn, type UseCanvasFocusOptions, type UseDistributeOptions, type UseDistributeReturn, type UseDragGestureOptions, type UseDragRadialOptions, type UseDragRectOptions, type UseEyedropperToolOptions, type UseGridCellHoverOptions, type UseGridCellHoverReturn, type UseGuidesReturn, type UseHandToolOptions, type UseHandleDragOptions, type UseHandleDragReturn, type UseHostAnchorOptions, type UseHoverTrackingArgs, type UseImageToolOptions, type UseKeyStateOptions, type UseKeybindingsOptions, type UseLassoSelectOptions, type UseLassoToolOptions, UseMoveOptions, type UseNodeOverlayFrameOptions, type UsePenToolOptions, type UsePointerStylusOptions, type UsePolygonToolOptions, type UsePoseRunOptions, UseResizeOptions, type UseResizePolicyOptions, type UseRotateOptions, UseSceneOptions, type UseSceneTextEditOptions, type UseSceneTextEditReturn, type UseSceneTrivialOptions, type UseSelectToolOptions, type UseSelectionOptions, UseSimulationOptions, type UseStandardActionsOptions, type UseStarToolOptions, type UseTextEditOptions, type UseTextEditReturn, type UseToolsOptions, VERSION, type VelocityTracker, VertexColorChannel, ViewAnimationOptions, type ViewRect, type ViewResolver, type ViewTarget, type ViewTransform, ViewportDims, type ViewportLayer, type ViewportToolDef, type ViewportZoomAnimateOptions, type ViewportZoomOptions, type VisibilityRules, type VisibleRaf, type VisibleRafOptions, type VisibleRafTarget, WHEEL_ZOOM_STEP, WeaselProvider, type WheelInput, type WheelPanOptions, type WheelPanOpts, ZOOM_FLOOR, type ZoomBound, type ZoomClampOpts, type ZoomFactor, _resetMarkersForTests, _resetPaintKindsForTests, actionIs, actionShortcuts, alignDeltaFor, alignInsertBehavior, alignMoveBehavior, alignResizeBehavior, always, and, animateLifecycle, animateOnSetPose, annulusSemiAxes, applyOpsTo, applyStyleToRange, areaSelectAction, arrayAdapter, asPaint, axisAlignedBounds, bakeMesh, bezierCubic, bezierQuadratic, bindRig, blendPoses, boundsOfPath, buildChromeCtx, buildSceneViewCommands, canBringForward, canHover, canSendBackward, capabilityAll, capabilityIn, capabilityIs, capabilityNot, caretIndexAt, cellAt, charOffsetToDomPosition, circlePath, clampView, clearSelectionAction, clipboardCopyAction, clipboardCutAction, cloneAction, coarsePointer, composeAffordanceLayer, composePath, composeSelectionPose, computeFitView, computeFitViewport, computeIndicatorCommand, computeWheelAction, cond, constrainTo45, containedThenNearest, cornerWeights, countPathAnchors, createCellHighlightLayer, createChildrenLayer, createCornerResizeAffordance, createDebugOverlayLayer, createDebugSink, createDeleteOp, createGridLayer, createGuidesLayer, createHistory, createInsertOp, createKeyState, createMoveToIndexOp, createNodeProperties, createNodeRouting, createPaintedCursorLayer, createParallaxLayer, createPathAnchorAffordances, createPathEditingOverlayLayer, createPathLayer, createPenPreviewLayer, createPoseFeed, createPoseOverrides, createReorderOp, createReparentOp, createRotationAffordance, createScene, createSelectionHandlesLayer, createSelectionOutlineLayer, createSelectionOverlayLayer, createSetDataOp, createSetLayerOp, createSetPathOp, createSetSelectionOp, createSetTextOp, createSlew, createTextLayer, createTilePattern, createTiledLayer, createTransformOp, createVelocityTracker, createViewResolver, createViewportLayer, cycleVertexColors, decomposePath, defaultCommitAdapter, defaultDrawOne, defaultLabelTextRenderer, defaultNodeProperties, defaultNodeRouting, defaultVisibilityRules, defineTool, defineViewportTool, deriveAlignmentGuides, deriveParallaxView, derivedDepOf, derivedPose, dispatchApplyBatch, dlog, documentPose, domPositionToCharOffset, domToRuns, drawLayers, drawOneLayer, dwarn, editAnchorsAction, effectivePose, effectiveRangeStyle, enterTextEditAction, enumerateAnchors, evalPatch, fillInPoseFrame, fillToBoundsFrame, findNodeShape, findShapeInk, findShapeSilhouette, fitTextPose, fitToBounds, fitZoom, flattenPreviews, focused, forEachCoalesced, freeform, gateLayer, gesturing, getAlpha01, getImageBitmap, getMarker, getNodeShapes, getPaintKind, getStylusData, gradientForBounds, gradientGeometry, guideSnapStrategy, hexToRgba, hitAffordanceRegions, hitAnchor, hitRotationHandle, hostAnchorCss, hostAnchorRect, hovering, hoveringSelected, imageStatus, inferredNodeProperties, inferredNodeRouting, insertAction, insertPreviewExtent, interpolateView, isBuiltinToolPref, isDebugEnabled, isGradientFill, isLayerPainted, isLayerVisible, isMeshGradientFill, isPatternSpec, isTensorPatch, isValidPatch, keySpecShortcut, lassoSelectAction, listMarkers, listPaintKinds, makePinchZoomAction, makeViewportWheelPanAction, makeViewportZoomAction, markerDrawCommands, markerInset, markerKeyOf, markerSites, matchAlignment, meanScale, mergeAlphaFromPrev, meshBounds, meshGradientXml, modeIn, modeIs, modeNot, modifierHeld, momentum, moveAction, multiActive, nearest, nearestWithin, nestedHitTester, never, nodeHasFlag, none, normalizeHex, normalizeView, normalizeZoom, not, nurbs, openFilePicker, or, paintAlpha, paintKindOf, paintWithAlpha, paintWithColor, parseColor, parseColorToRgba255, parseDebugFlags, patchBounds, patchCorner, pathContainsPoint, pathContainsPolygon, pathContainsRect, pathDistanceToPoint, pathDivide, pathExclude, pathFromD, pathInPoseFrame, pathInWorld, pathIntersect, pathIntersectsPolygon, pathIntersectsRect, pathOriginProjection, pathPoseDescriptor, pathSubtract, pathToAnchors, pathUnion, pickTopMostHit, pinchZoomAction, planPixelRender, pointInPath, pointInTextPose, poseRotationOf, prefUnit, pressureToWidth, pxExtent, rainbowVertexColors, rebuildOp, rectMarkerPath, registerMarker, registerNodeShape, registerOpFactory, registerPaintKind, registeredOpNames, renderLabel, renderSceneToCanvas, renderSceneToPixels, resizeAction, resolveColor, resolveFillPattern, resolveMarkerSize, resolveOverlays, resolvePatternSpec, resolvePreviews, resolveSkeleton, resolveVisibility, rgbaToHex, rigidRigApply, rotateAction, rotateAroundAABBCenter, rotatePathAround, rotationDegreesUnit, rotationHandle, roundRectPath, roundToCell, runsToDom, sampleGradientStops, sampleTrack, scaleDelta, scalePathToBounds, sceneFromJSON, sceneNodeClientRect, sceneSelectionStore, sceneToAdapter, screenToWorld, seedMeshPatch, selectFromLasso, selectionAtLeast, selectionEmpty, selectionIs, setFlagOverRange, shapeCoversPoint, slewToward, sliceAction, snap, snapPoint, solid, solidVertexColors, spiro, splitPathByLine, splitSubpaths, springPose, springVertexColors, squarePath, staggerVertexColors, startThresholdDrag, strokeInsets, strokeOf, strokeWith, styleAtRange, subscribeImageReady, textCommand, textCommandFromPose, textCommandFromRuns, tileGrid, tiledProject, toHex8, transformPath, translatePath, trimPolyline, tweenPose, tweenVertexColors, unionAABB, unionBounds, unionBoundsPath, unionOfChildren, unionOfChildrenVia, useAlign, useAnimator, useArrayAdapter, useAutoCenter, useBooleans, useBooleansAdapter, useCanvasFocus, useCanvasSize, useDeviceProfile, useDistribute, useDragGesture, useDragHandle, useDragRadial, useDragRect, useDropZone, useEllipseTool, useEyedropperTool, useGridCellHover, useGuides, useHandTool, useHandleDrag, useHostAnchor, useHoverTracking, useImageTool, useKeyState, useKeybindings, useLassoTool, useLineTool, useNodeOverlayFrame, usePenTool, usePencilTool, usePinchGesture, usePointerContext, usePointerStylus, usePolygonTool, usePoseCompositionDepSource, usePoseDescriptorDepSource, usePoseRun, usePublishSelection, useRectTool, useResizePolicy, useRig, useScene, useSceneAdapter, useSceneTextEdit, useSelectTool, useSelection, useSelectionContext, useSimulation, useSliceDep, useStandardActions, useStarTool, useTextEdit, useTextTool, useTools, useVelocityTracker, useVisibleRaf, viewToTransform, viewZoom, viewportDragPanAction, viewportWheelPanAction, viewportZoomAction, viewportsAt, wheelPan, wheelZoom, wheelZoomFactor, when, withAlpha01, withCoord, withGradientKind, withinPxBox, withinPxRadius, worldEditToStorage, worldToScreen, zoomAt, zoomAtLeast };
|
|
12337
|
+
export { ACTION_GLYPHS, ANCHOR_HIT_BASE_PX, type ActionGlyphProps, type ActionShortcut, ActionsProviderIfRoot, type Affordance, type AffordanceBinding, type AffordanceRegion, type AffordanceRegionHit, type AlignAdapter, type AlignAnchor, AlignBottomIcon, AlignCenterXIcon, AlignCenterYIcon, type AlignEdge, AlignLeftIcon, type AlignMatchResult, type AlignMoveArgs, AlignRightIcon, AlignTopIcon, type AlignmentBehaviorBase, type AnchorHit, type AnchorScratch, type AnchorState, type AnimateOnSetPoseOptions, AnimationHandle, Animator, type AnyTool, AreaSelectAdapter, type ArrayAdapter, type ArrayAdapterConfig, ArrowIcon, BUILTIN_MARKERS, BUNDLE_TOOLS, type BakedMesh, type BindRigOptions, BooleansAdapter, BoundsConstraint, BringForwardIcon, BringToFrontIcon, type BuildChromeCtxArgs, type BuiltinShapeToolId, type BuiltinToolId, type BuiltinToolOptions, CROSSHAIR_HALO, CURVE_REPS, type CanvasExtensionApi, type CanvasFocusReturn, type CanvasHelpers, type CanvasProps, type CanvasSelectionMode, type CanvasSize, type CanvasSizeSnapshot, type CanvasSurfaceHelpers, CanvasView, type CanvasViewHandle, type CanvasViewHelpers, type CanvasViewProps, type CellHighlightLayerOpts, type ChromeCtx, type ChromeId, type ChromeState, type ClampBounds, ClipboardSnapshot, type CoalescedCtx, type ColorInterpolate, ColorOverrideRegistry, type CommonAffordanceScratch, type ComposeSelectionPoseOpts, type ComputeFitViewOptions, type Condition, ContentHandlerEntry, type Contribution, type ContributionChrome, type ContributionDepReader, CopyIcon, type CornerResizeAffordanceOptions, type CornerResizeScratch, type CreateChildrenLayerOpts, type CreateParallaxLayerOpts, type CreatePathEditingOverlayLayerOptions, type CreatePathLayerOpts, type CreatePenPreviewLayerOptions, type CreateTextLayerOpts, type CreateTiledLayerOpts, type CreateViewResolverOpts, type CreateViewportLayerOpts, CropIcon, type CrosshairRect, CursorCoordsHud, type CursorCoordsHudProps, type CurveRepKind, type CurveRepresentation, type CustomLayerEntry, type CustomPaintContext, CutIcon, type CycleHandle, type CycleVertexColorsOptions, DEFAULT_DEBUG_STROKES, DEFAULT_DEBUG_THEME, DEFAULT_FILL_COLOR, DEFAULT_GUIDE_TOLERANCE_PX, DEFAULT_HANDLE_SIZE, DEFAULT_MAX_ZOOM, DEFAULT_MIN_ZOOM, DEFAULT_PALETTE, DEFAULT_ROTATION_HANDLE_DISTANCE, DEFAULT_SHAPE_FILL, DEFAULT_STROKE_COLOR, type DebugConfig, type DebugFeature, type DebugSnapshot, type DebugStroke, type DebugStrokes, type DebugTheme, type DefaultTextData, DeleteIcon, DepRegistryProviderIfRoot, type DeriveAlignmentGuidesOptions, DerivedDep, DeviceProfileProvider, type DeviceProfileProviderProps, type Dims, type Discriminator, type DistributeAdapter, type DistributeAxis, DistributeHorizontalIcon, type DistributeMode, DistributeVerticalIcon, DivideIcon, type DragGestureController, type DragGestureCtx, type DragGestureEndCtx, type DragGesturePhase, type DragGesturePoint, type DragHandleOptions, type DragPanParams, type DragPayload, type DragRadialController, type DragRadialCtx, type DragRadialEndCtx, type DragRadialPoint, type DragRadialState, type DragRectBounds, type DragRectController, type DragRectCtx, type DragRectEndCtx, type DragRectPoint, DrawCommand, type DropZoneOptions, DuplicateIcon, EasingSpec, Effect, EllipseIcon, ExcludeIcon, EyedropperIcon, FALLBACK_FIT_VIEW, type FeedDelta, type FeedNode, type FillPoseBox, type FitTextPoseOptions, type FlagKey, FlipXIcon, FlipYIcon, type FreeformOptions, GHOST_STROKE, type GateLayerOptions, GeometryProjection, type GesturePreviewSource, type GestureSource, GlMat3, type GridLayerOpts, type GridSlotConfig, GroupIcon, Guide, type GuideSnapOptions, type GuidesLayerOpts, HANDLE_BASE_PX, HandIcon, InertiaConfig as HandToolInertiaConfig, type HandleDragEnd, type HandleDragPoint, type HeadlessCanvasLike, type HostAnchorAlign, type HostAnchorInput, type HostAnchorOffset, type HostAnchorStyle, IDENTITY_JOINT, type IconProps, ImageIcon, type ImageNodeData, type ImageRasterSize, type ImageStatus, type IndicatorStyle, InertiaConfig, InsertAdapter, InsertBehavior, InsertExtras, type InsertNodeFactory, type InsertOp, type InsertOverlayStyle, type InsertPreviewExtent, type InsertPreviewGeometry, type InsertPreviewLike, type InsertPreviewOverlay, IntersectIcon, type Joint, type JointTransform, KIT_SHAPE_KINDS, KIT_STANDARD_ACTION_IDS, type KeyModifiers, type KeyState, type KeyStateAttachOptions, type LabelOptions, LassoHitMode, LassoIcon, LassoSelectAdapter, LassoSelectBehavior, type LayerCommandCache, type LayerDrawFailure, LayerEnumerableAdapter, type LayerGroup, type LayerHit, type LayerSlotValue, type LayersMap, LayoutDropTargetMode, LayoutSnap, LayoutStrategy, type LifecycleAnimation, LineIcon, type LinePoint, type LinkedCursorOptions, MESH_BAKE_SIZE, MESH_GRADIENT_KIND, MINIMAP_CENTER, MINIMAP_PAN, MIXED, MOVE_ANCHORS, type MarkerCtx, type MarkerEntry, type MarkerPaint, type MarkerSite, type MarkerSiteRequest, type MeshGradientFill, type MeshPatch, type MeshPoint, MinimapCanvas, type MinimapCanvasProps, type MinimapContributionOptions, type MinimapFit, type Mixed, type MomentumOptions, MoveAdapter, MoveBehavior, type NestedHitOpts, type NestedHitTester, type NodeClientRect, type NodeInk, type NodeInkCtx, type NodeOverlayFrame, type NodePaintCtx, type NodeProperties, type NodePropertiesEntry, type NodeRouting, type NodeRoutingEntry, type NodeShapeEntry, type NodeSilhouetteCtx, type OpenFilePickerOptions, OrderedAdapter, OriginProjection, type OverlayPoint, type OverlayVisibilityId, PAINTED_CURSOR_LAYER_ID, PATH_ANCHOR_CHROME_ID, type PaintBindContext, type PaintKind, type PaintKindEditorProps, type PaintKindEntry, type PaintProgram, PanBounds, type ParallaxOpts, PasteIcon, Path, type PathAnchor, type PathAnchorAffordanceOptions, PathBuilder, PathDrawCommand, type PathEditingOverlayStyle, type PathInWorldPose, type PenAnchor, PenIcon, type PenPreviewStyle, type PenScratch, type PenSubpath, PencilIcon, type PencilPoint, PickHud, type PickHudProps, type PickTopMostHitAdapter, type PinchZoomOptions, type PixelRenderPlan, type PointInPathOptions, type PointInTextPoseOpts, PointSnapBehavior, PointerProviderIfRoot, type PointerSample, type PointerStylusState, PolygonIcon, PolygonPath, type PolygonPoint, type Pose, PoseComposition, PoseDescriptor, type PoseFeed, PoseOverrides, type PoseRotation, type PoseRun, type PoseRunCtx, type PoseRunStep, type PoseSource, type PosedNode, type PressureToWidthOptions, type PreviewNode, ROTATION_HANDLE_BASE_PX, type RangeStyle, type RasterImage, type RecordedBounds, type RecordedHandle, type RecordedHitbox, type RecordedLayer, type RecordedOrigin, type RecordedSnap, RectIcon, RectPath, RectPose, RedoIcon, type RegisterNodeShapeOptions, RegisteredOp, type RenderLayer, type RenderSceneToCanvasArgs, type RenderSceneToPixelsArgs, type ReorderDirection, ResizeAdapter, type ResolvableView, type ResolvedOverlay, type Rig, type RigApply, type RigApplyContext, type RigScene, RotateAdapter, RotateBehavior, RotatedPose, type RotationAffordanceOptions, type RotationHandle, type RotationScratch, type RunStylePatch, SampledTrack, type ScalarOrXY, Scene, SceneAdapter, type SceneAdapterSelection, SceneCanvas, type SceneCanvasAdapter, type SceneCanvasApi, type SceneCanvasHit, type SceneCanvasProps, Node$1 as SceneNode, type SceneNodeClientRectOpts, SceneRegistry, type SceneSlotConfig, type SceneToAdapterOptions, SceneViewCanvas, type SceneViewCanvasProps, type SceneViewDrawOne, type SceneViewLayers, type SelectAdapter, type SelectFromLassoOptions, SelectIcon, SelectionContextProvider, SelectionContextProviderIfRoot, type SelectionContextValue, type SelectionHandleStyle, type SelectionHandlesLayerOpts, type SelectionOutlineLayerOpts, type SelectionOverlayLayerOpts, type SelectionOverlaySlotConfig, SendBackwardIcon, SendToBackIcon, SerializedScene, type SetFlagResult, type SetPathFields, ShaderProgramHandle, type ShapeCoversPointOptions, type ShapeKind, type SharedAnchor, Simulation, SimulationNode, type Skeleton, type Slew, type SlewRates, SliceDep, type SnapPattern, type SnapPointOptions, SnapStrategy, type SplitByLineOptions, type SpringPoseOptions, SpringPresetName, type SpringVertexColorsOptions, type StaggerVertexColorsOptions, type StandardSlotConfig, type StandardSlotName, StarIcon, type StarPoint, type StartEditOptions, type StyleKey, type StylusData, SubtractIcon, type SurfaceContribution, SvgIngestOptions, TOOL_PREF_KINDS, TextDrawCommand, type TextEditClipRect, type TextEditScreenPose, type TextEditSelection, TextIcon, type ThresholdDragHandle, type ThresholdDragOptions, type TileBleed, type TileGridOptions, type TilePatternOpts, type TilePeriod, type TileRange, type Tool, type ToolBundle, type ToolDef, type ToolPref, type ToolPrefBoolean, type ToolPrefBooleanControl, type ToolPrefColor, type ToolPrefCustom, type ToolPrefEnum, type ToolPrefEnumControl, type ToolPrefEnumEncoding, type ToolPrefGroup, type ToolPrefKind, type ToolPrefLeaf, type ToolPrefNumber, type ToolPrefNumberControl, type ToolPrefNumberFormat, type ToolPrefNumberUnit, type ToolPrefObject, type ToolPrefPaint, type ToolPrefString, type ToolPrefStringControl, type ToolsApi, type TweenPoseOptions, type TweenVertexColorsOptions, UNION_OF_CHILDREN, UndoIcon, UngroupIcon, UnionIcon, Unit, UnitEntry, UnitSystem, UnitValue, UnknownIcon, type UseAlignOptions, type UseAlignReturn, UseAnimatorOptions, type UseArrayAdapterOptions, type UseBooleansOptions, type UseBooleansReturn, type UseCanvasFocusOptions, type UseDistributeOptions, type UseDistributeReturn, type UseDragGestureOptions, type UseDragRadialOptions, type UseDragRectOptions, type UseEyedropperToolOptions, type UseGridCellHoverOptions, type UseGridCellHoverReturn, type UseGuidesReturn, type UseHandToolOptions, type UseHandleDragOptions, type UseHandleDragReturn, type UseHostAnchorOptions, type UseHoverTrackingArgs, type UseImageToolOptions, type UseKeyStateOptions, type UseKeybindingsOptions, type UseLassoSelectOptions, type UseLassoToolOptions, UseMoveOptions, type UseNodeOverlayFrameOptions, type UsePenToolOptions, type UsePointerStylusOptions, type UsePolygonToolOptions, type UsePoseRunOptions, UseResizeOptions, type UseResizePolicyOptions, type UseRotateOptions, UseSceneOptions, type UseSceneTextEditOptions, type UseSceneTextEditReturn, type UseSceneTrivialOptions, type UseSelectToolOptions, type UseSelectionOptions, UseSimulationOptions, type UseStandardActionsOptions, type UseStarToolOptions, type UseTextEditOptions, type UseTextEditReturn, type UseToolsOptions, VERSION, type VelocityTracker, VertexColorChannel, ViewAnimationOptions, ViewApi, type ViewRect, type ViewResolver, type ViewTarget, type ViewTransform, ViewportDims, type ViewportLayer, type ViewportToolDef, type ViewportZoomAnimateOptions, type ViewportZoomOptions, type VisibilityRules, type VisibleRaf, type VisibleRafOptions, type VisibleRafTarget, WHEEL_ZOOM_STEP, WeaselProvider, type WheelInput, type WheelPanOptions, type WheelPanOpts, ZOOM_FLOOR, type ZoomBound, type ZoomClampOpts, type ZoomFactor, _resetMarkersForTests, _resetPaintKindsForTests, actionIs, actionShortcuts, alignDeltaFor, alignInsertBehavior, alignMoveBehavior, alignResizeBehavior, always, and, animateLifecycle, animateOnSetPose, annulusSemiAxes, applyOpsTo, applyStyleToRange, areaSelectAction, arrayAdapter, asPaint, axisAlignedBounds, bakeMesh, bezierCubic, bezierQuadratic, bindRig, blendPoses, boundsOfPath, buildChromeCtx, buildSceneViewCommands, canBringForward, canHover, canSendBackward, capabilityAll, capabilityIn, capabilityIs, capabilityNot, caretIndexAt, cellAt, centerRootOn, charOffsetToDomPosition, circlePath, clampView, clearSelectionAction, clipboardCopyAction, clipboardCutAction, clipboardPasteAction, cloneAction, coarsePointer, composeAffordanceLayer, composePath, composeSelectionPose, computeFitView, computeFitViewport, computeIndicatorCommand, computeWheelAction, cond, constrainTo45, containedThenNearest, cornerWeights, countPathAnchors, createCellHighlightLayer, createChildrenLayer, createCornerResizeAffordance, createDebugOverlayLayer, createDebugSink, createDeleteOp, createGridLayer, createGuidesLayer, createHistory, createInsertOp, createKeyState, createLinkedCursorContribution, createMinimapContribution, createMoveToIndexOp, createNodeProperties, createNodeRouting, createPaintedCursorLayer, createParallaxLayer, createPathAnchorAffordances, createPathEditingOverlayLayer, createPathLayer, createPenPreviewLayer, createPoseFeed, createPoseOverrides, createReorderOp, createReparentOp, createRotationAffordance, createScene, createSelectionHandlesLayer, createSelectionOutlineLayer, createSelectionOverlayLayer, createSetDataOp, createSetLayerOp, createSetPathOp, createSetSelectionOp, createSetTextOp, createSlew, createTextLayer, createTilePattern, createTiledLayer, createTransformOp, createVelocityTracker, createViewResolver, createViewportLayer, crosshairRects, cycleFill, cycleVertexColors, decomposePath, defaultCommitAdapter, defaultDrawOne, defaultLabelTextRenderer, defaultNodeProperties, defaultNodeRouting, defaultVisibilityRules, defineTool, defineViewportTool, definesFrame, deriveAlignmentGuides, deriveParallaxView, derivedDepOf, derivedPose, dispatchApplyBatch, dlog, documentPose, domPositionToCharOffset, domToRuns, drawLayers, drawOneLayer, dwarn, editAnchorsAction, effectivePose, effectiveRangeStyle, enterTextEditAction, enumerateAnchors, evalPatch, fillInPoseFrame, fillToBoundsFrame, findNodeShape, findShapeInk, findShapeSilhouette, fitTextPose, fitToBounds, fitZoom, flattenPreviews, focused, forEachCoalesced, freeform, gateLayer, gesturing, getAlpha01, getImageBitmap, getMarker, getNodeShapes, getPaintKind, getStylusData, gradientForBounds, gradientGeometry, guideSnapStrategy, hexToRgba, hitAffordanceRegions, hitAnchor, hitRotationHandle, hostAnchorCss, hostAnchorRect, hovering, hoveringSelected, imageStatus, inferredNodeProperties, inferredNodeRouting, insertAction, insertPreviewExtent, interpolateView, isBuiltinToolPref, isDebugEnabled, isGradientFill, isLayerPainted, isLayerVisible, isMeshGradientFill, isPatternSpec, isTensorPatch, isValidPatch, isVectorImageSrc, keySpecShortcut, lassoSelectAction, listMarkers, listPaintKinds, makePinchZoomAction, makeViewportWheelPanAction, makeViewportZoomAction, markerDrawCommands, markerInset, markerKeyOf, markerSites, matchAlignment, meanScale, mergeAlphaFromPrev, mergeContributions, meshBounds, meshGradientXml, minimapCenterAction, minimapPanAction, modeIn, modeIs, modeNot, modifierHeld, momentum, moveAction, multiActive, nearest, nearestWithin, nestedHitTester, never, nodeHasFlag, none, normalizeHex, normalizeView, normalizeZoom, not, nurbs, openFilePicker, or, paintAlpha, paintKindOf, paintWithAlpha, paintWithColor, parseColor, parseColorToRgba255, parseDebugFlags, patchBounds, patchCorner, pathContainsPoint, pathContainsPolygon, pathContainsRect, pathDistanceToPoint, pathDivide, pathExclude, pathFromD, pathInPoseFrame, pathInWorld, pathIntersect, pathIntersectsPolygon, pathIntersectsRect, pathOriginProjection, pathPoseDescriptor, pathSubtract, pathToAnchors, pathUnion, pickTopMostHit, pinchZoomAction, planPixelRender, pointInPath, pointInTextPose, poseRotationOf, prefUnit, pressureToWidth, pxExtent, rainbowVertexColors, rebuildOp, rectMarkerPath, registerMarker, registerNodeShape, registerOpFactory, registerPaintKind, registeredOpNames, renderLabel, renderSceneToCanvas, renderSceneToPixels, resizeAction, resolveColor, resolveFillPattern, resolveMarkerSize, resolveOverlays, resolvePatternSpec, resolvePreviews, resolveSkeleton, resolveVisibility, rgbaToHex, rigidRigApply, rotateAction, rotateAroundAABBCenter, rotatePathAround, rotationDegreesUnit, rotationHandle, roundRectPath, roundToCell, runsToDom, sampleGradientStops, sampleTrack, scaleDelta, scalePathToBounds, sceneFromJSON, sceneNodeClientRect, sceneSelectionStore, sceneToAdapter, screenToWorld, seedMeshPatch, selectFromLasso, selectionAtLeast, selectionEmpty, selectionIs, setFlagOverRange, shapeCoversPoint, slewToward, sliceAction, snap, snapPoint, solid, solidVertexColors, spiro, splitPathByLine, splitSubpaths, springPose, springVertexColors, squarePath, staggerVertexColors, startThresholdDrag, strokeInsets, strokeOf, strokeWith, styleAtRange, subscribeImageReady, textCommand, textCommandFromPose, textCommandFromRuns, tileGrid, tiledProject, toHex8, transformPath, translatePath, trimPolyline, tweenPose, tweenVertexColors, unionAABB, unionBounds, unionBoundsPath, unionOfChildren, unionOfChildrenVia, useAlign, useAnimator, useArrayAdapter, useAutoCenter, useBooleans, useBooleansAdapter, useCanvasFocus, useCanvasSize, useDeviceProfile, useDistribute, useDragGesture, useDragHandle, useDragRadial, useDragRect, useDropZone, useEllipseTool, useEyedropperTool, useGridCellHover, useGuides, useHandTool, useHandleDrag, useHostAnchor, useHoverTracking, useImageTool, useKeyState, useKeybindings, useLassoTool, useLineTool, useNodeOverlayFrame, usePenTool, usePencilTool, usePinchGesture, usePointerStylus, usePolygonTool, usePoseCompositionDepSource, usePoseDescriptorDepSource, usePoseRun, usePublishSelection, useRectTool, useResizePolicy, useRig, useScene, useSceneAdapter, useSceneTextEdit, useSelectTool, useSelection, useSelectionContext, useSimulation, useSliceDep, useStandardActions, useStarTool, useTextEdit, useTextTool, useTools, useVelocityTracker, useVisibleRaf, viewToTransform, viewZoom, viewportDragPanAction, viewportWheelPanAction, viewportZoomAction, viewportsAt, wheelPan, wheelZoom, wheelZoomFactor, when, withAlpha01, withCoord, withGradientKind, withinPxBox, withinPxRadius, worldEditToStorage, worldToScreen, zoomAt, zoomAtLeast };
|