@oh-just-another/state 0.58.0 → 0.60.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 +158 -0
- package/README.md +78 -27
- package/dist/.tsbuildinfo +1 -1
- package/dist/actions/actionArrange.d.ts +13 -0
- package/dist/actions/actionArrange.d.ts.map +1 -0
- package/dist/actions/actionArrange.js +130 -0
- package/dist/actions/actionArrange.js.map +1 -0
- package/dist/actions/actionClipboard.d.ts +2 -0
- package/dist/actions/actionClipboard.d.ts.map +1 -1
- package/dist/actions/actionClipboard.js +32 -1
- package/dist/actions/actionClipboard.js.map +1 -1
- package/dist/actions/actionKeyboard.d.ts.map +1 -1
- package/dist/actions/actionKeyboard.js +77 -9
- package/dist/actions/actionKeyboard.js.map +1 -1
- package/dist/actions/actionMode.d.ts +4 -0
- package/dist/actions/actionMode.d.ts.map +1 -1
- package/dist/actions/actionMode.js +54 -0
- package/dist/actions/actionMode.js.map +1 -1
- package/dist/actions/actionSelection.d.ts.map +1 -1
- package/dist/actions/actionSelection.js +1 -0
- package/dist/actions/actionSelection.js.map +1 -1
- package/dist/actions/actionText.d.ts +5 -0
- package/dist/actions/actionText.d.ts.map +1 -0
- package/dist/actions/actionText.js +37 -0
- package/dist/actions/actionText.js.map +1 -0
- package/dist/actions/actionView.d.ts +6 -0
- package/dist/actions/actionView.d.ts.map +1 -1
- package/dist/actions/actionView.js +20 -2
- package/dist/actions/actionView.js.map +1 -1
- package/dist/actions/actionZoom.d.ts.map +1 -1
- package/dist/actions/actionZoom.js +5 -0
- package/dist/actions/actionZoom.js.map +1 -1
- package/dist/actions/index.d.ts +6 -4
- package/dist/actions/index.d.ts.map +1 -1
- package/dist/actions/index.js +6 -4
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/registry.d.ts.map +1 -1
- package/dist/actions/registry.js +17 -0
- package/dist/actions/registry.js.map +1 -1
- package/dist/actions/types.d.ts +10 -1
- package/dist/actions/types.d.ts.map +1 -1
- package/dist/actions/types.js.map +1 -1
- package/dist/auto-layout-scheduler.d.ts +1 -3
- package/dist/auto-layout-scheduler.d.ts.map +1 -1
- package/dist/auto-layout-scheduler.js +1 -2
- package/dist/auto-layout-scheduler.js.map +1 -1
- package/dist/built-in-handlers.d.ts.map +1 -1
- package/dist/built-in-handlers.js +14 -1
- package/dist/built-in-handlers.js.map +1 -1
- package/dist/clipboard.d.ts +0 -14
- package/dist/clipboard.d.ts.map +1 -1
- package/dist/clipboard.js +1 -1
- package/dist/clipboard.js.map +1 -1
- package/dist/constants.d.ts +208 -41
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +210 -25
- package/dist/constants.js.map +1 -1
- package/dist/dom-events.d.ts +8 -2
- package/dist/dom-events.d.ts.map +1 -1
- package/dist/dom-events.js +12 -0
- package/dist/dom-events.js.map +1 -1
- package/dist/editor/animation-scene.d.ts +36 -0
- package/dist/editor/animation-scene.d.ts.map +1 -0
- package/dist/editor/animation-scene.js +194 -0
- package/dist/editor/animation-scene.js.map +1 -0
- package/dist/editor/animation.d.ts +43 -0
- package/dist/editor/animation.d.ts.map +1 -0
- package/dist/editor/animation.js +80 -0
- package/dist/editor/animation.js.map +1 -0
- package/dist/editor/applies/arrange.d.ts +46 -0
- package/dist/editor/applies/arrange.d.ts.map +1 -0
- package/dist/editor/applies/arrange.js +162 -0
- package/dist/editor/applies/arrange.js.map +1 -0
- package/dist/editor/applies/create.d.ts +0 -6
- package/dist/editor/applies/create.d.ts.map +1 -1
- package/dist/editor/applies/create.js +1 -1
- package/dist/editor/applies/create.js.map +1 -1
- package/dist/editor/applies/edge.d.ts +8 -1
- package/dist/editor/applies/edge.d.ts.map +1 -1
- package/dist/editor/applies/edge.js +31 -1
- package/dist/editor/applies/edge.js.map +1 -1
- package/dist/editor/applies/link-move.d.ts +0 -8
- package/dist/editor/applies/link-move.d.ts.map +1 -1
- package/dist/editor/applies/link-move.js +1 -1
- package/dist/editor/applies/link-move.js.map +1 -1
- package/dist/editor/applies/move.d.ts +6 -0
- package/dist/editor/applies/move.d.ts.map +1 -1
- package/dist/editor/applies/move.js +6 -0
- package/dist/editor/applies/move.js.map +1 -1
- package/dist/editor/applies/resize.d.ts +26 -5
- package/dist/editor/applies/resize.d.ts.map +1 -1
- package/dist/editor/applies/resize.js +91 -13
- package/dist/editor/applies/resize.js.map +1 -1
- package/dist/editor/caret-blink.d.ts +18 -0
- package/dist/editor/caret-blink.d.ts.map +1 -0
- package/dist/editor/caret-blink.js +42 -0
- package/dist/editor/caret-blink.js.map +1 -0
- package/dist/editor/container-ops.d.ts.map +1 -1
- package/dist/editor/container-ops.js +2 -2
- package/dist/editor/container-ops.js.map +1 -1
- package/dist/editor/dirty-rect.d.ts +23 -0
- package/dist/editor/dirty-rect.d.ts.map +1 -0
- package/dist/editor/dirty-rect.js +115 -0
- package/dist/editor/dirty-rect.js.map +1 -0
- package/dist/editor/gif-playback.d.ts +45 -0
- package/dist/editor/gif-playback.d.ts.map +1 -0
- package/dist/editor/gif-playback.js +125 -0
- package/dist/editor/gif-playback.js.map +1 -0
- package/dist/editor/hit-test.d.ts +3 -3
- package/dist/editor/hit-test.d.ts.map +1 -1
- package/dist/editor/hit-test.js +40 -15
- package/dist/editor/hit-test.js.map +1 -1
- package/dist/editor/interaction-state.d.ts +184 -0
- package/dist/editor/interaction-state.d.ts.map +1 -0
- package/dist/editor/interaction-state.js +139 -0
- package/dist/editor/interaction-state.js.map +1 -0
- package/dist/editor/link-handle-drag.d.ts +152 -0
- package/dist/editor/link-handle-drag.d.ts.map +1 -0
- package/dist/editor/link-handle-drag.js +300 -0
- package/dist/editor/link-handle-drag.js.map +1 -0
- package/dist/editor/long-press.d.ts.map +1 -1
- package/dist/editor/long-press.js +2 -2
- package/dist/editor/long-press.js.map +1 -1
- package/dist/editor/pinch.d.ts.map +1 -1
- package/dist/editor/pinch.js +6 -6
- package/dist/editor/pinch.js.map +1 -1
- package/dist/editor/pointer-binding.d.ts +9 -11
- package/dist/editor/pointer-binding.d.ts.map +1 -1
- package/dist/editor/pointer-binding.js +1191 -890
- package/dist/editor/pointer-binding.js.map +1 -1
- package/dist/editor/public/arrange-group.d.ts +3 -9
- package/dist/editor/public/arrange-group.d.ts.map +1 -1
- package/dist/editor/public/arrange-group.js +4 -6
- package/dist/editor/public/arrange-group.js.map +1 -1
- package/dist/editor/public/brush.d.ts +31 -12
- package/dist/editor/public/brush.d.ts.map +1 -1
- package/dist/editor/public/brush.js +66 -17
- package/dist/editor/public/brush.js.map +1 -1
- package/dist/editor/public/clipboard.d.ts +2 -4
- package/dist/editor/public/clipboard.d.ts.map +1 -1
- package/dist/editor/public/clipboard.js +2 -4
- package/dist/editor/public/clipboard.js.map +1 -1
- package/dist/editor/public/cursor.d.ts +29 -0
- package/dist/editor/public/cursor.d.ts.map +1 -0
- package/dist/editor/public/cursor.js +146 -0
- package/dist/editor/public/cursor.js.map +1 -0
- package/dist/editor/public/eraser.d.ts +55 -0
- package/dist/editor/public/eraser.d.ts.map +1 -0
- package/dist/editor/public/eraser.js +65 -0
- package/dist/editor/public/eraser.js.map +1 -0
- package/dist/editor/public/frame-name.d.ts +20 -0
- package/dist/editor/public/frame-name.d.ts.map +1 -0
- package/dist/editor/public/frame-name.js +54 -0
- package/dist/editor/public/frame-name.js.map +1 -0
- package/dist/editor/public/image-insert.d.ts +1 -1
- package/dist/editor/public/image-insert.d.ts.map +1 -1
- package/dist/editor/public/laser.d.ts +38 -0
- package/dist/editor/public/laser.d.ts.map +1 -0
- package/dist/editor/public/laser.js +42 -0
- package/dist/editor/public/laser.js.map +1 -0
- package/dist/editor/public/layers.d.ts.map +1 -1
- package/dist/editor/public/layers.js +2 -2
- package/dist/editor/public/layers.js.map +1 -1
- package/dist/editor/public/link.d.ts +11 -2
- package/dist/editor/public/link.d.ts.map +1 -1
- package/dist/editor/public/link.js +70 -2
- package/dist/editor/public/link.js.map +1 -1
- package/dist/editor/public/placement.d.ts +60 -2
- package/dist/editor/public/placement.d.ts.map +1 -1
- package/dist/editor/public/placement.js +193 -2
- package/dist/editor/public/placement.js.map +1 -1
- package/dist/editor/public/selection-ops.d.ts +35 -1
- package/dist/editor/public/selection-ops.d.ts.map +1 -1
- package/dist/editor/public/selection-ops.js +97 -2
- package/dist/editor/public/selection-ops.js.map +1 -1
- package/dist/editor/public/stroke-eraser-coverage.d.ts +37 -0
- package/dist/editor/public/stroke-eraser-coverage.d.ts.map +1 -0
- package/dist/editor/public/stroke-eraser-coverage.js +168 -0
- package/dist/editor/public/stroke-eraser-coverage.js.map +1 -0
- package/dist/editor/public/stroke-eraser.d.ts +50 -0
- package/dist/editor/public/stroke-eraser.d.ts.map +1 -0
- package/dist/editor/public/stroke-eraser.js +176 -0
- package/dist/editor/public/stroke-eraser.js.map +1 -0
- package/dist/editor/public/stroke-smoothing.d.ts +21 -0
- package/dist/editor/public/stroke-smoothing.d.ts.map +1 -0
- package/dist/editor/public/stroke-smoothing.js +37 -0
- package/dist/editor/public/stroke-smoothing.js.map +1 -0
- package/dist/editor/public/text-edit.d.ts +1 -10
- package/dist/editor/public/text-edit.d.ts.map +1 -1
- package/dist/editor/public/text-edit.js +2 -16
- package/dist/editor/public/text-edit.js.map +1 -1
- package/dist/editor/public/tool-ops.d.ts +130 -0
- package/dist/editor/public/tool-ops.d.ts.map +1 -0
- package/dist/editor/public/tool-ops.js +392 -0
- package/dist/editor/public/tool-ops.js.map +1 -0
- package/dist/editor/public/z-order.d.ts +1 -12
- package/dist/editor/public/z-order.d.ts.map +1 -1
- package/dist/editor/public/z-order.js +5 -5
- package/dist/editor/public/z-order.js.map +1 -1
- package/dist/editor/public/zoom-pan.d.ts +15 -4
- package/dist/editor/public/zoom-pan.d.ts.map +1 -1
- package/dist/editor/public/zoom-pan.js +39 -7
- package/dist/editor/public/zoom-pan.js.map +1 -1
- package/dist/editor/render-orchestrator.d.ts +177 -5
- package/dist/editor/render-orchestrator.d.ts.map +1 -1
- package/dist/editor/render-orchestrator.js +519 -358
- package/dist/editor/render-orchestrator.js.map +1 -1
- package/dist/editor/resize-helpers.d.ts +21 -5
- package/dist/editor/resize-helpers.d.ts.map +1 -1
- package/dist/editor/resize-helpers.js +59 -19
- package/dist/editor/resize-helpers.js.map +1 -1
- package/dist/editor/text-edit.d.ts +136 -0
- package/dist/editor/text-edit.d.ts.map +1 -0
- package/dist/editor/text-edit.js +328 -0
- package/dist/editor/text-edit.js.map +1 -0
- package/dist/editor/viewport-helpers.d.ts.map +1 -1
- package/dist/editor/viewport-helpers.js +3 -3
- package/dist/editor/viewport-helpers.js.map +1 -1
- package/dist/editor-events.d.ts +1 -1
- package/dist/editor-events.d.ts.map +1 -1
- package/dist/editor.d.ts +603 -346
- package/dist/editor.d.ts.map +1 -1
- package/dist/editor.js +1843 -1630
- package/dist/editor.js.map +1 -1
- package/dist/file-drop.d.ts.map +1 -1
- package/dist/file-drop.js +1 -2
- package/dist/file-drop.js.map +1 -1
- package/dist/frame-helpers.d.ts.map +1 -1
- package/dist/frame-helpers.js +5 -5
- package/dist/frame-helpers.js.map +1 -1
- package/dist/group-helpers.d.ts.map +1 -1
- package/dist/group-helpers.js +4 -4
- package/dist/group-helpers.js.map +1 -1
- package/dist/handle.d.ts +59 -6
- package/dist/handle.d.ts.map +1 -1
- package/dist/handle.js +99 -7
- package/dist/handle.js.map +1 -1
- package/dist/hotkeys-binding.d.ts +26 -0
- package/dist/hotkeys-binding.d.ts.map +1 -0
- package/dist/hotkeys-binding.js +35 -0
- package/dist/hotkeys-binding.js.map +1 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/link-selection.d.ts +3 -5
- package/dist/link-selection.d.ts.map +1 -1
- package/dist/link-selection.js +3 -12
- package/dist/link-selection.js.map +1 -1
- package/dist/machine.d.ts +27 -1
- package/dist/machine.d.ts.map +1 -1
- package/dist/machine.js +38 -0
- package/dist/machine.js.map +1 -1
- package/dist/modes.d.ts +15 -1
- package/dist/modes.d.ts.map +1 -1
- package/dist/modes.js.map +1 -1
- package/dist/overlay.d.ts +92 -6
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +582 -125
- package/dist/overlay.js.map +1 -1
- package/dist/search.d.ts +37 -0
- package/dist/search.d.ts.map +1 -0
- package/dist/search.js +45 -0
- package/dist/search.js.map +1 -0
- package/dist/selection.d.ts.map +1 -1
- package/dist/selection.js +2 -10
- package/dist/selection.js.map +1 -1
- package/dist/util.d.ts +8 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +17 -0
- package/dist/util.js.map +1 -0
- package/package.json +7 -7
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { hasSelection } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Arrange actions — flip and align the selection. Distribution actions join
|
|
4
|
+
* this bundle as they land.
|
|
5
|
+
*/
|
|
6
|
+
/** Alignment needs at least two elements to have a meaningful reference box. */
|
|
7
|
+
const hasMultiSelection = (ctx) => ctx.editor.selection.size >= 2;
|
|
8
|
+
/** Distribution needs at least three elements (outer two pin the span). */
|
|
9
|
+
const hasThreePlus = (ctx) => ctx.editor.selection.size >= 3;
|
|
10
|
+
export const actionFlipHorizontal = {
|
|
11
|
+
id: "flip-horizontal",
|
|
12
|
+
label: "Flip horizontal",
|
|
13
|
+
category: "arrange",
|
|
14
|
+
hotkey: { key: "h", shift: true },
|
|
15
|
+
iconId: "flip-horizontal",
|
|
16
|
+
predicate: hasSelection,
|
|
17
|
+
perform: ({ editor }) => {
|
|
18
|
+
editor.flipSelection("horizontal");
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
export const actionFlipVertical = {
|
|
22
|
+
id: "flip-vertical",
|
|
23
|
+
label: "Flip vertical",
|
|
24
|
+
category: "arrange",
|
|
25
|
+
hotkey: { key: "v", shift: true },
|
|
26
|
+
iconId: "flip-vertical",
|
|
27
|
+
predicate: hasSelection,
|
|
28
|
+
perform: ({ editor }) => {
|
|
29
|
+
editor.flipSelection("vertical");
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
export const actionAlignLeft = {
|
|
33
|
+
id: "align-left",
|
|
34
|
+
label: "Align left",
|
|
35
|
+
category: "arrange",
|
|
36
|
+
hotkey: { key: "ArrowLeft", meta: true, shift: true },
|
|
37
|
+
iconId: "align-left",
|
|
38
|
+
predicate: hasMultiSelection,
|
|
39
|
+
perform: ({ editor }) => {
|
|
40
|
+
editor.alignSelection("left");
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
export const actionAlignHCenter = {
|
|
44
|
+
id: "align-h-center",
|
|
45
|
+
label: "Align horizontal centres",
|
|
46
|
+
category: "arrange",
|
|
47
|
+
iconId: "align-h-center",
|
|
48
|
+
predicate: hasMultiSelection,
|
|
49
|
+
perform: ({ editor }) => {
|
|
50
|
+
editor.alignSelection("h-center");
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
export const actionAlignRight = {
|
|
54
|
+
id: "align-right",
|
|
55
|
+
label: "Align right",
|
|
56
|
+
category: "arrange",
|
|
57
|
+
hotkey: { key: "ArrowRight", meta: true, shift: true },
|
|
58
|
+
iconId: "align-right",
|
|
59
|
+
predicate: hasMultiSelection,
|
|
60
|
+
perform: ({ editor }) => {
|
|
61
|
+
editor.alignSelection("right");
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
export const actionAlignTop = {
|
|
65
|
+
id: "align-top",
|
|
66
|
+
label: "Align top",
|
|
67
|
+
category: "arrange",
|
|
68
|
+
hotkey: { key: "ArrowUp", meta: true, shift: true },
|
|
69
|
+
iconId: "align-top",
|
|
70
|
+
predicate: hasMultiSelection,
|
|
71
|
+
perform: ({ editor }) => {
|
|
72
|
+
editor.alignSelection("top");
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
export const actionAlignVCenter = {
|
|
76
|
+
id: "align-v-center",
|
|
77
|
+
label: "Align vertical centres",
|
|
78
|
+
category: "arrange",
|
|
79
|
+
iconId: "align-v-center",
|
|
80
|
+
predicate: hasMultiSelection,
|
|
81
|
+
perform: ({ editor }) => {
|
|
82
|
+
editor.alignSelection("v-center");
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
export const actionAlignBottom = {
|
|
86
|
+
id: "align-bottom",
|
|
87
|
+
label: "Align bottom",
|
|
88
|
+
category: "arrange",
|
|
89
|
+
hotkey: { key: "ArrowDown", meta: true, shift: true },
|
|
90
|
+
iconId: "align-bottom",
|
|
91
|
+
predicate: hasMultiSelection,
|
|
92
|
+
perform: ({ editor }) => {
|
|
93
|
+
editor.alignSelection("bottom");
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
export const actionDistributeHorizontal = {
|
|
97
|
+
id: "distribute-horizontal",
|
|
98
|
+
label: "Distribute horizontally",
|
|
99
|
+
category: "arrange",
|
|
100
|
+
hotkey: { key: "h", alt: true },
|
|
101
|
+
iconId: "distribute-horizontal",
|
|
102
|
+
predicate: hasThreePlus,
|
|
103
|
+
perform: ({ editor }) => {
|
|
104
|
+
editor.distributeSelection("horizontal");
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
export const actionDistributeVertical = {
|
|
108
|
+
id: "distribute-vertical",
|
|
109
|
+
label: "Distribute vertically",
|
|
110
|
+
category: "arrange",
|
|
111
|
+
hotkey: { key: "v", alt: true },
|
|
112
|
+
iconId: "distribute-vertical",
|
|
113
|
+
predicate: hasThreePlus,
|
|
114
|
+
perform: ({ editor }) => {
|
|
115
|
+
editor.distributeSelection("vertical");
|
|
116
|
+
},
|
|
117
|
+
};
|
|
118
|
+
export const arrangeActions = [
|
|
119
|
+
actionFlipHorizontal,
|
|
120
|
+
actionFlipVertical,
|
|
121
|
+
actionAlignLeft,
|
|
122
|
+
actionAlignHCenter,
|
|
123
|
+
actionAlignRight,
|
|
124
|
+
actionAlignTop,
|
|
125
|
+
actionAlignVCenter,
|
|
126
|
+
actionAlignBottom,
|
|
127
|
+
actionDistributeHorizontal,
|
|
128
|
+
actionDistributeVertical,
|
|
129
|
+
];
|
|
130
|
+
//# sourceMappingURL=actionArrange.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actionArrange.js","sourceRoot":"","sources":["../../src/actions/actionArrange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3E;;;GAGG;AAEH,gFAAgF;AAChF,MAAM,iBAAiB,GAAG,CAAC,GAAkB,EAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;AAE1F,2EAA2E;AAC3E,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;AAErF,MAAM,CAAC,MAAM,oBAAoB,GAAW;IAC1C,EAAE,EAAE,iBAAiB;IACrB,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;IACjC,MAAM,EAAE,iBAAiB;IACzB,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAW;IACxC,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE,eAAe;IACtB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;IACjC,MAAM,EAAE,eAAe;IACvB,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAW;IACrC,EAAE,EAAE,YAAY;IAChB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrD,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAW;IACxC,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,0BAA0B;IACjC,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,EAAE,EAAE,aAAa;IACjB,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACtD,MAAM,EAAE,aAAa;IACrB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,EAAE,EAAE,WAAW;IACf,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACnD,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAW;IACxC,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,wBAAwB;IAC/B,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAW;IACvC,EAAE,EAAE,cAAc;IAClB,KAAK,EAAE,cAAc;IACrB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrD,MAAM,EAAE,cAAc;IACtB,SAAS,EAAE,iBAAiB;IAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAW;IAChD,EAAE,EAAE,uBAAuB;IAC3B,KAAK,EAAE,yBAAyB;IAChC,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE;IAC/B,MAAM,EAAE,uBAAuB;IAC/B,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAW;IAC9C,EAAE,EAAE,qBAAqB;IACzB,KAAK,EAAE,uBAAuB;IAC9B,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE;IAC/B,MAAM,EAAE,qBAAqB;IAC7B,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,oBAAoB;IACpB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,cAAc;IACd,kBAAkB;IAClB,iBAAiB;IACjB,0BAA0B;IAC1B,wBAAwB;CACzB,CAAC"}
|
|
@@ -2,5 +2,7 @@ import { type Action } from "./types.js";
|
|
|
2
2
|
export declare const actionCopy: Action;
|
|
3
3
|
export declare const actionCut: Action;
|
|
4
4
|
export declare const actionPaste: Action;
|
|
5
|
+
export declare const actionCopyStyle: Action;
|
|
6
|
+
export declare const actionPasteStyle: Action;
|
|
5
7
|
export declare const clipboardActions: readonly Action[];
|
|
6
8
|
//# sourceMappingURL=actionClipboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionClipboard.d.ts","sourceRoot":"","sources":["../../src/actions/actionClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"actionClipboard.d.ts","sourceRoot":"","sources":["../../src/actions/actionClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,UAAU,EAAE,MAYxB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,MASvB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAQzB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAW7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAS9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAM7C,CAAC"}
|
|
@@ -3,6 +3,9 @@ export const actionCopy = {
|
|
|
3
3
|
id: "copy",
|
|
4
4
|
label: "Copy",
|
|
5
5
|
category: "clipboard",
|
|
6
|
+
// Reading the selection into the clipboard mutates nothing — stays live
|
|
7
|
+
// in read-only / view mode.
|
|
8
|
+
viewMode: true,
|
|
6
9
|
hotkey: { key: "c", meta: true },
|
|
7
10
|
predicate: hasSelection,
|
|
8
11
|
perform: ({ editor }) => {
|
|
@@ -28,5 +31,33 @@ export const actionPaste = {
|
|
|
28
31
|
editor.paste();
|
|
29
32
|
},
|
|
30
33
|
};
|
|
31
|
-
export const
|
|
34
|
+
export const actionCopyStyle = {
|
|
35
|
+
id: "copy-style",
|
|
36
|
+
label: "Copy style",
|
|
37
|
+
category: "clipboard",
|
|
38
|
+
// Sampling the selection's style into the style clipboard is non-mutating.
|
|
39
|
+
viewMode: true,
|
|
40
|
+
hotkey: { key: "c", meta: true, alt: true },
|
|
41
|
+
predicate: hasSelection,
|
|
42
|
+
perform: ({ editor }) => {
|
|
43
|
+
editor.copySelectionStyle();
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
export const actionPasteStyle = {
|
|
47
|
+
id: "paste-style",
|
|
48
|
+
label: "Paste style",
|
|
49
|
+
category: "clipboard",
|
|
50
|
+
hotkey: { key: "v", meta: true, alt: true },
|
|
51
|
+
predicate: ({ editor }) => editor.selection.size > 0 && editor.hasStyleClipboard,
|
|
52
|
+
perform: ({ editor }) => {
|
|
53
|
+
editor.pasteSelectionStyle();
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
export const clipboardActions = [
|
|
57
|
+
actionCopy,
|
|
58
|
+
actionCut,
|
|
59
|
+
actionPaste,
|
|
60
|
+
actionCopyStyle,
|
|
61
|
+
actionPasteStyle,
|
|
62
|
+
];
|
|
32
63
|
//# sourceMappingURL=actionClipboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionClipboard.js","sourceRoot":"","sources":["../../src/actions/actionClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAW;IAChC,EAAE,EAAE,MAAM;IACV,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAW;IAC/B,EAAE,EAAE,KAAK;IACT,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"actionClipboard.js","sourceRoot":"","sources":["../../src/actions/actionClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAW;IAChC,EAAE,EAAE,MAAM;IACV,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,WAAW;IACrB,wEAAwE;IACxE,4BAA4B;IAC5B,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAW;IAC/B,EAAE,EAAE,KAAK;IACT,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAW;IACrC,EAAE,EAAE,YAAY;IAChB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,WAAW;IACrB,2EAA2E;IAC3E,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IAC3C,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,EAAE,EAAE,aAAa;IACjB,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IAC3C,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,iBAAiB;IAChF,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,UAAU;IACV,SAAS;IACT,WAAW;IACX,eAAe;IACf,gBAAgB;CACjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionKeyboard.d.ts","sourceRoot":"","sources":["../../src/actions/actionKeyboard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"actionKeyboard.d.ts","sourceRoot":"","sources":["../../src/actions/actionKeyboard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAwMzC,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAO5C,CAAC"}
|
|
@@ -6,11 +6,21 @@ import { NUDGE_STEP_PX, NUDGE_STEP_SHIFT_PX } from "../constants.js";
|
|
|
6
6
|
* host-/component-registered — they need the DOM, which the L2 kernel can't
|
|
7
7
|
* import.
|
|
8
8
|
*/
|
|
9
|
-
/**
|
|
9
|
+
/**
|
|
10
|
+
* Arrow keys nudge the selection (Shift = coarse step). Always consumes the
|
|
11
|
+
* arrow. `displayHotkey` only feeds the help-dialog chips — dispatch runs
|
|
12
|
+
* purely off `keyTest`, so the declarative entries never fire.
|
|
13
|
+
*/
|
|
10
14
|
const nudgeSelection = {
|
|
11
15
|
id: "nudge-selection",
|
|
12
16
|
label: "Nudge selection",
|
|
13
17
|
category: "selection",
|
|
18
|
+
displayHotkey: [
|
|
19
|
+
{ key: "ArrowLeft" },
|
|
20
|
+
{ key: "ArrowRight" },
|
|
21
|
+
{ key: "ArrowUp" },
|
|
22
|
+
{ key: "ArrowDown" },
|
|
23
|
+
],
|
|
14
24
|
keyTest: (ev) => (ev.key === "ArrowLeft" ||
|
|
15
25
|
ev.key === "ArrowRight" ||
|
|
16
26
|
ev.key === "ArrowUp" ||
|
|
@@ -39,14 +49,68 @@ const nudgeSelection = {
|
|
|
39
49
|
},
|
|
40
50
|
};
|
|
41
51
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
52
|
+
* `⌥`/`Alt` + arrows navigate the selection to the adjacent node: a graph
|
|
53
|
+
* neighbour (linked node) best aligned with the arrow, falling back to the
|
|
54
|
+
* spatially nearest element that way. Distinct from plain arrows (nudge) by the
|
|
55
|
+
* modifier. Always consumes the combo so the page doesn't scroll.
|
|
56
|
+
* `displayHotkey` only feeds the help-dialog chips; dispatch runs off `keyTest`.
|
|
45
57
|
*/
|
|
46
58
|
const selectClosest = {
|
|
47
59
|
id: "select-closest",
|
|
48
|
-
label: "
|
|
60
|
+
label: "Navigate to adjacent node",
|
|
49
61
|
category: "selection",
|
|
62
|
+
displayHotkey: [
|
|
63
|
+
{ key: "ArrowLeft", alt: true },
|
|
64
|
+
{ key: "ArrowRight", alt: true },
|
|
65
|
+
{ key: "ArrowUp", alt: true },
|
|
66
|
+
{ key: "ArrowDown", alt: true },
|
|
67
|
+
],
|
|
68
|
+
keyTest: (ev) => ev.altKey &&
|
|
69
|
+
!ev.metaKey &&
|
|
70
|
+
!ev.ctrlKey &&
|
|
71
|
+
!ev.shiftKey &&
|
|
72
|
+
(ev.key === "ArrowLeft" ||
|
|
73
|
+
ev.key === "ArrowRight" ||
|
|
74
|
+
ev.key === "ArrowUp" ||
|
|
75
|
+
ev.key === "ArrowDown"),
|
|
76
|
+
perform: ({ editor, event }) => {
|
|
77
|
+
if (!event)
|
|
78
|
+
return;
|
|
79
|
+
switch (event.key) {
|
|
80
|
+
case "ArrowLeft":
|
|
81
|
+
editor.navigateFlowchart("left");
|
|
82
|
+
return;
|
|
83
|
+
case "ArrowRight":
|
|
84
|
+
editor.navigateFlowchart("right");
|
|
85
|
+
return;
|
|
86
|
+
case "ArrowUp":
|
|
87
|
+
editor.navigateFlowchart("up");
|
|
88
|
+
return;
|
|
89
|
+
case "ArrowDown":
|
|
90
|
+
editor.navigateFlowchart("down");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* `⌘`/`Ctrl` + arrows grow a flowchart CREATE session from the single selected
|
|
97
|
+
* node in that direction: each press adds a pending connected sibling (preview
|
|
98
|
+
* only) until `Cmd/Ctrl` is released (commit) or `Escape` (cancel). Distinct
|
|
99
|
+
* from plain arrows (nudge), Alt+arrows (navigate) and Cmd+Shift+arrows (align)
|
|
100
|
+
* by requiring meta without alt/shift. No-op unless exactly one element is
|
|
101
|
+
* selected. `displayHotkey` only feeds the help-dialog chips; dispatch runs off
|
|
102
|
+
* `keyTest`.
|
|
103
|
+
*/
|
|
104
|
+
const spawnConnected = {
|
|
105
|
+
id: "spawn-connected",
|
|
106
|
+
label: "Create connected node",
|
|
107
|
+
category: "edit",
|
|
108
|
+
displayHotkey: [
|
|
109
|
+
{ key: "ArrowLeft", meta: true },
|
|
110
|
+
{ key: "ArrowRight", meta: true },
|
|
111
|
+
{ key: "ArrowUp", meta: true },
|
|
112
|
+
{ key: "ArrowDown", meta: true },
|
|
113
|
+
],
|
|
50
114
|
keyTest: (ev) => (ev.metaKey || ev.ctrlKey) &&
|
|
51
115
|
!ev.altKey &&
|
|
52
116
|
!ev.shiftKey &&
|
|
@@ -54,21 +118,22 @@ const selectClosest = {
|
|
|
54
118
|
ev.key === "ArrowRight" ||
|
|
55
119
|
ev.key === "ArrowUp" ||
|
|
56
120
|
ev.key === "ArrowDown"),
|
|
121
|
+
predicate: ({ editor }) => editor.selection.size === 1,
|
|
57
122
|
perform: ({ editor, event }) => {
|
|
58
123
|
if (!event)
|
|
59
124
|
return;
|
|
60
125
|
switch (event.key) {
|
|
61
126
|
case "ArrowLeft":
|
|
62
|
-
editor.
|
|
127
|
+
editor.growFlowchart("left");
|
|
63
128
|
return;
|
|
64
129
|
case "ArrowRight":
|
|
65
|
-
editor.
|
|
130
|
+
editor.growFlowchart("right");
|
|
66
131
|
return;
|
|
67
132
|
case "ArrowUp":
|
|
68
|
-
editor.
|
|
133
|
+
editor.growFlowchart("up");
|
|
69
134
|
return;
|
|
70
135
|
case "ArrowDown":
|
|
71
|
-
editor.
|
|
136
|
+
editor.growFlowchart("down");
|
|
72
137
|
return;
|
|
73
138
|
}
|
|
74
139
|
},
|
|
@@ -102,6 +167,8 @@ const editOrCreate = {
|
|
|
102
167
|
id: "edit-or-create",
|
|
103
168
|
label: "Edit / create",
|
|
104
169
|
category: "edit",
|
|
170
|
+
// Display-only chip; `keyTest` drives dispatch.
|
|
171
|
+
displayHotkey: { key: "Enter" },
|
|
105
172
|
keyTest: (ev) => ev.key === "Enter" && !ev.metaKey && !ev.ctrlKey && !ev.altKey,
|
|
106
173
|
predicate: ({ editor }) => {
|
|
107
174
|
if (editor.selection.size === 1) {
|
|
@@ -127,6 +194,7 @@ const editOrCreate = {
|
|
|
127
194
|
export const keyboardActions = [
|
|
128
195
|
nudgeSelection,
|
|
129
196
|
selectClosest,
|
|
197
|
+
spawnConnected,
|
|
130
198
|
focusNext,
|
|
131
199
|
focusPrev,
|
|
132
200
|
editOrCreate,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionKeyboard.js","sourceRoot":"","sources":["../../src/actions/actionKeyboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGrE;;;;;;GAMG;AAEH
|
|
1
|
+
{"version":3,"file":"actionKeyboard.js","sourceRoot":"","sources":["../../src/actions/actionKeyboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,12 @@ export declare const actionModeEllipse: Action;
|
|
|
6
6
|
export declare const actionModeText: Action;
|
|
7
7
|
export declare const actionModeLink: Action;
|
|
8
8
|
export declare const actionModeBrush: Action;
|
|
9
|
+
export declare const actionModeErase: Action;
|
|
10
|
+
export declare const actionModeLaser: Action;
|
|
9
11
|
export declare const actionModeFrame: Action;
|
|
10
12
|
export declare const actionToggleToolLock: Action;
|
|
13
|
+
export declare const actionCommitCrop: Action;
|
|
14
|
+
export declare const actionCancelCrop: Action;
|
|
11
15
|
export declare const actionCancel: Action;
|
|
12
16
|
export declare const modeActions: readonly Action[];
|
|
13
17
|
//# sourceMappingURL=actionMode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionMode.d.ts","sourceRoot":"","sources":["../../src/actions/actionMode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAMzC,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"actionMode.d.ts","sourceRoot":"","sources":["../../src/actions/actionMode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAMzC,eAAO,MAAM,gBAAgB,EAAE,MAY9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAY5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAW5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAY/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAW5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAW5B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAW7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAW7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAa7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAW7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAalC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAS9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAU9B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAS1B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAexC,CAAC"}
|
|
@@ -5,6 +5,7 @@ export const actionModeSelect = {
|
|
|
5
5
|
id: "mode-select",
|
|
6
6
|
label: "Select tool",
|
|
7
7
|
category: "mode",
|
|
8
|
+
viewMode: true,
|
|
8
9
|
hotkey: { key: "v" },
|
|
9
10
|
iconId: "mode-select",
|
|
10
11
|
uiKind: "toggle",
|
|
@@ -17,6 +18,7 @@ export const actionModeHand = {
|
|
|
17
18
|
id: "mode-hand",
|
|
18
19
|
label: "Hand tool",
|
|
19
20
|
category: "mode",
|
|
21
|
+
viewMode: true,
|
|
20
22
|
hotkey: { key: "h" },
|
|
21
23
|
iconId: "mode-hand",
|
|
22
24
|
uiKind: "toggle",
|
|
@@ -86,6 +88,32 @@ export const actionModeBrush = {
|
|
|
86
88
|
editor.setMode("brush");
|
|
87
89
|
},
|
|
88
90
|
};
|
|
91
|
+
export const actionModeErase = {
|
|
92
|
+
id: "mode-erase",
|
|
93
|
+
label: "Eraser tool",
|
|
94
|
+
category: "mode",
|
|
95
|
+
hotkey: { key: "e" },
|
|
96
|
+
iconId: "mode-erase",
|
|
97
|
+
uiKind: "toggle",
|
|
98
|
+
checked: ({ editor }) => editor.mode === "erase",
|
|
99
|
+
perform: ({ editor }) => {
|
|
100
|
+
editor.setMode("erase");
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
export const actionModeLaser = {
|
|
104
|
+
id: "mode-laser",
|
|
105
|
+
label: "Laser pointer",
|
|
106
|
+
category: "mode",
|
|
107
|
+
// Laser is presentation-only (no scene mutation) → available in read-only.
|
|
108
|
+
viewMode: true,
|
|
109
|
+
hotkey: { key: "k" },
|
|
110
|
+
iconId: "mode-laser",
|
|
111
|
+
uiKind: "toggle",
|
|
112
|
+
checked: ({ editor }) => editor.mode === "laser",
|
|
113
|
+
perform: ({ editor }) => {
|
|
114
|
+
editor.setMode("laser");
|
|
115
|
+
},
|
|
116
|
+
};
|
|
89
117
|
export const actionModeFrame = {
|
|
90
118
|
id: "mode-frame",
|
|
91
119
|
label: "Frame tool",
|
|
@@ -112,10 +140,32 @@ export const actionToggleToolLock = {
|
|
|
112
140
|
editor.setToolLocked(!editor.toolLocked);
|
|
113
141
|
},
|
|
114
142
|
};
|
|
143
|
+
export const actionCommitCrop = {
|
|
144
|
+
id: "commit-image-crop",
|
|
145
|
+
label: "Apply crop",
|
|
146
|
+
category: "edit",
|
|
147
|
+
hotkey: { key: "Enter" },
|
|
148
|
+
predicate: ({ editor }) => editor.mode === "crop",
|
|
149
|
+
perform: ({ editor }) => {
|
|
150
|
+
editor.commitImageCrop();
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
export const actionCancelCrop = {
|
|
154
|
+
id: "cancel-image-crop",
|
|
155
|
+
label: "Cancel crop",
|
|
156
|
+
category: "edit",
|
|
157
|
+
viewMode: true,
|
|
158
|
+
hotkey: { key: "Escape" },
|
|
159
|
+
predicate: ({ editor }) => editor.mode === "crop",
|
|
160
|
+
perform: ({ editor }) => {
|
|
161
|
+
editor.cancelImageCrop();
|
|
162
|
+
},
|
|
163
|
+
};
|
|
115
164
|
export const actionCancel = {
|
|
116
165
|
id: "cancel",
|
|
117
166
|
label: "Cancel / clear selection",
|
|
118
167
|
category: "edit",
|
|
168
|
+
viewMode: true,
|
|
119
169
|
hotkey: { key: "Escape" },
|
|
120
170
|
perform: ({ editor }) => {
|
|
121
171
|
editor.cancelInteraction();
|
|
@@ -129,8 +179,12 @@ export const modeActions = [
|
|
|
129
179
|
actionModeText,
|
|
130
180
|
actionModeLink,
|
|
131
181
|
actionModeBrush,
|
|
182
|
+
actionModeErase,
|
|
183
|
+
actionModeLaser,
|
|
132
184
|
actionModeFrame,
|
|
133
185
|
actionToggleToolLock,
|
|
186
|
+
actionCommitCrop,
|
|
187
|
+
actionCancelCrop,
|
|
134
188
|
actionCancel,
|
|
135
189
|
];
|
|
136
190
|
//# sourceMappingURL=actionMode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionMode.js","sourceRoot":"","sources":["../../src/actions/actionMode.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"actionMode.js","sourceRoot":"","sources":["../../src/actions/actionMode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionSelection.d.ts","sourceRoot":"","sources":["../../src/actions/actionSelection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAoC,MAAM,YAAY,CAAC;AAE3E,eAAO,MAAM,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"actionSelection.d.ts","sourceRoot":"","sources":["../../src/actions/actionSelection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAoC,MAAM,YAAY,CAAC;AAE3E,eAAO,MAAM,eAAe,EAAE,MAS7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MASnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAStC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAS9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MASlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MASjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAO7C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionSelection.js","sourceRoot":"","sources":["../../src/actions/actionSelection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,CAAC,MAAM,eAAe,GAAW;IACrC,EAAE,EAAE,YAAY;IAChB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,EAAE,EAAE,kBAAkB;IACtB,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IACjD,SAAS,EAAE,kBAAkB;IAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAW;IAC9C,EAAE,EAAE,qBAAqB;IACzB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,EAAE,EAAE,aAAa;IACjB,KAAK,EAAE,eAAe;IACtB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC7C,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAW;IAC1C,EAAE,EAAE,iBAAiB;IACrB,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrD,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;IACtD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAW;IACzC,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACnD,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,eAAe;IACf,qBAAqB;IACrB,wBAAwB;IACxB,gBAAgB;IAChB,oBAAoB;IACpB,mBAAmB;CACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"actionSelection.js","sourceRoot":"","sources":["../../src/actions/actionSelection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,CAAC,MAAM,eAAe,GAAW;IACrC,EAAE,EAAE,YAAY;IAChB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,WAAW;IACrB,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,EAAE,EAAE,kBAAkB;IACtB,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IACjD,SAAS,EAAE,kBAAkB;IAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAW;IAC9C,EAAE,EAAE,qBAAqB;IACzB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;IAChC,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,EAAE,EAAE,aAAa;IACjB,KAAK,EAAE,eAAe;IACtB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC7C,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAW;IAC1C,EAAE,EAAE,iBAAiB;IACrB,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrD,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;IACtD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAW;IACzC,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACnD,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,eAAe;IACf,qBAAqB;IACrB,wBAAwB;IACxB,gBAAgB;IAChB,oBAAoB;IACpB,mBAAmB;CACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actionText.d.ts","sourceRoot":"","sources":["../../src/actions/actionText.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAsB,MAAM,YAAY,CAAC;AAY7D,eAAO,MAAM,sBAAsB,EAAE,MAWpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAUpC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAAqD,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { getElement, isText } from "@oh-just-another/scene";
|
|
2
|
+
import {} from "./types.js";
|
|
3
|
+
/** A text shape is in the current selection (font-size steps need one). */
|
|
4
|
+
const hasTextSelection = (ctx) => {
|
|
5
|
+
const { editor } = ctx;
|
|
6
|
+
for (const id of editor.selection) {
|
|
7
|
+
const el = getElement(editor.scene, id);
|
|
8
|
+
if (el !== undefined && isText(el))
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
return false;
|
|
12
|
+
};
|
|
13
|
+
export const actionIncreaseFontSize = {
|
|
14
|
+
id: "increase-font-size",
|
|
15
|
+
label: "Increase font size",
|
|
16
|
+
category: "edit",
|
|
17
|
+
// ⌘⇧> — the `>` key is `Period` shifted; match by code so it works across
|
|
18
|
+
// keyboard layouts.
|
|
19
|
+
hotkey: { code: "Period", meta: true, shift: true },
|
|
20
|
+
predicate: hasTextSelection,
|
|
21
|
+
perform: ({ editor }) => {
|
|
22
|
+
editor.adjustSelectionFontSize("increase");
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
export const actionDecreaseFontSize = {
|
|
26
|
+
id: "decrease-font-size",
|
|
27
|
+
label: "Decrease font size",
|
|
28
|
+
category: "edit",
|
|
29
|
+
// ⌘⇧< — the `<` key is `Comma` shifted.
|
|
30
|
+
hotkey: { code: "Comma", meta: true, shift: true },
|
|
31
|
+
predicate: hasTextSelection,
|
|
32
|
+
perform: ({ editor }) => {
|
|
33
|
+
editor.adjustSelectionFontSize("decrease");
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
export const textActions = [actionIncreaseFontSize, actionDecreaseFontSize];
|
|
37
|
+
//# sourceMappingURL=actionText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actionText.js","sourceRoot":"","sources":["../../src/actions/actionText.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAmC,MAAM,YAAY,CAAC;AAE7D,2EAA2E;AAC3E,MAAM,gBAAgB,GAAG,CAAC,GAAkB,EAAW,EAAE;IACvD,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACvB,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAW;IAC5C,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,QAAQ,EAAE,MAAM;IAChB,0EAA0E;IAC1E,oBAAoB;IACpB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACnD,SAAS,EAAE,gBAAgB;IAC3B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAW;IAC5C,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,QAAQ,EAAE,MAAM;IAChB,wCAAwC;IACxC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAClD,SAAS,EAAE,gBAAgB;IAC3B,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;QACtB,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAsB,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAC"}
|
|
@@ -3,5 +3,11 @@ import type { Action } from "./types.js";
|
|
|
3
3
|
* View toggles (grid, …) — not part of the document, not in history.
|
|
4
4
|
*/
|
|
5
5
|
export declare const actionToggleGrid: Action;
|
|
6
|
+
/**
|
|
7
|
+
* Read-only / view mode toggle (`⌥R`). Flagged `viewMode` so it stays
|
|
8
|
+
* live once the editor is read-only — otherwise you could enter view
|
|
9
|
+
* mode but never leave it via the keyboard.
|
|
10
|
+
*/
|
|
11
|
+
export declare const actionToggleReadOnly: Action;
|
|
6
12
|
export declare const viewActions: readonly Action[];
|
|
7
13
|
//# sourceMappingURL=actionView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionView.d.ts","sourceRoot":"","sources":["../../src/actions/actionView.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;GAEG;AAEH,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"actionView.d.ts","sourceRoot":"","sources":["../../src/actions/actionView.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;GAEG;AAEH,eAAO,MAAM,gBAAgB,EAAE,MAW9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAWlC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAA6C,CAAC"}
|
|
@@ -5,12 +5,30 @@ export const actionToggleGrid = {
|
|
|
5
5
|
id: "toggle-grid",
|
|
6
6
|
label: "Toggle grid",
|
|
7
7
|
category: "other",
|
|
8
|
+
viewMode: true,
|
|
8
9
|
hotkey: { key: "g" },
|
|
9
10
|
uiKind: "toggle",
|
|
10
|
-
checked: ({ editor }) => editor.
|
|
11
|
+
checked: ({ editor }) => editor.gridEnabled,
|
|
11
12
|
perform: ({ editor }) => {
|
|
12
13
|
editor.toggleGrid();
|
|
13
14
|
},
|
|
14
15
|
};
|
|
15
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Read-only / view mode toggle (`⌥R`). Flagged `viewMode` so it stays
|
|
18
|
+
* live once the editor is read-only — otherwise you could enter view
|
|
19
|
+
* mode but never leave it via the keyboard.
|
|
20
|
+
*/
|
|
21
|
+
export const actionToggleReadOnly = {
|
|
22
|
+
id: "toggle-read-only",
|
|
23
|
+
label: "Read-only mode",
|
|
24
|
+
category: "other",
|
|
25
|
+
viewMode: true,
|
|
26
|
+
hotkey: { key: "r", alt: true },
|
|
27
|
+
uiKind: "toggle",
|
|
28
|
+
checked: ({ editor }) => editor.readOnly,
|
|
29
|
+
perform: ({ editor }) => {
|
|
30
|
+
editor.toggleReadOnly();
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
export const viewActions = [actionToggleGrid, actionToggleReadOnly];
|
|
16
34
|
//# sourceMappingURL=actionView.js.map
|