@nextcloud/excalidraw-common 0.18.0-4e1c0ab → 0.18.0-nc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/dist/dev/index.js +204 -85
  2. package/dist/dev/index.js.map +3 -3
  3. package/dist/prod/index.js +3 -3
  4. package/dist/types/common/src/colors.d.ts +23 -1
  5. package/dist/types/common/src/constants.d.ts +66 -7
  6. package/dist/types/common/src/keys.d.ts +4 -0
  7. package/dist/types/common/src/points.d.ts +1 -1
  8. package/dist/types/common/src/random.d.ts +7 -0
  9. package/dist/types/common/src/utils.d.ts +6 -43
  10. package/dist/types/element/src/Scene.d.ts +16 -5
  11. package/dist/types/element/src/align.d.ts +2 -2
  12. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  13. package/dist/types/element/src/arrows/focus.d.ts +5 -2
  14. package/dist/types/element/src/binding.d.ts +28 -13
  15. package/dist/types/element/src/bounds.d.ts +24 -7
  16. package/dist/types/element/src/bucketFill.d.ts +110 -0
  17. package/dist/types/element/src/collision.d.ts +14 -5
  18. package/dist/types/element/src/comparisons.d.ts +8 -5
  19. package/dist/types/element/src/convertToShape.d.ts +23 -0
  20. package/dist/types/element/src/cropElement.d.ts +36 -4
  21. package/dist/types/element/src/delta.d.ts +23 -1
  22. package/dist/types/element/src/distribute.d.ts +2 -2
  23. package/dist/types/element/src/dragElements.d.ts +27 -0
  24. package/dist/types/element/src/duplicate.d.ts +64 -3
  25. package/dist/types/element/src/embeddable.d.ts +2 -2
  26. package/dist/types/element/src/flowchart.d.ts +11 -7
  27. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  28. package/dist/types/element/src/frame.d.ts +11 -10
  29. package/dist/types/element/src/groups.d.ts +10 -15
  30. package/dist/types/element/src/index.d.ts +6 -1
  31. package/dist/types/element/src/linearElementEditor.d.ts +27 -10
  32. package/dist/types/element/src/listMarker.d.ts +34 -0
  33. package/dist/types/element/src/mutateElement.d.ts +1 -1
  34. package/dist/types/element/src/newElement.d.ts +53 -3
  35. package/dist/types/element/src/renderElement.d.ts +21 -7
  36. package/dist/types/element/src/resizeElements.d.ts +8 -1
  37. package/dist/types/element/src/selection.d.ts +6 -12
  38. package/dist/types/element/src/shape.d.ts +27 -1
  39. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  40. package/dist/types/element/src/sortElements.d.ts +10 -0
  41. package/dist/types/element/src/stickyNote.d.ts +183 -0
  42. package/dist/types/element/src/textElement.d.ts +20 -9
  43. package/dist/types/element/src/transform.d.ts +26 -7
  44. package/dist/types/element/src/typeChecks.d.ts +29 -27
  45. package/dist/types/element/src/types.d.ts +43 -7
  46. package/dist/types/element/src/utils.d.ts +15 -4
  47. package/dist/types/element/src/zindex.d.ts +2 -2
  48. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +87 -18
  49. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  50. package/dist/types/excalidraw/actions/actionBoundText.d.ts +74 -203
  51. package/dist/types/excalidraw/actions/actionCanvas.d.ts +266 -941
  52. package/dist/types/excalidraw/actions/actionClipboard.d.ts +58 -12
  53. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +29 -6
  54. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +4 -518
  55. package/dist/types/excalidraw/actions/actionDeselect.d.ts +30 -7
  56. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  57. package/dist/types/excalidraw/actions/actionElementLink.d.ts +29 -6
  58. package/dist/types/excalidraw/actions/actionElementLock.d.ts +59 -13
  59. package/dist/types/excalidraw/actions/actionExport.d.ts +64 -18
  60. package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -0
  61. package/dist/types/excalidraw/actions/actionFrame.d.ts +114 -651
  62. package/dist/types/excalidraw/actions/actionGroup.d.ts +73 -27
  63. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +84 -9
  64. package/dist/types/excalidraw/actions/actionLink.d.ts +30 -7
  65. package/dist/types/excalidraw/actions/actionMenu.d.ts +29 -6
  66. package/dist/types/excalidraw/actions/actionProperties.d.ts +96 -34
  67. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +34 -11
  68. package/dist/types/excalidraw/actions/actionStyles.d.ts +30 -7
  69. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +1 -1
  70. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +30 -7
  71. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +33 -11
  72. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +30 -7
  73. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +30 -7
  74. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +33 -11
  75. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  76. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleShowHints.d.ts} +45 -19
  77. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +30 -7
  78. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +31 -8
  79. package/dist/types/excalidraw/actions/actionToggleWrap.d.ts +12 -0
  80. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +30 -7
  81. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  82. package/dist/types/excalidraw/actions/index.d.ts +3 -2
  83. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  84. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  85. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  86. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  87. package/dist/types/excalidraw/appState.d.ts +34 -10
  88. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  89. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  90. package/dist/types/excalidraw/components/App.arrowText.d.ts +70 -0
  91. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  92. package/dist/types/excalidraw/components/App.clipboard.d.ts +31 -0
  93. package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
  94. package/dist/types/excalidraw/components/App.d.ts +324 -111
  95. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  96. package/dist/types/excalidraw/components/App.duplicate.d.ts +101 -0
  97. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  98. package/dist/types/excalidraw/components/App.modifiers.d.ts +38 -0
  99. package/dist/types/excalidraw/components/App.pan.d.ts +62 -0
  100. package/dist/types/excalidraw/components/App.selection.d.ts +265 -0
  101. package/dist/types/excalidraw/components/App.selectionTool.d.ts +93 -0
  102. package/dist/types/excalidraw/components/App.text.d.ts +146 -0
  103. package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
  104. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  105. package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
  106. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  107. package/dist/types/excalidraw/components/App.wrap.d.ts +31 -0
  108. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -3
  109. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  110. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +5 -1
  111. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  112. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  113. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  114. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  115. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  116. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  117. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  118. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  119. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  120. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  121. package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
  122. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +4 -1
  123. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  124. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  125. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  126. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  127. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  128. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -2
  129. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  130. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +3 -1
  131. package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +3 -1
  132. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +6 -2
  133. package/dist/types/excalidraw/components/LibraryUnit.d.ts +7 -2
  134. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  135. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  136. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  137. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  138. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  139. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  140. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  141. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  142. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  143. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  144. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  145. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  146. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  147. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  148. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  149. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  150. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  151. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  152. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  153. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  154. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  155. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  156. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  157. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  158. package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
  159. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  160. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  161. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  162. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  163. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  164. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +3 -1
  165. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
  166. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  167. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  168. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  169. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  170. package/dist/types/excalidraw/components/icons.d.ts +7 -1
  171. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +10 -4
  172. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  173. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  174. package/dist/types/excalidraw/data/blob.d.ts +70 -24
  175. package/dist/types/excalidraw/data/index.d.ts +4 -4
  176. package/dist/types/excalidraw/data/json.d.ts +41 -18
  177. package/dist/types/excalidraw/data/library.d.ts +1 -1
  178. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  179. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  180. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  181. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  182. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  183. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
  184. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  185. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  186. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  187. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  188. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  189. package/dist/types/excalidraw/renderer/helpers.d.ts +25 -0
  190. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +2 -4
  191. package/dist/types/excalidraw/scene/Renderer.d.ts +489 -20
  192. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  193. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  194. package/dist/types/excalidraw/scene/types.d.ts +7 -4
  195. package/dist/types/excalidraw/snapping.d.ts +7 -7
  196. package/dist/types/excalidraw/types.d.ts +574 -29
  197. package/dist/types/excalidraw/viewport.d.ts +302 -0
  198. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +13 -3
  199. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  200. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  201. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  202. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  203. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  204. package/dist/types/math/src/constants.d.ts +0 -1
  205. package/dist/types/math/src/curve.d.ts +23 -13
  206. package/dist/types/math/src/index.d.ts +1 -0
  207. package/dist/types/math/src/pca.d.ts +79 -0
  208. package/dist/types/math/src/point.d.ts +1 -0
  209. package/dist/types/math/src/polygon.d.ts +25 -1
  210. package/dist/types/math/src/segment.d.ts +6 -0
  211. package/dist/types/utils/src/export.d.ts +4 -3
  212. package/dist/types/utils/src/index.d.ts +1 -2
  213. package/dist/types/utils/src/shape.d.ts +2 -2
  214. package/package.json +1 -1
  215. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  216. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  217. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  218. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  219. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  220. package/dist/types/excalidraw/components/shapes.d.ts +0 -263
  221. package/dist/types/excalidraw/cursor.d.ts +0 -5
  222. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  223. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  224. package/dist/types/utils/src/bbox.d.ts +0 -9
  225. package/dist/types/utils/src/withinBounds.d.ts +0 -19
@@ -1,34 +1,26 @@
1
- import type { ExcalidrawElement, ExcalidrawLinearElement, ExcalidrawTextElement } from "@nextcloud/excalidraw-element/types";
2
- import type { Mutable } from "@nextcloud/excalidraw-common/utility-types";
3
- import type { AppState } from "../types";
1
+ import type { Scene } from "@nextcloud/excalidraw-element";
2
+ import type { ExcalidrawElement, ExcalidrawLinearElement, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, NonDeleted, NonDeletedExcalidrawElement } from "@nextcloud/excalidraw-element/types";
3
+ import type { ActionResult } from "./types";
4
+ import type { AppClassProperties, AppState } from "../types";
5
+ /**
6
+ * Frees the container's text as it rendered: wrapped the same, at a fixed
7
+ * width.
8
+ */
9
+ export declare const unbindTextFromContainer: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, scene: Scene) => void;
4
10
  export declare const actionUnbindText: {
5
11
  name: "unbindText";
6
12
  label: string;
7
13
  trackEvent: {
8
14
  category: "element";
9
15
  };
10
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
11
- perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
16
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean;
17
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: AppClassProperties) => {
12
18
  elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[];
13
- appState: Readonly<AppState>;
14
- captureUpdate: "IMMEDIATELY";
15
- };
16
- } & {
17
- keyTest?: undefined;
18
- };
19
- export declare const actionBindText: {
20
- name: "bindText";
21
- label: string;
22
- trackEvent: {
23
- category: "element";
24
- };
25
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
26
- perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
27
- elements: ExcalidrawElement[];
28
19
  appState: {
29
- selectedElementIds: {
30
- [x: string]: true;
31
- };
20
+ selectedElementIds: AppState["selectedElementIds"];
21
+ selectedGroupIds: AppState["selectedGroupIds"];
22
+ editingGroupId: AppState["editingGroupId"];
23
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
32
24
  contextMenu: {
33
25
  items: import("../components/ContextMenu").ContextMenuItems;
34
26
  top: number;
@@ -38,30 +30,43 @@ export declare const actionBindText: {
38
30
  isLoading: boolean;
39
31
  errorMessage: React.ReactNode;
40
32
  activeEmbeddable: {
41
- element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
33
+ element: NonDeletedExcalidrawElement;
42
34
  state: "hover" | "active";
43
35
  } | null;
44
- newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
45
- resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
46
- multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawLinearElement> | null;
47
- selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
36
+ newElement: NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
37
+ resizingElement: NonDeletedExcalidrawElement | null;
38
+ multiElement: NonDeleted<ExcalidrawLinearElement> | null;
39
+ selectionElement: NonDeletedExcalidrawElement | null;
48
40
  isBindingEnabled: boolean;
41
+ boxSelectionMode: import("../types").BoxSelectionMode;
49
42
  bindingPreference: "enabled" | "disabled";
50
43
  isMidpointSnappingEnabled: boolean;
51
- startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
44
+ showHints: boolean;
45
+ inputDevice: import("../types").InputDevice;
52
46
  suggestedBinding: {
53
- element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
47
+ element: NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
54
48
  midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
55
49
  } | null;
56
- frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
50
+ textToolHover: {
51
+ type: "text";
52
+ elementId: ExcalidrawElement["id"];
53
+ } | {
54
+ type: "container";
55
+ elementId: ExcalidrawElement["id"];
56
+ } | {
57
+ type: "arrow";
58
+ elementId: import("@nextcloud/excalidraw-element/types").ExcalidrawArrowElement["id"];
59
+ anchor: "start" | "end" | "label";
60
+ } | null;
61
+ frameToHighlight: NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
57
62
  frameRendering: {
58
63
  enabled: boolean;
59
64
  name: boolean;
60
65
  outline: boolean;
61
66
  clip: boolean;
62
67
  };
63
- editingFrame: string | null;
64
- elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
68
+ editingFrame: import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement["id"] | null;
69
+ elementsToHighlight: readonly NonDeletedExcalidrawElement[] | null;
65
70
  editingTextElement: ExcalidrawTextElement | null;
66
71
  activeTool: {
67
72
  lastActiveTool: import("../types").ActiveTool | null;
@@ -79,11 +84,14 @@ export declare const actionBindText: {
79
84
  exportWithDarkMode: boolean;
80
85
  exportScale: number;
81
86
  currentItemStrokeColor: string;
87
+ currentItemStickynoteStrokeColor: string;
88
+ currentItemStickynoteBackgroundColor: string;
82
89
  currentItemBackgroundColor: string;
83
90
  currentItemFillStyle: ExcalidrawElement["fillStyle"];
84
- currentItemStrokeWidth: number;
91
+ currentItemStrokeWidthKey: import("@nextcloud/excalidraw-common").StrokeWidthKey;
85
92
  currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
86
93
  currentItemRoughness: number;
94
+ currentItemStrokeVariability: import("@nextcloud/excalidraw-element/types").StrokeVariability;
87
95
  currentItemOpacity: number;
88
96
  currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
89
97
  currentItemFontSize: number;
@@ -96,6 +104,7 @@ export declare const actionBindText: {
96
104
  viewBackgroundColor: string;
97
105
  scrollX: number;
98
106
  scrollY: number;
107
+ scrollConstraints: import("../types").ScrollConstraints | null;
99
108
  cursorButton: "up" | "down";
100
109
  scrolledOutside: boolean;
101
110
  name: string | null;
@@ -146,10 +155,6 @@ export declare const actionBindText: {
146
155
  gridStep: number;
147
156
  gridModeEnabled: boolean;
148
157
  viewModeEnabled: boolean;
149
- selectedGroupIds: {
150
- [groupId: string]: boolean;
151
- };
152
- editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
153
158
  width: number;
154
159
  height: number;
155
160
  offsetTop: number;
@@ -161,15 +166,12 @@ export declare const actionBindText: {
161
166
  panels: number;
162
167
  };
163
168
  showHyperlinkPopup: false | "info" | "editor";
164
- selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
165
169
  snapLines: readonly import("../snapping").SnapLine[];
166
170
  originSnapOffset: {
167
171
  x: number;
168
172
  y: number;
169
173
  } | null;
170
174
  objectsSnapModeEnabled: boolean;
171
- userToFollow: import("../types").UserToFollow | null;
172
- followedBy: Set<import("../types").SocketId>;
173
175
  isCropping: boolean;
174
176
  croppingElementId: ExcalidrawElement["id"] | null;
175
177
  searchMatches: Readonly<{
@@ -181,180 +183,49 @@ export declare const actionBindText: {
181
183
  [groupId: string]: true;
182
184
  };
183
185
  bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
186
+ colorTopPicks: {
187
+ elementStroke: readonly string[] | null;
188
+ elementBackground: readonly string[] | null;
189
+ bucketFill: readonly string[] | null;
190
+ stickyNoteStroke: readonly string[] | null;
191
+ stickyNoteBackground: readonly string[] | null;
192
+ };
193
+ fontTopPicks: readonly import("@nextcloud/excalidraw-element/types").FontFamilyValues[] | null;
184
194
  };
185
195
  captureUpdate: "IMMEDIATELY";
186
196
  };
187
197
  } & {
188
198
  keyTest?: undefined;
189
199
  };
200
+ export declare const actionBindText: {
201
+ name: "bindText";
202
+ label: string;
203
+ trackEvent: {
204
+ category: "element";
205
+ };
206
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean;
207
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: AppClassProperties) => ActionResult;
208
+ } & {
209
+ keyTest?: undefined;
210
+ };
211
+ /**
212
+ * A note and its label share one ink: the text the user styled wins, unless it
213
+ * is transparent (a note's label never is).
214
+ */
215
+ export declare const getStickyNoteInk: (textElement: ExcalidrawTextElement, container: ExcalidrawElement) => string | null;
216
+ /** binds the text to the (label-less) container, selecting the container */
217
+ export declare const bindTextToContainer: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, textElement: ExcalidrawTextElement, container: NonDeleted<ExcalidrawTextContainer>, app: AppClassProperties) => ActionResult;
218
+ export declare const pushContainerBelowText: (elements: readonly ExcalidrawElement[], container: ExcalidrawElement, textElement: ExcalidrawTextElement) => ExcalidrawElement[];
190
219
  export declare const actionWrapTextInContainer: {
191
220
  name: "wrapTextInContainer";
192
221
  label: string;
193
222
  trackEvent: {
194
223
  category: "element";
195
224
  };
196
- predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
197
- perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
198
- elements: readonly ExcalidrawElement[];
199
- appState: {
200
- selectedElementIds: Mutable<Readonly<{
201
- [id: string]: true;
202
- }>>;
203
- contextMenu: {
204
- items: import("../components/ContextMenu").ContextMenuItems;
205
- top: number;
206
- left: number;
207
- } | null;
208
- showWelcomeScreen: boolean;
209
- isLoading: boolean;
210
- errorMessage: React.ReactNode;
211
- activeEmbeddable: {
212
- element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
213
- state: "hover" | "active";
214
- } | null;
215
- newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
216
- resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
217
- multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawLinearElement> | null;
218
- selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
219
- isBindingEnabled: boolean;
220
- bindingPreference: "enabled" | "disabled";
221
- isMidpointSnappingEnabled: boolean;
222
- startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
223
- suggestedBinding: {
224
- element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
225
- midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
226
- } | null;
227
- frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
228
- frameRendering: {
229
- enabled: boolean;
230
- name: boolean;
231
- outline: boolean;
232
- clip: boolean;
233
- };
234
- editingFrame: string | null;
235
- elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
236
- editingTextElement: ExcalidrawTextElement | null;
237
- activeTool: {
238
- lastActiveTool: import("../types").ActiveTool | null;
239
- locked: boolean;
240
- fromSelection: boolean;
241
- } & import("../types").ActiveTool;
242
- preferredSelectionTool: {
243
- type: "selection" | "lasso";
244
- initialized: boolean;
245
- };
246
- penMode: boolean;
247
- penDetected: boolean;
248
- exportBackground: boolean;
249
- exportEmbedScene: boolean;
250
- exportWithDarkMode: boolean;
251
- exportScale: number;
252
- currentItemStrokeColor: string;
253
- currentItemBackgroundColor: string;
254
- currentItemFillStyle: ExcalidrawElement["fillStyle"];
255
- currentItemStrokeWidth: number;
256
- currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
257
- currentItemRoughness: number;
258
- currentItemOpacity: number;
259
- currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
260
- currentItemFontSize: number;
261
- currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
262
- currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
263
- currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
264
- currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
265
- currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
266
- currentItemArrowType: "sharp" | "round" | "elbow";
267
- viewBackgroundColor: string;
268
- scrollX: number;
269
- scrollY: number;
270
- cursorButton: "up" | "down";
271
- scrolledOutside: boolean;
272
- name: string | null;
273
- isResizing: boolean;
274
- isRotating: boolean;
275
- zoom: import("../types").Zoom;
276
- openMenu: "canvas" | null;
277
- openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
278
- openSidebar: {
279
- name: import("../types").SidebarName;
280
- tab?: import("../types").SidebarTabName;
281
- } | null;
282
- openDialog: null | {
283
- name: "imageExport" | "help" | "jsonExport";
284
- } | {
285
- name: "ttd";
286
- tab: "text-to-diagram" | "mermaid";
287
- } | {
288
- name: "commandPalette";
289
- } | {
290
- name: "settings";
291
- } | {
292
- name: "elementLinkSelector";
293
- sourceElementId: ExcalidrawElement["id"];
294
- } | {
295
- name: "charts";
296
- data: import("../charts").Spreadsheet;
297
- rawText: string;
298
- };
299
- defaultSidebarDockedPreference: boolean;
300
- lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
301
- hoveredElementIds: Readonly<{
302
- [id: string]: true;
303
- }>;
304
- previousSelectedElementIds: {
305
- [id: string]: true;
306
- };
307
- selectedElementsAreBeingDragged: boolean;
308
- shouldCacheIgnoreZoom: boolean;
309
- toast: {
310
- message: React.ReactNode;
311
- closable?: boolean;
312
- duration?: number;
313
- } | null;
314
- zenModeEnabled: boolean;
315
- theme: import("@nextcloud/excalidraw-element/types").Theme;
316
- gridSize: number;
317
- gridStep: number;
318
- gridModeEnabled: boolean;
319
- viewModeEnabled: boolean;
320
- selectedGroupIds: {
321
- [groupId: string]: boolean;
322
- };
323
- editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
324
- width: number;
325
- height: number;
326
- offsetTop: number;
327
- offsetLeft: number;
328
- fileHandle: FileSystemFileHandle | null;
329
- collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
330
- stats: {
331
- open: boolean;
332
- panels: number;
333
- };
334
- showHyperlinkPopup: false | "info" | "editor";
335
- selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
336
- snapLines: readonly import("../snapping").SnapLine[];
337
- originSnapOffset: {
338
- x: number;
339
- y: number;
340
- } | null;
341
- objectsSnapModeEnabled: boolean;
342
- userToFollow: import("../types").UserToFollow | null;
343
- followedBy: Set<import("../types").SocketId>;
344
- isCropping: boolean;
345
- croppingElementId: ExcalidrawElement["id"] | null;
346
- searchMatches: Readonly<{
347
- focusedId: ExcalidrawElement["id"] | null;
348
- matches: readonly import("../types").SearchMatch[];
349
- }> | null;
350
- activeLockedId: string | null;
351
- lockedMultiSelections: {
352
- [groupId: string]: true;
353
- };
354
- bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
355
- };
356
- captureUpdate: "IMMEDIATELY";
357
- };
225
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean;
226
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: AppClassProperties) => ActionResult;
358
227
  } & {
359
228
  keyTest?: undefined;
360
229
  };
230
+ /** wraps each (unbound) text in a new container, selecting the containers */
231
+ export declare const wrapTextsInContainers: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, textElements: readonly ExcalidrawTextElement[], app: AppClassProperties) => ActionResult;