@oh-just-another/react-ui 0.61.0 → 0.63.0
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 +132 -0
- package/README.md +3 -3
- package/dist/.tsbuildinfo +1 -1
- package/dist/color/color-palette.d.ts.map +1 -0
- package/dist/color/color-palette.js.map +1 -0
- package/dist/color/color-swatch-picker.d.ts.map +1 -0
- package/dist/{color-swatch-picker.js → color/color-swatch-picker.js} +4 -3
- package/dist/color/color-swatch-picker.js.map +1 -0
- package/dist/{constants.d.ts → core/constants.d.ts} +66 -14
- package/dist/core/constants.d.ts.map +1 -0
- package/dist/{constants.js → core/constants.js} +99 -14
- package/dist/core/constants.js.map +1 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/hooks.d.ts.map +1 -0
- package/dist/core/hooks.js.map +1 -0
- package/dist/core/portal-container.d.ts.map +1 -0
- package/dist/core/portal-container.js.map +1 -0
- package/dist/core/use-fullscreen.d.ts +14 -0
- package/dist/core/use-fullscreen.d.ts.map +1 -0
- package/dist/core/use-fullscreen.js +38 -0
- package/dist/core/use-fullscreen.js.map +1 -0
- package/dist/core/use-quiet-gesture.d.ts +11 -0
- package/dist/core/use-quiet-gesture.d.ts.map +1 -0
- package/dist/core/use-quiet-gesture.js +61 -0
- package/dist/core/use-quiet-gesture.js.map +1 -0
- package/dist/core/use-quiet-viewport.d.ts +10 -0
- package/dist/core/use-quiet-viewport.d.ts.map +1 -0
- package/dist/core/use-quiet-viewport.js +40 -0
- package/dist/core/use-quiet-viewport.js.map +1 -0
- package/dist/index.d.ts +55 -50
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +55 -50
- package/dist/index.js.map +1 -1
- package/dist/layout/diagram-bars.d.ts.map +1 -0
- package/dist/layout/diagram-bars.js.map +1 -0
- package/dist/layout/diagram-canvas.d.ts.map +1 -0
- package/dist/layout/diagram-canvas.js.map +1 -0
- package/dist/layout/diagram-root.d.ts.map +1 -0
- package/dist/{diagram-root.js → layout/diagram-root.js} +2 -2
- package/dist/layout/diagram-root.js.map +1 -0
- package/dist/{sidebar.d.ts → layout/sidebar.d.ts} +1 -0
- package/dist/layout/sidebar.d.ts.map +1 -0
- package/dist/layout/sidebar.js +38 -0
- package/dist/layout/sidebar.js.map +1 -0
- package/dist/layout/ui-layer.d.ts.map +1 -0
- package/dist/layout/ui-layer.js.map +1 -0
- package/dist/menus/command-palette.d.ts.map +1 -0
- package/dist/{command-palette.js → menus/command-palette.js} +2 -2
- package/dist/menus/command-palette.js.map +1 -0
- package/dist/menus/context-menu-controller.d.ts.map +1 -0
- package/dist/menus/context-menu-controller.js.map +1 -0
- package/dist/{context-menu.d.ts → menus/context-menu.d.ts} +12 -0
- package/dist/menus/context-menu.d.ts.map +1 -0
- package/dist/menus/context-menu.js +617 -0
- package/dist/menus/context-menu.js.map +1 -0
- package/dist/menus/link-drop-shape-menu.d.ts.map +1 -0
- package/dist/{link-drop-shape-menu.js → menus/link-drop-shape-menu.js} +4 -4
- package/dist/menus/link-drop-shape-menu.js.map +1 -0
- package/dist/{main-menu.d.ts → menus/main-menu.d.ts} +45 -2
- package/dist/menus/main-menu.d.ts.map +1 -0
- package/dist/menus/main-menu.js +260 -0
- package/dist/menus/main-menu.js.map +1 -0
- package/dist/overlays/file-drop-overlay.d.ts +15 -0
- package/dist/overlays/file-drop-overlay.d.ts.map +1 -0
- package/dist/overlays/file-drop-overlay.js +27 -0
- package/dist/overlays/file-drop-overlay.js.map +1 -0
- package/dist/overlays/frame-name-editor-overlay.d.ts.map +1 -0
- package/dist/{frame-name-editor-overlay.js → overlays/frame-name-editor-overlay.js} +1 -1
- package/dist/overlays/frame-name-editor-overlay.js.map +1 -0
- package/dist/overlays/help-button.d.ts.map +1 -0
- package/dist/{help-button.js → overlays/help-button.js} +3 -4
- package/dist/overlays/help-button.js.map +1 -0
- package/dist/overlays/help-dialog.d.ts.map +1 -0
- package/dist/{help-dialog.js → overlays/help-dialog.js} +4 -24
- package/dist/overlays/help-dialog.js.map +1 -0
- package/dist/overlays/link-badges.d.ts +14 -0
- package/dist/overlays/link-badges.d.ts.map +1 -0
- package/dist/overlays/link-badges.js +60 -0
- package/dist/overlays/link-badges.js.map +1 -0
- package/dist/overlays/link-caption-editor.d.ts.map +1 -0
- package/dist/{link-caption-editor.js → overlays/link-caption-editor.js} +3 -3
- package/dist/overlays/link-caption-editor.js.map +1 -0
- package/dist/overlays/link-hover-popup.d.ts.map +1 -0
- package/dist/{link-hover-popup.js → overlays/link-hover-popup.js} +5 -4
- package/dist/overlays/link-hover-popup.js.map +1 -0
- package/dist/overlays/merge-dialog.d.ts.map +1 -0
- package/dist/overlays/merge-dialog.js +39 -0
- package/dist/overlays/merge-dialog.js.map +1 -0
- package/dist/overlays/search-overlay.d.ts.map +1 -0
- package/dist/{search-overlay.js → overlays/search-overlay.js} +2 -2
- package/dist/overlays/search-overlay.js.map +1 -0
- package/dist/overlays/sticky-reactions.d.ts +2 -0
- package/dist/overlays/sticky-reactions.d.ts.map +1 -0
- package/dist/overlays/sticky-reactions.js +94 -0
- package/dist/overlays/sticky-reactions.js.map +1 -0
- package/dist/overlays/text-editor-overlay.d.ts.map +1 -0
- package/dist/{text-editor-overlay.js → overlays/text-editor-overlay.js} +37 -5
- package/dist/overlays/text-editor-overlay.js.map +1 -0
- package/dist/{comments-panel.d.ts → panels/comments-panel.d.ts} +4 -1
- package/dist/panels/comments-panel.d.ts.map +1 -0
- package/dist/panels/comments-panel.js +51 -0
- package/dist/panels/comments-panel.js.map +1 -0
- package/dist/panels/control-sets.d.ts +42 -0
- package/dist/panels/control-sets.d.ts.map +1 -0
- package/dist/panels/control-sets.js +63 -0
- package/dist/panels/control-sets.js.map +1 -0
- package/dist/panels/diff-panel.d.ts.map +1 -0
- package/dist/panels/diff-panel.js.map +1 -0
- package/dist/panels/drawing-panel.d.ts.map +1 -0
- package/dist/{drawing-panel.js → panels/drawing-panel.js} +3 -3
- package/dist/panels/drawing-panel.js.map +1 -0
- package/dist/panels/edge-style-panel.d.ts.map +1 -0
- package/dist/{edge-style-panel.js → panels/edge-style-panel.js} +1 -1
- package/dist/panels/edge-style-panel.js.map +1 -0
- package/dist/panels/frame-panel.d.ts.map +1 -0
- package/dist/{frame-panel.js → panels/frame-panel.js} +1 -1
- package/dist/panels/frame-panel.js.map +1 -0
- package/dist/{layer-panel.d.ts → panels/layer-panel.d.ts} +5 -1
- package/dist/panels/layer-panel.d.ts.map +1 -0
- package/dist/panels/layer-panel.js +52 -0
- package/dist/panels/layer-panel.js.map +1 -0
- package/dist/panels/library-panel.d.ts.map +1 -0
- package/dist/{library-panel.js → panels/library-panel.js} +4 -5
- package/dist/panels/library-panel.js.map +1 -0
- package/dist/panels/property-panel.d.ts.map +1 -0
- package/dist/panels/property-panel.js +1492 -0
- package/dist/panels/property-panel.js.map +1 -0
- package/dist/panels/selection-floating-panel.d.ts.map +1 -0
- package/dist/{selection-floating-panel.js → panels/selection-floating-panel.js} +24 -13
- package/dist/panels/selection-floating-panel.js.map +1 -0
- package/dist/panels/stats-panel.d.ts.map +1 -0
- package/dist/{stats-panel.js → panels/stats-panel.js} +1 -1
- package/dist/panels/stats-panel.js.map +1 -0
- package/dist/primitives/bottom-sheet.d.ts.map +1 -0
- package/dist/{bottom-sheet.js → primitives/bottom-sheet.js} +9 -22
- package/dist/primitives/bottom-sheet.js.map +1 -0
- package/dist/primitives/button-group.d.ts.map +1 -0
- package/dist/primitives/button-group.js.map +1 -0
- package/dist/primitives/css-var.d.ts +8 -0
- package/dist/primitives/css-var.d.ts.map +1 -0
- package/dist/primitives/css-var.js +11 -0
- package/dist/primitives/css-var.js.map +1 -0
- package/dist/primitives/float-panel.d.ts +35 -0
- package/dist/primitives/float-panel.d.ts.map +1 -0
- package/dist/primitives/float-panel.js +42 -0
- package/dist/primitives/float-panel.js.map +1 -0
- package/dist/primitives/icon-button.d.ts.map +1 -0
- package/dist/primitives/icon-button.js.map +1 -0
- package/dist/primitives/markdown.d.ts.map +1 -0
- package/dist/primitives/markdown.js.map +1 -0
- package/dist/primitives/modal.d.ts.map +1 -0
- package/dist/{modal.js → primitives/modal.js} +11 -9
- package/dist/primitives/modal.js.map +1 -0
- package/dist/{popover.d.ts → primitives/popover.d.ts} +1 -1
- package/dist/primitives/popover.d.ts.map +1 -0
- package/dist/{popover.js → primitives/popover.js} +7 -18
- package/dist/primitives/popover.js.map +1 -0
- package/dist/primitives/segmented-control.d.ts.map +1 -0
- package/dist/primitives/segmented-control.js.map +1 -0
- package/dist/primitives/slider.d.ts.map +1 -0
- package/dist/primitives/slider.js.map +1 -0
- package/dist/primitives/switch.d.ts +24 -0
- package/dist/primitives/switch.d.ts.map +1 -0
- package/dist/primitives/switch.js +17 -0
- package/dist/primitives/switch.js.map +1 -0
- package/dist/primitives/toast.d.ts.map +1 -0
- package/dist/{toast.js → primitives/toast.js} +12 -33
- package/dist/primitives/toast.js.map +1 -0
- package/dist/primitives/tooltip.d.ts.map +1 -0
- package/dist/{tooltip.js → primitives/tooltip.js} +3 -3
- package/dist/primitives/tooltip.js.map +1 -0
- package/dist/{palette.d.ts → toolbar/palette.d.ts} +6 -1
- package/dist/toolbar/palette.d.ts.map +1 -0
- package/dist/{palette.js → toolbar/palette.js} +39 -5
- package/dist/toolbar/palette.js.map +1 -0
- package/dist/{toolbar.d.ts → toolbar/toolbar.d.ts} +9 -0
- package/dist/toolbar/toolbar.d.ts.map +1 -0
- package/dist/{toolbar.js → toolbar/toolbar.js} +132 -62
- package/dist/toolbar/toolbar.js.map +1 -0
- package/dist/utils/format-time.d.ts.map +1 -0
- package/dist/utils/format-time.js.map +1 -0
- package/dist/utils/use-dismiss-timer.d.ts.map +1 -0
- package/dist/utils/use-dismiss-timer.js.map +1 -0
- package/dist/widgets/minimap.d.ts.map +1 -0
- package/dist/{minimap.js → widgets/minimap.js} +50 -36
- package/dist/widgets/minimap.js.map +1 -0
- package/dist/widgets/reset-to-content-button.d.ts +11 -0
- package/dist/widgets/reset-to-content-button.d.ts.map +1 -0
- package/dist/{reset-to-content-button.js → widgets/reset-to-content-button.js} +8 -9
- package/dist/widgets/reset-to-content-button.js.map +1 -0
- package/dist/widgets/versioning.d.ts.map +1 -0
- package/dist/{versioning.js → widgets/versioning.js} +3 -3
- package/dist/widgets/versioning.js.map +1 -0
- package/dist/widgets/zen-mode.d.ts.map +1 -0
- package/dist/widgets/zen-mode.js.map +1 -0
- package/package.json +9 -9
- package/src/styles.css +1596 -258
- package/dist/bottom-sheet.d.ts.map +0 -1
- package/dist/bottom-sheet.js.map +0 -1
- package/dist/button-group.d.ts.map +0 -1
- package/dist/button-group.js.map +0 -1
- package/dist/color-palette.d.ts.map +0 -1
- package/dist/color-palette.js.map +0 -1
- package/dist/color-swatch-picker.d.ts.map +0 -1
- package/dist/color-swatch-picker.js.map +0 -1
- package/dist/command-palette.d.ts.map +0 -1
- package/dist/command-palette.js.map +0 -1
- package/dist/comments-panel.d.ts.map +0 -1
- package/dist/comments-panel.js +0 -142
- package/dist/comments-panel.js.map +0 -1
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js.map +0 -1
- package/dist/context-menu-controller.d.ts.map +0 -1
- package/dist/context-menu-controller.js.map +0 -1
- package/dist/context-menu.d.ts.map +0 -1
- package/dist/context-menu.js +0 -368
- package/dist/context-menu.js.map +0 -1
- package/dist/context.d.ts.map +0 -1
- package/dist/context.js.map +0 -1
- package/dist/diagram-bars.d.ts.map +0 -1
- package/dist/diagram-bars.js.map +0 -1
- package/dist/diagram-canvas.d.ts.map +0 -1
- package/dist/diagram-canvas.js.map +0 -1
- package/dist/diagram-root.d.ts.map +0 -1
- package/dist/diagram-root.js.map +0 -1
- package/dist/diff-panel.d.ts.map +0 -1
- package/dist/diff-panel.js.map +0 -1
- package/dist/drawing-panel.d.ts.map +0 -1
- package/dist/drawing-panel.js.map +0 -1
- package/dist/edge-style-panel.d.ts.map +0 -1
- package/dist/edge-style-panel.js.map +0 -1
- package/dist/format-time.d.ts.map +0 -1
- package/dist/format-time.js.map +0 -1
- package/dist/frame-name-editor-overlay.d.ts.map +0 -1
- package/dist/frame-name-editor-overlay.js.map +0 -1
- package/dist/frame-panel.d.ts.map +0 -1
- package/dist/frame-panel.js.map +0 -1
- package/dist/help-button.d.ts.map +0 -1
- package/dist/help-button.js.map +0 -1
- package/dist/help-dialog.d.ts.map +0 -1
- package/dist/help-dialog.js.map +0 -1
- package/dist/hooks.d.ts.map +0 -1
- package/dist/hooks.js.map +0 -1
- package/dist/icon-button.d.ts.map +0 -1
- package/dist/icon-button.js.map +0 -1
- package/dist/layer-panel.d.ts.map +0 -1
- package/dist/layer-panel.js +0 -117
- package/dist/layer-panel.js.map +0 -1
- package/dist/library-panel.d.ts.map +0 -1
- package/dist/library-panel.js.map +0 -1
- package/dist/link-caption-editor.d.ts.map +0 -1
- package/dist/link-caption-editor.js.map +0 -1
- package/dist/link-drop-shape-menu.d.ts.map +0 -1
- package/dist/link-drop-shape-menu.js.map +0 -1
- package/dist/link-hover-popup.d.ts.map +0 -1
- package/dist/link-hover-popup.js.map +0 -1
- package/dist/main-menu.d.ts.map +0 -1
- package/dist/main-menu.js +0 -249
- package/dist/main-menu.js.map +0 -1
- package/dist/markdown.d.ts.map +0 -1
- package/dist/markdown.js.map +0 -1
- package/dist/merge-dialog.d.ts.map +0 -1
- package/dist/merge-dialog.js +0 -50
- package/dist/merge-dialog.js.map +0 -1
- package/dist/minimap.d.ts.map +0 -1
- package/dist/minimap.js.map +0 -1
- package/dist/modal.d.ts.map +0 -1
- package/dist/modal.js.map +0 -1
- package/dist/palette.d.ts.map +0 -1
- package/dist/palette.js.map +0 -1
- package/dist/popover.d.ts.map +0 -1
- package/dist/popover.js.map +0 -1
- package/dist/portal-container.d.ts.map +0 -1
- package/dist/portal-container.js.map +0 -1
- package/dist/property-panel.d.ts.map +0 -1
- package/dist/property-panel.js +0 -917
- package/dist/property-panel.js.map +0 -1
- package/dist/reset-to-content-button.d.ts +0 -10
- package/dist/reset-to-content-button.d.ts.map +0 -1
- package/dist/reset-to-content-button.js.map +0 -1
- package/dist/search-overlay.d.ts.map +0 -1
- package/dist/search-overlay.js.map +0 -1
- package/dist/segmented-control.d.ts.map +0 -1
- package/dist/segmented-control.js.map +0 -1
- package/dist/selection-floating-panel.d.ts.map +0 -1
- package/dist/selection-floating-panel.js.map +0 -1
- package/dist/sidebar.d.ts.map +0 -1
- package/dist/sidebar.js +0 -68
- package/dist/sidebar.js.map +0 -1
- package/dist/slider.d.ts.map +0 -1
- package/dist/slider.js.map +0 -1
- package/dist/stats-panel.d.ts.map +0 -1
- package/dist/stats-panel.js.map +0 -1
- package/dist/text-editor-overlay.d.ts.map +0 -1
- package/dist/text-editor-overlay.js.map +0 -1
- package/dist/toast.d.ts.map +0 -1
- package/dist/toast.js.map +0 -1
- package/dist/toolbar.d.ts.map +0 -1
- package/dist/toolbar.js.map +0 -1
- package/dist/tooltip.d.ts.map +0 -1
- package/dist/tooltip.js.map +0 -1
- package/dist/ui-layer.d.ts.map +0 -1
- package/dist/ui-layer.js.map +0 -1
- package/dist/use-dismiss-timer.d.ts.map +0 -1
- package/dist/use-dismiss-timer.js.map +0 -1
- package/dist/versioning.d.ts.map +0 -1
- package/dist/versioning.js.map +0 -1
- package/dist/zen-mode.d.ts.map +0 -1
- package/dist/zen-mode.js.map +0 -1
- /package/dist/{color-palette.d.ts → color/color-palette.d.ts} +0 -0
- /package/dist/{color-palette.js → color/color-palette.js} +0 -0
- /package/dist/{color-swatch-picker.d.ts → color/color-swatch-picker.d.ts} +0 -0
- /package/dist/{context.d.ts → core/context.d.ts} +0 -0
- /package/dist/{context.js → core/context.js} +0 -0
- /package/dist/{hooks.d.ts → core/hooks.d.ts} +0 -0
- /package/dist/{hooks.js → core/hooks.js} +0 -0
- /package/dist/{portal-container.d.ts → core/portal-container.d.ts} +0 -0
- /package/dist/{portal-container.js → core/portal-container.js} +0 -0
- /package/dist/{diagram-bars.d.ts → layout/diagram-bars.d.ts} +0 -0
- /package/dist/{diagram-bars.js → layout/diagram-bars.js} +0 -0
- /package/dist/{diagram-canvas.d.ts → layout/diagram-canvas.d.ts} +0 -0
- /package/dist/{diagram-canvas.js → layout/diagram-canvas.js} +0 -0
- /package/dist/{diagram-root.d.ts → layout/diagram-root.d.ts} +0 -0
- /package/dist/{ui-layer.d.ts → layout/ui-layer.d.ts} +0 -0
- /package/dist/{ui-layer.js → layout/ui-layer.js} +0 -0
- /package/dist/{command-palette.d.ts → menus/command-palette.d.ts} +0 -0
- /package/dist/{context-menu-controller.d.ts → menus/context-menu-controller.d.ts} +0 -0
- /package/dist/{context-menu-controller.js → menus/context-menu-controller.js} +0 -0
- /package/dist/{link-drop-shape-menu.d.ts → menus/link-drop-shape-menu.d.ts} +0 -0
- /package/dist/{frame-name-editor-overlay.d.ts → overlays/frame-name-editor-overlay.d.ts} +0 -0
- /package/dist/{help-button.d.ts → overlays/help-button.d.ts} +0 -0
- /package/dist/{help-dialog.d.ts → overlays/help-dialog.d.ts} +0 -0
- /package/dist/{link-caption-editor.d.ts → overlays/link-caption-editor.d.ts} +0 -0
- /package/dist/{link-hover-popup.d.ts → overlays/link-hover-popup.d.ts} +0 -0
- /package/dist/{merge-dialog.d.ts → overlays/merge-dialog.d.ts} +0 -0
- /package/dist/{search-overlay.d.ts → overlays/search-overlay.d.ts} +0 -0
- /package/dist/{text-editor-overlay.d.ts → overlays/text-editor-overlay.d.ts} +0 -0
- /package/dist/{diff-panel.d.ts → panels/diff-panel.d.ts} +0 -0
- /package/dist/{diff-panel.js → panels/diff-panel.js} +0 -0
- /package/dist/{drawing-panel.d.ts → panels/drawing-panel.d.ts} +0 -0
- /package/dist/{edge-style-panel.d.ts → panels/edge-style-panel.d.ts} +0 -0
- /package/dist/{frame-panel.d.ts → panels/frame-panel.d.ts} +0 -0
- /package/dist/{library-panel.d.ts → panels/library-panel.d.ts} +0 -0
- /package/dist/{property-panel.d.ts → panels/property-panel.d.ts} +0 -0
- /package/dist/{selection-floating-panel.d.ts → panels/selection-floating-panel.d.ts} +0 -0
- /package/dist/{stats-panel.d.ts → panels/stats-panel.d.ts} +0 -0
- /package/dist/{bottom-sheet.d.ts → primitives/bottom-sheet.d.ts} +0 -0
- /package/dist/{button-group.d.ts → primitives/button-group.d.ts} +0 -0
- /package/dist/{button-group.js → primitives/button-group.js} +0 -0
- /package/dist/{icon-button.d.ts → primitives/icon-button.d.ts} +0 -0
- /package/dist/{icon-button.js → primitives/icon-button.js} +0 -0
- /package/dist/{markdown.d.ts → primitives/markdown.d.ts} +0 -0
- /package/dist/{markdown.js → primitives/markdown.js} +0 -0
- /package/dist/{modal.d.ts → primitives/modal.d.ts} +0 -0
- /package/dist/{segmented-control.d.ts → primitives/segmented-control.d.ts} +0 -0
- /package/dist/{segmented-control.js → primitives/segmented-control.js} +0 -0
- /package/dist/{slider.d.ts → primitives/slider.d.ts} +0 -0
- /package/dist/{slider.js → primitives/slider.js} +0 -0
- /package/dist/{toast.d.ts → primitives/toast.d.ts} +0 -0
- /package/dist/{tooltip.d.ts → primitives/tooltip.d.ts} +0 -0
- /package/dist/{format-time.d.ts → utils/format-time.d.ts} +0 -0
- /package/dist/{format-time.js → utils/format-time.js} +0 -0
- /package/dist/{use-dismiss-timer.d.ts → utils/use-dismiss-timer.d.ts} +0 -0
- /package/dist/{use-dismiss-timer.js → utils/use-dismiss-timer.js} +0 -0
- /package/dist/{minimap.d.ts → widgets/minimap.d.ts} +0 -0
- /package/dist/{versioning.d.ts → widgets/versioning.d.ts} +0 -0
- /package/dist/{zen-mode.d.ts → widgets/zen-mode.d.ts} +0 -0
- /package/dist/{zen-mode.js → widgets/zen-mode.js} +0 -0
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useEffect, useState } from "react";
|
|
3
|
-
import { Circle, Eraser, Frame, Hand, Image as ImageIcon, Lock, MousePointer2, PenLine, Radio, Redo2, Slash, Square, Type, Undo2, } from "lucide-react";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useRef, useState, } from "react";
|
|
3
|
+
import { ArrowUpRight, Circle, CornerUpRight, Diamond, Eraser, Frame, Hand, Image as ImageIcon, Lock, MousePointer2, PenLine, Radio, Redo2, Shapes, Slash, Square, Triangle, Type, Undo2, } from "lucide-react";
|
|
4
4
|
import { defaultActionRegistry, formatHotkey } from "@oh-just-another/state";
|
|
5
|
-
import { useEditorSelector } from "
|
|
6
|
-
import { useActiveTool, useDiagramOptional, useHistory, useReadOnly } from "
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
/**
|
|
10
|
-
|
|
11
|
-
* inside-group footprint). Lucide draws crisp at 16 px stroke-width
|
|
12
|
-
* 1.75.
|
|
13
|
-
*/
|
|
14
|
-
const TOOLBAR_ICON_SIZE = 16;
|
|
15
|
-
const TOOLBAR_ICON_STROKE = 1.75;
|
|
16
|
-
const iconProps = { size: TOOLBAR_ICON_SIZE, strokeWidth: TOOLBAR_ICON_STROKE };
|
|
5
|
+
import { useEditorSelector } from "../core/context.js";
|
|
6
|
+
import { useActiveTool, useDiagramOptional, useHistory, useReadOnly } from "../core/hooks.js";
|
|
7
|
+
import { Tooltip } from "../primitives/tooltip.js";
|
|
8
|
+
import { CONTROL_ICON, ROW_ICON } from "../core/constants.js";
|
|
9
|
+
/** Toolbar buttons are 40-px controls — their glyphs use `CONTROL_ICON`. */
|
|
10
|
+
const iconProps = CONTROL_ICON;
|
|
17
11
|
/**
|
|
18
12
|
* Maps an action's serializable `iconId` (declared in core, no React) to a
|
|
19
13
|
* concrete lucide icon, so a registry-driven `action-ref` button renders
|
|
@@ -45,24 +39,38 @@ const ACTION_ICONS = {
|
|
|
45
39
|
*/
|
|
46
40
|
const ActionRefButton = ({ id }) => {
|
|
47
41
|
const editor = useDiagramOptional();
|
|
48
|
-
|
|
42
|
+
// Derive the two live bits (pressed / disabled) inside the change
|
|
43
|
+
// handler and re-render ONLY when one of them flips — a plain
|
|
44
|
+
// force-render here made every toolbar button re-render on every
|
|
45
|
+
// frame of an element drag.
|
|
46
|
+
const derive = useCallback(() => {
|
|
47
|
+
const action = defaultActionRegistry.get(id);
|
|
48
|
+
if (!action || !editor)
|
|
49
|
+
return { active: false, enabled: false };
|
|
50
|
+
const ctx = { editor };
|
|
51
|
+
const active = action.checked?.(ctx) ?? false;
|
|
52
|
+
// Read-only gate: creating / mutating actions (no `viewMode`) disable
|
|
53
|
+
// themselves in view mode, matching the registry's dispatch gate.
|
|
54
|
+
const viewGated = editor.readOnly && action.viewMode !== true;
|
|
55
|
+
const enabled = !viewGated && (action.predicate ? action.predicate(ctx) : true);
|
|
56
|
+
return { active, enabled };
|
|
57
|
+
}, [editor, id]);
|
|
58
|
+
const [live, setLive] = useState(derive);
|
|
49
59
|
useEffect(() => {
|
|
50
60
|
if (!editor)
|
|
51
61
|
return undefined;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
62
|
+
const update = () => {
|
|
63
|
+
const next = derive();
|
|
64
|
+
setLive((prev) => prev.active === next.active && prev.enabled === next.enabled ? prev : next);
|
|
65
|
+
};
|
|
66
|
+
update();
|
|
67
|
+
return editor.on("change", update);
|
|
68
|
+
}, [editor, derive]);
|
|
56
69
|
const action = defaultActionRegistry.get(id);
|
|
57
70
|
if (!action)
|
|
58
71
|
return null;
|
|
59
72
|
const Icon = action.iconId ? ACTION_ICONS[action.iconId] : undefined;
|
|
60
|
-
const
|
|
61
|
-
const active = ctx ? (action.checked?.(ctx) ?? false) : false;
|
|
62
|
-
// Read-only gate: creating / mutating actions (no `viewMode`) disable
|
|
63
|
-
// themselves in view mode, matching the registry's dispatch gate.
|
|
64
|
-
const viewGated = !!editor?.readOnly && action.viewMode !== true;
|
|
65
|
-
const enabled = ctx && !viewGated ? (action.predicate ? action.predicate(ctx) : true) : false;
|
|
73
|
+
const { active, enabled } = live;
|
|
66
74
|
const matchers = action.hotkey === undefined
|
|
67
75
|
? []
|
|
68
76
|
: Array.isArray(action.hotkey)
|
|
@@ -75,6 +83,94 @@ const ActionRefButton = ({ id }) => {
|
|
|
75
83
|
defaultActionRegistry.dispatch(id, { editor });
|
|
76
84
|
}, children: Icon ? _jsx(Icon, { ...iconProps }) : (action.label ?? id) }));
|
|
77
85
|
};
|
|
86
|
+
/**
|
|
87
|
+
* Rows of the "Shapes and lines" flyout (reference layout): line presets,
|
|
88
|
+
* then shape kinds, then "More shapes" opening the template library.
|
|
89
|
+
* Hotkey hints mirror the registered mode hotkeys (R / O arm the same
|
|
90
|
+
* tools; L arms the stock draw-edge, whose defaults equal the Elbow
|
|
91
|
+
* arrow preset).
|
|
92
|
+
*/
|
|
93
|
+
const SHAPES_FLYOUT_ROWS = [
|
|
94
|
+
{ kind: "line", preset: "line", label: "Line", icon: Slash },
|
|
95
|
+
{ kind: "line", preset: "arrow", label: "Arrow", icon: ArrowUpRight },
|
|
96
|
+
{ kind: "line", preset: "elbow", label: "Elbow arrow", icon: CornerUpRight, hotkey: "L" },
|
|
97
|
+
{ kind: "divider" },
|
|
98
|
+
{ kind: "shape", shape: "rect", label: "Rectangle", icon: Square, hotkey: "R" },
|
|
99
|
+
{ kind: "shape", shape: "ellipse", label: "Oval", icon: Circle, hotkey: "O" },
|
|
100
|
+
{ kind: "shape", shape: "diamond", label: "Rhombus", icon: Diamond },
|
|
101
|
+
{ kind: "shape", shape: "triangle", label: "Triangle", icon: Triangle },
|
|
102
|
+
];
|
|
103
|
+
/**
|
|
104
|
+
* "Shapes and lines" toolbar button (reference behaviour): opens a
|
|
105
|
+
* vertical flyout beside the toolbar with line presets and shape kinds —
|
|
106
|
+
* picking a row arms the corresponding drawing tool (`armLineTool` /
|
|
107
|
+
* `armShapeTool`) — plus a "More shapes" row that opens the host's
|
|
108
|
+
* template library. Closes on pick, outside click and Esc.
|
|
109
|
+
*/
|
|
110
|
+
const ShapesAndLinesButton = ({ vertical, onMoreShapes, }) => {
|
|
111
|
+
const editor = useDiagramOptional();
|
|
112
|
+
const activeTool = useActiveTool();
|
|
113
|
+
const readOnly = useReadOnly();
|
|
114
|
+
// Armed variants (which shape / which line preset) — the flyout marks the
|
|
115
|
+
// matching row as the current choice.
|
|
116
|
+
const drawShapeKind = useEditorSelector((e) => e.drawShapeKind, "rect");
|
|
117
|
+
const linkDrawPreset = useEditorSelector((e) => e.linkDrawPreset, null);
|
|
118
|
+
const [open, setOpen] = useState(false);
|
|
119
|
+
const ref = useRef(null);
|
|
120
|
+
const isRowActive = (row) => {
|
|
121
|
+
if (row.kind === "line") {
|
|
122
|
+
// Stock `draw-edge` (hotkey L, no preset) draws the Elbow arrow defaults.
|
|
123
|
+
return activeTool.type === "draw-edge" && (linkDrawPreset ?? "elbow") === row.preset;
|
|
124
|
+
}
|
|
125
|
+
if (row.kind === "shape") {
|
|
126
|
+
return ((activeTool.type === "draw-rect" || activeTool.type === "draw-ellipse") &&
|
|
127
|
+
drawShapeKind === row.shape);
|
|
128
|
+
}
|
|
129
|
+
return false;
|
|
130
|
+
};
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
if (!open)
|
|
133
|
+
return undefined;
|
|
134
|
+
const onDown = (ev) => {
|
|
135
|
+
if (ref.current?.contains(ev.target))
|
|
136
|
+
return;
|
|
137
|
+
setOpen(false);
|
|
138
|
+
};
|
|
139
|
+
const onKey = (ev) => {
|
|
140
|
+
if (ev.key === "Escape")
|
|
141
|
+
setOpen(false);
|
|
142
|
+
};
|
|
143
|
+
window.addEventListener("pointerdown", onDown);
|
|
144
|
+
window.addEventListener("keydown", onKey);
|
|
145
|
+
return () => {
|
|
146
|
+
window.removeEventListener("pointerdown", onDown);
|
|
147
|
+
window.removeEventListener("keydown", onKey);
|
|
148
|
+
};
|
|
149
|
+
}, [open]);
|
|
150
|
+
const toolActive = activeTool.type === "draw-rect" ||
|
|
151
|
+
activeTool.type === "draw-ellipse" ||
|
|
152
|
+
activeTool.type === "draw-edge";
|
|
153
|
+
return (_jsxs("div", { ref: ref, className: "du-shapes-wrap", style: { position: "relative", display: "inline-flex" }, children: [_jsx(ToolbarButton, { title: "Shapes and lines", disabled: !editor || readOnly, active: toolActive || open, onClick: () => {
|
|
154
|
+
setOpen((v) => !v);
|
|
155
|
+
}, children: _jsx(Shapes, { ...iconProps }) }), open ? (_jsxs("div", { className: "du-shapes-flyout", role: "menu", "aria-label": "Shapes and lines", style: vertical ? {} : { top: "calc(100% + var(--du-gap))", left: 0 }, children: [SHAPES_FLYOUT_ROWS.map((row, i) => {
|
|
156
|
+
if (row.kind === "divider")
|
|
157
|
+
return _jsx("hr", { className: "du-shapes-flyout-divider" }, i);
|
|
158
|
+
const Icon = row.icon;
|
|
159
|
+
const active = isRowActive(row);
|
|
160
|
+
return (_jsxs("button", { type: "button", role: "menuitemradio", "aria-checked": active, className: `du-shapes-flyout-row${active ? " is-active" : ""}`, "aria-label": row.label, onClick: () => {
|
|
161
|
+
if (!editor)
|
|
162
|
+
return;
|
|
163
|
+
if (row.kind === "line")
|
|
164
|
+
editor.armLineTool(row.preset);
|
|
165
|
+
else
|
|
166
|
+
editor.armShapeTool(row.shape);
|
|
167
|
+
setOpen(false);
|
|
168
|
+
}, children: [_jsx(Icon, { ...ROW_ICON }), _jsx("span", { children: row.label }), row.hotkey !== undefined ? (_jsx("span", { className: "du-shapes-flyout-hotkey", children: row.hotkey })) : null] }, i));
|
|
169
|
+
}), onMoreShapes ? (_jsxs(_Fragment, { children: [_jsx("hr", { className: "du-shapes-flyout-divider" }), _jsxs("button", { type: "button", role: "menuitem", className: "du-shapes-flyout-row", "aria-label": "More shapes", onClick: () => {
|
|
170
|
+
onMoreShapes();
|
|
171
|
+
setOpen(false);
|
|
172
|
+
}, children: [_jsx(Shapes, { ...ROW_ICON }), _jsx("span", { children: "More shapes" })] })] })) : null] })) : null] }));
|
|
173
|
+
};
|
|
78
174
|
/**
|
|
79
175
|
* Platform-correct zoom hotkey labels — ⌘ glyphs on macOS, "Ctrl+…"
|
|
80
176
|
* elsewhere. Descriptors mirror the bound zoom hotkeys; display uses the
|
|
@@ -127,10 +223,8 @@ export const openImageFilePicker = (editor) => {
|
|
|
127
223
|
export const DEFAULT_TOOLBAR = [
|
|
128
224
|
{ kind: "action-ref", id: "mode-select" },
|
|
129
225
|
{ kind: "action-ref", id: "mode-hand" },
|
|
130
|
-
{ kind: "
|
|
131
|
-
{ kind: "action-ref", id: "mode-ellipse" },
|
|
226
|
+
{ kind: "shapes-flyout" },
|
|
132
227
|
{ kind: "action-ref", id: "mode-text" },
|
|
133
|
-
{ kind: "action-ref", id: "mode-edge" },
|
|
134
228
|
{ kind: "action-ref", id: "mode-brush" },
|
|
135
229
|
{ kind: "action-ref", id: "mode-erase" },
|
|
136
230
|
{ kind: "action-ref", id: "mode-laser" },
|
|
@@ -161,10 +255,8 @@ export const DEFAULT_VERTICAL_TOOLBAR = [
|
|
|
161
255
|
{ kind: "action-ref", id: "mode-select" },
|
|
162
256
|
{ kind: "action-ref", id: "mode-hand" },
|
|
163
257
|
{ kind: "divider" },
|
|
164
|
-
{ kind: "
|
|
165
|
-
{ kind: "action-ref", id: "mode-ellipse" },
|
|
258
|
+
{ kind: "shapes-flyout" },
|
|
166
259
|
{ kind: "action-ref", id: "mode-text" },
|
|
167
|
-
{ kind: "action-ref", id: "mode-edge" },
|
|
168
260
|
{ kind: "action-ref", id: "mode-brush" },
|
|
169
261
|
{ kind: "action-ref", id: "mode-erase" },
|
|
170
262
|
{ kind: "action-ref", id: "mode-laser" },
|
|
@@ -193,6 +285,8 @@ export const Toolbar = ({ items = DEFAULT_TOOLBAR, style, className, orientation
|
|
|
193
285
|
return _jsx(ToolbarDivider, { vertical: vertical }, i);
|
|
194
286
|
case "action-ref":
|
|
195
287
|
return _jsx(ActionRefButton, { id: item.id }, i);
|
|
288
|
+
case "shapes-flyout":
|
|
289
|
+
return (_jsx(ShapesAndLinesButton, { vertical: vertical, ...(item.onMoreShapes ? { onMoreShapes: item.onMoreShapes } : {}) }, i));
|
|
196
290
|
case "mode": {
|
|
197
291
|
const active = activeTool.type === item.mode;
|
|
198
292
|
// Only select / hand are navigation-safe; every other mode
|
|
@@ -253,56 +347,32 @@ export const ZoomDisplay = ({ className, style, }) => {
|
|
|
253
347
|
const editor = useDiagramOptional();
|
|
254
348
|
const zoom = useEditorSelector((e) => e.scene.viewport.zoom, 1);
|
|
255
349
|
const percent = `${Math.round(zoom * 100)}%`;
|
|
256
|
-
return (_jsx(ToolbarButton, { disabled: !editor, title: `Reset zoom to 100% (${HK_ZOOM_RESET})`, className: className, style: style, onClick: () => editor?.resetZoom(), children: _jsx("span", {
|
|
350
|
+
return (_jsx(ToolbarButton, { disabled: !editor, title: `Reset zoom to 100% (${HK_ZOOM_RESET})`, className: className, style: style, onClick: () => editor?.resetZoom(), children: _jsx("span", { className: "du-zoom-readout", children: percent }) }));
|
|
257
351
|
};
|
|
258
352
|
/**
|
|
259
353
|
* Pre-composed inline zoom widget: − / current % / + / Fit. Equivalent
|
|
260
354
|
* to laying the four standalone buttons + display in a row.
|
|
261
355
|
*/
|
|
262
|
-
export const ZoomWidget = ({ className, style, }) => (_jsxs("span", { className: className, style: { display: "inline-flex", alignItems: "center", gap:
|
|
356
|
+
export const ZoomWidget = ({ className, style, }) => (_jsxs("span", { className: className, style: { display: "inline-flex", alignItems: "center", gap: "var(--du-gap-sm)", ...style }, children: [_jsx(ZoomOutButton, {}), _jsx(ZoomDisplay, {}), _jsx(ZoomInButton, {}), _jsx(ZoomToFitButton, {})] }));
|
|
263
357
|
/**
|
|
264
358
|
* Floating zoom controls — bottom-right cluster with rounded shadow
|
|
265
359
|
* chrome. Drops the widget into a corner so the toolbar stays free for
|
|
266
360
|
* tools. Hosts that need a different position pass `style`.
|
|
267
361
|
*/
|
|
268
|
-
export const FloatingZoomControls = ({ className, style, }) => (_jsxs("div", { className: className
|
|
269
|
-
position: "absolute",
|
|
270
|
-
bottom: 16,
|
|
271
|
-
right: 16,
|
|
272
|
-
display: "inline-flex",
|
|
273
|
-
alignItems: "center",
|
|
274
|
-
gap: 2,
|
|
275
|
-
padding: "4px 6px",
|
|
276
|
-
background: "var(--toolbar-bg, #1a1a1a)",
|
|
277
|
-
border: "1px solid var(--border, #2a2a2a)",
|
|
278
|
-
borderRadius: 6,
|
|
279
|
-
boxShadow: "0 2px 8px rgba(0, 0, 0, 0.18)",
|
|
280
|
-
zIndex: 50,
|
|
281
|
-
...style,
|
|
282
|
-
}, children: [_jsx(ZoomOutButton, {}), _jsx(ZoomDisplay, {}), _jsx(ZoomInButton, {}), _jsx(ZoomToFitButton, {})] }));
|
|
362
|
+
export const FloatingZoomControls = ({ className, style, }) => (_jsxs("div", { className: `du-button-group du-zoom-floating${className ? ` ${className}` : ""}`, style: style, children: [_jsx(ZoomOutButton, {}), _jsx(ZoomDisplay, {}), _jsx(ZoomInButton, {}), _jsx(ZoomToFitButton, {})] }));
|
|
283
363
|
const ToolbarButton = ({ children, onClick, active, disabled, title, className, style, }) => {
|
|
284
364
|
const btn = (_jsx("button", { type: "button", onClick: onClick, disabled: disabled, "aria-label": title, "aria-pressed": active, className: `du-icon-button${active ? " is-active" : ""}${className ? ` ${className}` : ""}`, style: {
|
|
285
365
|
// Toolbar items are wider than square — labels can be 1-2
|
|
286
366
|
// characters or short words. Match the IconButton height but
|
|
287
367
|
// let the width grow with the content.
|
|
288
368
|
width: "auto",
|
|
289
|
-
minWidth: "var(--du-button-size
|
|
290
|
-
padding: "0
|
|
369
|
+
minWidth: "var(--du-button-size)",
|
|
370
|
+
padding: "0 var(--du-space-md)",
|
|
291
371
|
...style,
|
|
292
372
|
}, children: children }));
|
|
293
373
|
// Wrap in Tooltip when there's text to show. Disabled / empty labels go
|
|
294
374
|
// raw — the shared-state tooltip would otherwise flash an empty box.
|
|
295
375
|
return title ? _jsx(Tooltip, { content: title, children: btn }) : btn;
|
|
296
376
|
};
|
|
297
|
-
const ToolbarDivider = ({ vertical = false }) =>
|
|
298
|
-
height: 1,
|
|
299
|
-
width: "100%",
|
|
300
|
-
background: "var(--du-ui-border, #333)",
|
|
301
|
-
margin: "4px 0",
|
|
302
|
-
} })) : (_jsx("span", { style: {
|
|
303
|
-
width: 1,
|
|
304
|
-
height: TOOLBAR_SEPARATOR_HEIGHT,
|
|
305
|
-
background: "var(--du-ui-border, #333)",
|
|
306
|
-
margin: "0 4px",
|
|
307
|
-
} }));
|
|
377
|
+
const ToolbarDivider = ({ vertical = false }) => (_jsx("span", { className: `du-toolbar-divider${vertical ? " is-vertical" : ""}` }));
|
|
308
378
|
//# sourceMappingURL=toolbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.js","sourceRoot":"","sources":["../../src/toolbar/toolbar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-time.d.ts","sourceRoot":"","sources":["../../src/utils/format-time.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,QAAO,UAAU,GAAG,MAAmB,KAAG,MAIjF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-time.js","sourceRoot":"","sources":["../../src/utils/format-time.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,QAA6B,UAAU,EAAU,EAAE;IACzF,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;AACxE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-dismiss-timer.d.ts","sourceRoot":"","sources":["../../src/utils/use-dismiss-timer.ts"],"names":[],"mappings":"AAEA,4HAA4H;AAC5H,eAAO,MAAM,eAAe,GAC1B,IAAI,MAAM,IAAI,KACb;IAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAsBtD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-dismiss-timer.js","sourceRoot":"","sources":["../../src/utils/use-dismiss-timer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEvD,4HAA4H;AAC5H,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAAc,EAC0C,EAAE;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACzB,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC3B,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,EAAU,EAAE,EAAE;QACb,MAAM,EAAE,CAAC;QACT,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IACF,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimap.d.ts","sourceRoot":"","sources":["../../src/widgets/minimap.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,aAAa,EAAqB,MAAM,OAAO,CAAC;AAK9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAiBrD,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AA+BD;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,GAAI,0DAMrB,YAAY,4CAqMd,CAAC"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useEffect, useRef } from "react";
|
|
3
|
-
import { getElementWorldBounds } from "@oh-just-another/scene";
|
|
4
|
-
import {
|
|
5
|
-
import { Canvas2DTarget, setupHiDpi } from "@oh-just-another/renderer-canvas";
|
|
3
|
+
import { getElementWorldBounds, isGroup } from "@oh-just-another/scene";
|
|
4
|
+
import { setupHiDpi } from "@oh-just-another/renderer-canvas";
|
|
6
5
|
import { bounds as B } from "@oh-just-another/math";
|
|
7
|
-
import { useDiagramOptional } from "
|
|
8
|
-
import { MINIMAP_FRAME_COLOR, MINIMAP_FRAME_FILL, MINIMAP_FRAME_LINE_WIDTH, MINIMAP_HEIGHT_PX,
|
|
6
|
+
import { useDiagramOptional } from "../core/hooks.js";
|
|
7
|
+
import { MINIMAP_BACKGROUND, MINIMAP_ELEMENT_COLOR, MINIMAP_ELEMENT_OPACITY, MINIMAP_FRAME_COLOR, MINIMAP_FRAME_FILL, MINIMAP_FRAME_LINE_WIDTH, MINIMAP_HEIGHT_PX, MINIMAP_IDLE_MS, MINIMAP_PADDING_PX, MINIMAP_WHEEL_ZOOM_MAX_STEP, MINIMAP_WHEEL_ZOOM_SPEED, MINIMAP_WIDTH_PX, } from "../core/constants.js";
|
|
9
8
|
/** Union of every element's world AABB, or `null` for an empty scene. */
|
|
10
9
|
const sceneContentBounds = (scene) => {
|
|
11
10
|
let acc = null;
|
|
@@ -52,25 +51,31 @@ export const Minimap = ({ width = MINIMAP_WIDTH_PX, height = MINIMAP_HEIGHT_PX,
|
|
|
52
51
|
const ctx = canvas.getContext("2d");
|
|
53
52
|
if (!ctx)
|
|
54
53
|
return;
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
// Schematic overview: white paper + one accent-coloured box per element.
|
|
55
|
+
// Drawn straight on the 2D context (no renderer pass) — cheap enough to
|
|
56
|
+
// be unnoticeable, and it reads at a glance the way the reference does.
|
|
57
|
+
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
58
|
+
ctx.fillStyle = MINIMAP_BACKGROUND;
|
|
59
|
+
ctx.fillRect(0, 0, width, height);
|
|
57
60
|
const content = sceneContentBounds(scene);
|
|
58
61
|
const fit = content ? fitContent(content, width, height) : null;
|
|
59
62
|
fitRef.current = fit;
|
|
60
63
|
if (!fit)
|
|
61
64
|
return;
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
65
|
+
ctx.fillStyle = MINIMAP_ELEMENT_COLOR;
|
|
66
|
+
ctx.globalAlpha = MINIMAP_ELEMENT_OPACITY;
|
|
67
|
+
ctx.beginPath();
|
|
68
|
+
for (const el of scene.elements.values()) {
|
|
69
|
+
if (el.hidden === true || isGroup(el))
|
|
70
|
+
continue;
|
|
71
|
+
const b = getElementWorldBounds(el);
|
|
72
|
+
const x = (b.x - fit.pan.x) * fit.zoom;
|
|
73
|
+
const y = (b.y - fit.pan.y) * fit.zoom;
|
|
74
|
+
// Keep hairline shapes visible at extreme zoom-outs.
|
|
75
|
+
ctx.rect(x, y, Math.max(1, b.width * fit.zoom), Math.max(1, b.height * fit.zoom));
|
|
76
|
+
}
|
|
77
|
+
ctx.fill();
|
|
78
|
+
ctx.globalAlpha = 1;
|
|
74
79
|
// Viewport frame — the world rect currently visible in the main view,
|
|
75
80
|
// projected into minimap pixels. Drawn in CSS px on the dpr-scaled ctx.
|
|
76
81
|
const vp = scene.viewport;
|
|
@@ -79,7 +84,6 @@ export const Minimap = ({ width = MINIMAP_WIDTH_PX, height = MINIMAP_HEIGHT_PX,
|
|
|
79
84
|
const fy = (vp.pan.y - fit.pan.y) * fit.zoom;
|
|
80
85
|
const fw = (vp.size.width / vp.zoom) * fit.zoom;
|
|
81
86
|
const fh = (vp.size.height / vp.zoom) * fit.zoom;
|
|
82
|
-
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
83
87
|
ctx.fillStyle = MINIMAP_FRAME_FILL;
|
|
84
88
|
ctx.fillRect(fx, fy, fw, fh);
|
|
85
89
|
ctx.strokeStyle = MINIMAP_FRAME_COLOR;
|
|
@@ -87,33 +91,43 @@ export const Minimap = ({ width = MINIMAP_WIDTH_PX, height = MINIMAP_HEIGHT_PX,
|
|
|
87
91
|
ctx.strokeRect(fx, fy, fw, fh);
|
|
88
92
|
}
|
|
89
93
|
}, [editor, width, height]);
|
|
90
|
-
//
|
|
91
|
-
//
|
|
94
|
+
// Repaint only when the editor goes quiet: every change (re)arms an idle
|
|
95
|
+
// timer, and while a gesture is in flight (element drag / resize, pan,
|
|
96
|
+
// pinch) nothing is scheduled at all — the overview never competes with
|
|
97
|
+
// the main canvas for frame time, and repaints once right after the
|
|
98
|
+
// gesture ends. Wheel zoom / pan bursts collapse into one trailing paint.
|
|
92
99
|
useEffect(() => {
|
|
93
100
|
if (!editor)
|
|
94
101
|
return undefined;
|
|
95
102
|
draw();
|
|
96
|
-
let last = Date.now();
|
|
97
103
|
let timer = null;
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
draw();
|
|
104
|
+
const clear = () => {
|
|
105
|
+
if (timer !== null) {
|
|
106
|
+
clearTimeout(timer);
|
|
107
|
+
timer = null;
|
|
103
108
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
109
|
+
};
|
|
110
|
+
const busy = () => editor.gestureTx !== null ||
|
|
111
|
+
editor.dragElementId !== null ||
|
|
112
|
+
editor.panGesture !== null ||
|
|
113
|
+
editor.placementId !== null;
|
|
114
|
+
// Every change re-arms the idle timer; while a gesture is in flight no
|
|
115
|
+
// timer runs. The gesture's end is itself a change (commit / release
|
|
116
|
+
// notifies), which arms the one trailing paint.
|
|
117
|
+
const schedule = () => {
|
|
118
|
+
clear();
|
|
119
|
+
if (busy())
|
|
120
|
+
return;
|
|
121
|
+
timer = setTimeout(() => {
|
|
122
|
+
timer = null;
|
|
123
|
+
if (!busy())
|
|
108
124
|
draw();
|
|
109
|
-
|
|
110
|
-
}
|
|
125
|
+
}, MINIMAP_IDLE_MS);
|
|
111
126
|
};
|
|
112
127
|
const unsubscribe = editor.subscribe(schedule);
|
|
113
128
|
return () => {
|
|
114
129
|
unsubscribe();
|
|
115
|
-
|
|
116
|
-
clearTimeout(timer);
|
|
130
|
+
clear();
|
|
117
131
|
};
|
|
118
132
|
}, [editor, draw]);
|
|
119
133
|
// Center the main viewport on the world point under a minimap pixel.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimap.js","sourceRoot":"","sources":["../../src/widgets/minimap.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pill button that runs `editor.revealNearestContent()` — jumps to the
|
|
3
|
+
* element nearest the camera at the current zoom (never zooms in; zooms
|
|
4
|
+
* out only if that element doesn't fit). Only renders when the scene has
|
|
5
|
+
* content AND all of it lies outside the current viewport.
|
|
6
|
+
*
|
|
7
|
+
* The visibility check projects the scene's world AABB through the
|
|
8
|
+
* inverse of the viewport transform and intersects with the screen rect.
|
|
9
|
+
*/
|
|
10
|
+
export declare const ResetToContentButton: () => import("react/jsx-runtime").JSX.Element | null;
|
|
11
|
+
//# sourceMappingURL=reset-to-content-button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset-to-content-button.d.ts","sourceRoot":"","sources":["../../src/widgets/reset-to-content-button.tsx"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,sDAkBhC,CAAC"}
|
|
@@ -3,14 +3,13 @@ import { useMemo } from "react";
|
|
|
3
3
|
import { LocateFixed } from "lucide-react";
|
|
4
4
|
import { bounds as B, matrix } from "@oh-just-another/math";
|
|
5
5
|
import { getScreenToWorld, getElementWorldBounds } from "@oh-just-another/scene";
|
|
6
|
-
import { useDiagramOptional, useScene } from "
|
|
7
|
-
|
|
8
|
-
const PILL_ICON_SIZE = 14;
|
|
9
|
-
const PILL_ICON_STROKE = 1.75;
|
|
6
|
+
import { useDiagramOptional, useScene } from "../core/hooks.js";
|
|
7
|
+
import { ROW_ICON } from "../core/constants.js";
|
|
10
8
|
/**
|
|
11
|
-
* Pill button that runs `editor.
|
|
12
|
-
*
|
|
13
|
-
*
|
|
9
|
+
* Pill button that runs `editor.revealNearestContent()` — jumps to the
|
|
10
|
+
* element nearest the camera at the current zoom (never zooms in; zooms
|
|
11
|
+
* out only if that element doesn't fit). Only renders when the scene has
|
|
12
|
+
* content AND all of it lies outside the current viewport.
|
|
14
13
|
*
|
|
15
14
|
* The visibility check projects the scene's world AABB through the
|
|
16
15
|
* inverse of the viewport transform and intersects with the screen rect.
|
|
@@ -22,8 +21,8 @@ export const ResetToContentButton = () => {
|
|
|
22
21
|
if (!editor || scene.elements.size === 0 || !isOff)
|
|
23
22
|
return null;
|
|
24
23
|
return (_jsxs("button", { type: "button", className: "du-pill-button", onClick: () => {
|
|
25
|
-
editor.
|
|
26
|
-
}, title: "
|
|
24
|
+
editor.revealNearestContent();
|
|
25
|
+
}, title: "Jump to the nearest content", children: [_jsx(LocateFixed, { ...ROW_ICON, "aria-hidden": true }), _jsx("span", { children: "Back to content" })] }));
|
|
27
26
|
};
|
|
28
27
|
/**
|
|
29
28
|
* Returns `true` if the union AABB of every scene shape lies fully
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset-to-content-button.js","sourceRoot":"","sources":["../../src/widgets/reset-to-content-button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"versioning.d.ts","sourceRoot":"","sources":["../../src/widgets/versioning.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAC7E,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAKrC,UAAU,aAAa;IACrB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;CACxC;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,aAAa,GAAG,IAAI,KAAG,aA6B9D,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,qDAAqD;IACrD,QAAQ,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,qCAAqC,iBAAiB,4CA0RlF,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useEffect, useState } from "react";
|
|
3
3
|
import { captureFromEditor, diffScenes, restoreSnapshot, } from "@oh-just-another/versioning";
|
|
4
|
-
import { useDiagramOptional } from "
|
|
5
|
-
import { formatTime } from "
|
|
6
|
-
import { MergeDialog } from "
|
|
4
|
+
import { useDiagramOptional } from "../core/hooks.js";
|
|
5
|
+
import { formatTime } from "../utils/format-time.js";
|
|
6
|
+
import { MergeDialog } from "../overlays/merge-dialog.js";
|
|
7
7
|
/**
|
|
8
8
|
* Subscribe to a `SnapshotStore` and return reactive lists of branches +
|
|
9
9
|
* snapshots + the currently-active branch. Pass `null` for hosts that
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"versioning.js","sourceRoot":"","sources":["../../src/widgets/versioning.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zen-mode.d.ts","sourceRoot":"","sources":["../../src/widgets/zen-mode.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;CAC7B;AAID;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAAI,cAAc;IAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,4CAqC7E,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,UAAU,QAAO,UAM7B,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,kBAAkB,QAAO,UAAU,GAAG,IAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zen-mode.js","sourceRoot":"","sources":["../../src/widgets/zen-mode.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,GAET,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAc/D,MAAM,cAAc,GAAG,aAAa,CAAoB,IAAI,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAAoC,EAAE,EAAE;IAChF,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,CAAC,OAAO,CAAC;YAC5B,EAAE,EAAE,iBAAiB;YACrB,KAAK,EAAE,UAAU;YACjB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE;YAC/B,OAAO,EAAE,GAAG,EAAE;gBACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;SACF,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,qBAAqB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACtD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,uEAAuE;IACvE,qEAAqE;IACrE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAC3B,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAC3C,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,MAAM,GAAG,GAAG,OAAO,CAAa,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAChF,OAAO,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,GAAG,YAAG,QAAQ,GAA2B,CAAC;AACnF,CAAC,CAAC;AAEF,qEAAqE;AACrE,MAAM,CAAC,MAAM,UAAU,GAAG,GAAe,EAAE;IACzC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,mFAAmF;AACnF,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAsB,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC"}
|