@zsviczian/excalidraw 0.14.2-obsidian-4 → 0.15.2-obsidian-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 (242) hide show
  1. package/README.md +2 -2
  2. package/dist/excalidraw.development.js +248 -269
  3. package/dist/excalidraw.production.min.js +1 -1
  4. package/package.json +1 -1
  5. package/types/actions/actionAddToLibrary.d.ts +375 -372
  6. package/types/actions/actionAlign.d.ts +91 -91
  7. package/types/actions/actionBoundText.d.ts +286 -284
  8. package/types/actions/actionCanvas.d.ts +1325 -1315
  9. package/types/actions/actionClipboard.d.ts +722 -717
  10. package/types/actions/actionDeleteSelected.d.ts +412 -409
  11. package/types/actions/actionDistribute.d.ts +33 -33
  12. package/types/actions/actionDuplicateSelection.d.ts +22 -22
  13. package/types/actions/actionExport.d.ts +1190 -1181
  14. package/types/actions/actionFinalize.d.ts +258 -256
  15. package/types/actions/actionFlip.d.ts +35 -35
  16. package/types/actions/actionGroup.d.ts +45 -45
  17. package/types/actions/actionHistory.d.ts +6 -6
  18. package/types/actions/actionLinearEditor.d.ts +136 -135
  19. package/types/actions/actionMenu.d.ts +413 -410
  20. package/types/actions/actionNavigate.d.ts +14 -14
  21. package/types/actions/actionProperties.d.ts +1727 -1714
  22. package/types/actions/actionSelectAll.d.ts +16 -16
  23. package/types/actions/actionStyles.d.ts +150 -149
  24. package/types/actions/actionToggleGridMode.d.ts +139 -138
  25. package/types/actions/actionToggleLock.d.ts +136 -135
  26. package/types/actions/actionToggleStats.d.ts +136 -135
  27. package/types/actions/actionToggleViewMode.d.ts +138 -137
  28. package/types/actions/actionToggleZenMode.d.ts +138 -137
  29. package/types/actions/actionZindex.d.ts +67 -67
  30. package/types/actions/index.d.ts +24 -24
  31. package/types/actions/manager.d.ts +21 -21
  32. package/types/actions/register.d.ts +5 -5
  33. package/types/actions/shortcuts.d.ts +4 -4
  34. package/types/actions/types.d.ts +44 -44
  35. package/types/align.d.ts +6 -6
  36. package/types/analytics.d.ts +1 -1
  37. package/types/appState.d.ts +78 -78
  38. package/types/bug-issue-template.d.ts +2 -0
  39. package/types/charts.d.ts +27 -27
  40. package/types/clients.d.ts +6 -6
  41. package/types/clipboard.d.ts +25 -25
  42. package/types/colors.d.ts +6 -6
  43. package/types/components/Actions.d.ts +36 -36
  44. package/types/components/ActiveConfirmDialog.d.ts +24 -24
  45. package/types/components/ActiveFile.d.ts +7 -0
  46. package/types/components/App.d.ts +248 -248
  47. package/types/components/Avatar.d.ts +11 -11
  48. package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +4 -0
  49. package/types/components/BraveMeasureTextError.d.ts +2 -2
  50. package/types/components/Button.d.ts +15 -15
  51. package/types/components/ButtonIconSelect.d.ts +19 -11
  52. package/types/components/Card.d.ts +7 -7
  53. package/types/components/CheckboxItem.d.ts +8 -8
  54. package/types/components/ClearCanvas.d.ts +4 -0
  55. package/types/components/CollabButton.d.ts +7 -0
  56. package/types/components/ColorPicker.d.ts +19 -19
  57. package/types/components/ConfirmDialog.d.ts +10 -10
  58. package/types/components/ContextMenu.d.ts +15 -15
  59. package/types/components/DarkModeToggle.d.ts +7 -7
  60. package/types/components/Dialog.d.ts +14 -14
  61. package/types/components/DialogActionButton.d.ts +10 -10
  62. package/types/components/EncryptedIcon.d.ts +2 -0
  63. package/types/components/ErrorDialog.d.ts +5 -5
  64. package/types/components/FixedSideContainer.d.ts +9 -9
  65. package/types/components/Footer.d.ts +10 -0
  66. package/types/components/HandButton.d.ts +10 -10
  67. package/types/components/HelpButton.d.ts +7 -7
  68. package/types/components/HelpDialog.d.ts +4 -4
  69. package/types/components/HelpIcon.d.ts +8 -0
  70. package/types/components/HintViewer.d.ts +11 -11
  71. package/types/components/IconPicker.d.ts +13 -13
  72. package/types/components/ImageExportDialog.d.ts +18 -18
  73. package/types/components/InitializeApp.d.ts +10 -10
  74. package/types/components/Island.d.ts +10 -10
  75. package/types/components/JSONExportDialog.d.ts +15 -15
  76. package/types/components/LayerUI.d.ts +37 -37
  77. package/types/components/LibraryButton.d.ts +8 -8
  78. package/types/components/LibraryMenu.d.ts +25 -25
  79. package/types/components/LibraryMenuBrowseButton.d.ts +7 -7
  80. package/types/components/LibraryMenuHeaderContent.d.ts +35 -35
  81. package/types/components/LibraryMenuItems.d.ts +15 -15
  82. package/types/components/LibraryUnit.d.ts +11 -11
  83. package/types/components/LoadingMessage.d.ts +6 -6
  84. package/types/components/LockButton.d.ts +10 -10
  85. package/types/components/MenuItem.d.ts +11 -0
  86. package/types/components/MenuUtils.d.ts +2 -0
  87. package/types/components/MobileMenu.d.ts +26 -26
  88. package/types/components/Modal.d.ts +13 -13
  89. package/types/components/PasteChartDialog.d.ts +9 -9
  90. package/types/components/PenModeButton.d.ts +12 -12
  91. package/types/components/Popover.d.ts +15 -15
  92. package/types/components/ProjectName.d.ts +10 -10
  93. package/types/components/PublishLibrary.d.ts +16 -16
  94. package/types/components/Section.d.ts +6 -6
  95. package/types/components/Sidebar/Sidebar.d.ts +73 -73
  96. package/types/components/Sidebar/SidebarHeader.d.ts +20 -20
  97. package/types/components/Sidebar/common.d.ts +16 -16
  98. package/types/components/SidebarLockButton.d.ts +8 -0
  99. package/types/components/SingleLibraryItem.d.ts +10 -10
  100. package/types/components/Spinner.d.ts +6 -6
  101. package/types/components/Stack.d.ts +15 -15
  102. package/types/components/Stats.d.ts +11 -11
  103. package/types/components/Toast.d.ts +7 -7
  104. package/types/components/ToolButton.d.ts +46 -46
  105. package/types/components/Tooltip.d.ts +17 -17
  106. package/types/components/TopErrorBoundary.d.ts +15 -0
  107. package/types/components/UserList.d.ts +8 -8
  108. package/types/components/WelcomeScreen.d.ts +8 -0
  109. package/types/components/WelcomeScreenDecor.d.ts +6 -0
  110. package/types/components/context/tunnels.d.ts +16 -16
  111. package/types/components/dropdownMenu/DropdownMenu.d.ts +66 -66
  112. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  113. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  114. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -12
  115. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -6
  116. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -6
  117. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -13
  118. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  119. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +9 -9
  120. package/types/components/dropdownMenu/common.d.ts +6 -6
  121. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  122. package/types/components/footer/Footer.d.ts +12 -12
  123. package/types/components/footer/FooterCenter.d.ts +8 -8
  124. package/types/components/hoc/withInternalFallback.d.ts +4 -4
  125. package/types/components/hoc/withUpstreamOverride.d.ts +10 -10
  126. package/types/components/icons.d.ts +143 -142
  127. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +10 -10
  128. package/types/components/main-menu/DefaultItems.d.ts +44 -44
  129. package/types/components/main-menu/MainMenu.d.ts +60 -60
  130. package/types/components/mainMenu/DefaultItems.d.ts +44 -0
  131. package/types/components/mainMenu/MainMenu.d.ts +63 -0
  132. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -58
  133. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  134. package/types/components/welcome-screen/WelcomeScreen.d.ts +85 -85
  135. package/types/constants.d.ts +192 -170
  136. package/types/data/blob.d.ts +48 -48
  137. package/types/data/encode.d.ts +53 -53
  138. package/types/data/encryption.d.ts +9 -9
  139. package/types/data/filesystem.d.ts +19 -18
  140. package/types/data/image.d.ts +15 -15
  141. package/types/data/index.d.ts +13 -13
  142. package/types/data/json.d.ts +16 -16
  143. package/types/data/library.d.ts +96 -96
  144. package/types/data/resave.d.ts +5 -5
  145. package/types/data/restore.d.ts +21 -21
  146. package/types/data/types.d.ts +47 -47
  147. package/types/distribute.d.ts +6 -6
  148. package/types/element/Hyperlink.d.ts +156 -155
  149. package/types/element/binding.d.ts +33 -33
  150. package/types/element/bounds.d.ts +28 -28
  151. package/types/element/collision.d.ts +21 -21
  152. package/types/element/dragElements.d.ts +5 -5
  153. package/types/element/image.d.ts +32 -22
  154. package/types/element/index.d.ts +20 -20
  155. package/types/element/linearElementEditor.d.ts +271 -273
  156. package/types/element/mutateElement.d.ts +12 -12
  157. package/types/element/newElement.d.ts +85 -65
  158. package/types/element/resizeElements.d.ts +8 -8
  159. package/types/element/resizeTest.d.ts +13 -13
  160. package/types/element/showSelectedShapeActions.d.ts +3 -3
  161. package/types/element/sizeHelpers.d.ts +21 -21
  162. package/types/element/sortElements.d.ts +2 -2
  163. package/types/element/textElement.d.ts +80 -73
  164. package/types/element/textWysiwyg.d.ts +21 -21
  165. package/types/element/transformHandles.d.ts +28 -28
  166. package/types/element/typeChecks.d.ts +27 -27
  167. package/types/element/types.d.ts +150 -149
  168. package/types/errors.d.ts +8 -8
  169. package/types/excalidraw-app/CustomStats.d.ts +9 -0
  170. package/types/excalidraw-app/app_constants.d.ts +32 -0
  171. package/types/excalidraw-app/collab/Collab.d.ts +163 -0
  172. package/types/excalidraw-app/collab/Portal.d.ts +28 -0
  173. package/types/excalidraw-app/collab/RoomDialog.d.ts +13 -0
  174. package/types/excalidraw-app/collab/reconciliation.d.ts +10 -0
  175. package/types/excalidraw-app/components/ExportToExcalidrawPlus.d.ts +9 -0
  176. package/types/excalidraw-app/components/LanguageList.d.ts +4 -0
  177. package/types/excalidraw-app/components/icons.d.ts +1 -0
  178. package/types/excalidraw-app/data/FileManager.d.ts +66 -0
  179. package/types/excalidraw-app/data/LocalData.d.ts +32 -0
  180. package/types/excalidraw-app/data/Locker.d.ts +8 -0
  181. package/types/excalidraw-app/data/firebase.d.ts +25 -0
  182. package/types/excalidraw-app/data/index.d.ts +190 -0
  183. package/types/excalidraw-app/data/localStorage.d.ts +116 -0
  184. package/types/excalidraw-app/data/tabSync.d.ts +9 -0
  185. package/types/excalidraw-app/index.d.ts +26 -0
  186. package/types/ga.d.ts +63 -63
  187. package/types/gadirections.d.ts +8 -8
  188. package/types/galines.d.ts +22 -22
  189. package/types/gapoints.d.ts +7 -7
  190. package/types/gatransforms.d.ts +10 -10
  191. package/types/gesture.d.ts +6 -6
  192. package/types/groups.d.ts +27 -27
  193. package/types/history.d.ts +52 -52
  194. package/types/hooks/useCallbackRefState.d.ts +1 -1
  195. package/types/hooks/useOutsideClick.d.ts +2 -2
  196. package/types/i18n.d.ts +21 -21
  197. package/types/jotai.d.ts +122 -122
  198. package/types/keys.d.ts +77 -77
  199. package/types/math.d.ts +29 -29
  200. package/types/packages/common.webpack.dev.config.d.ts +72 -72
  201. package/types/packages/common.webpack.prod.config.d.ts +84 -84
  202. package/types/packages/excalidraw/dist/excalidraw.development.d.ts +4 -4
  203. package/types/packages/excalidraw/dist/excalidraw.production.min.d.ts +1 -1
  204. package/types/packages/excalidraw/entry.d.ts +1 -1
  205. package/types/packages/excalidraw/env.d.ts +1 -1
  206. package/types/packages/excalidraw/example/App.d.ts +14 -14
  207. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -5
  208. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -5
  209. package/types/packages/excalidraw/example/index.d.ts +1 -1
  210. package/types/packages/excalidraw/example/initialData.d.ts +172 -172
  211. package/types/packages/excalidraw/example/sidebar/ExampleSidebar.d.ts +5 -5
  212. package/types/packages/excalidraw/example/sidebar/Sidebar.d.ts +5 -0
  213. package/types/packages/excalidraw/index.d.ts +35 -35
  214. package/types/packages/excalidraw/main.d.ts +2 -2
  215. package/types/packages/excalidraw/publicPath.d.ts +1 -1
  216. package/types/packages/excalidraw/webpack.dev-server.config.d.ts +19 -19
  217. package/types/packages/excalidraw/webpack.dev.config.d.ts +69 -69
  218. package/types/packages/excalidraw/webpack.prod.config.d.ts +78 -78
  219. package/types/packages/utils.d.ts +42 -42
  220. package/types/points.d.ts +7 -7
  221. package/types/polyfill.d.ts +2 -2
  222. package/types/random.d.ts +4 -4
  223. package/types/renderer/easingFunctions.d.ts +6 -6
  224. package/types/renderer/renderElement.d.ts +36 -35
  225. package/types/renderer/renderScene.d.ts +41 -41
  226. package/types/renderer/roundRect.d.ts +11 -11
  227. package/types/scene/Fonts.d.ts +21 -21
  228. package/types/scene/Scene.d.ts +40 -40
  229. package/types/scene/comparisons.d.ts +10 -10
  230. package/types/scene/export.d.ts +23 -20
  231. package/types/scene/index.d.ts +5 -5
  232. package/types/scene/scroll.d.ts +17 -17
  233. package/types/scene/scrollbars.d.ts +16 -16
  234. package/types/scene/selection.d.ts +11 -11
  235. package/types/scene/types.d.ts +59 -59
  236. package/types/scene/zoom.d.ts +13 -13
  237. package/types/shapes.d.ts +62 -62
  238. package/types/types.d.ts +443 -442
  239. package/types/utility-types.d.ts +22 -22
  240. package/types/utils.d.ts +162 -162
  241. package/types/zindex.d.ts +6 -6
  242. package/dist/.DS_Store +0 -0
@@ -1,78 +1,78 @@
1
- declare const _exports: {
2
- mode: string;
3
- output: {
4
- libraryTarget: string;
5
- filename: string;
6
- publicPath: string;
7
- };
8
- resolve: {
9
- extensions: string[];
10
- };
11
- module: {
12
- rules: ({
13
- test: RegExp;
14
- exclude: RegExp;
15
- use: (string | {
16
- loader: string;
17
- } | {
18
- loader: string;
19
- options: {
20
- postcssOptions: {
21
- plugins: any[];
22
- };
23
- };
24
- })[];
25
- } | {
26
- test: RegExp;
27
- exclude: RegExp;
28
- use: ({
29
- loader: string;
30
- options: {
31
- transpileOnly: boolean;
32
- configFile: string;
33
- };
34
- } | {
35
- loader: string;
36
- options: {
37
- presets: (string | (string | {
38
- runtime: string;
39
- })[])[];
40
- plugins: string[];
41
- };
42
- })[];
43
- } | {
44
- test: RegExp;
45
- type: string;
46
- })[];
47
- };
48
- optimization: {
49
- sideEffects: boolean;
50
- minimize: boolean;
51
- minimizer: any[];
52
- splitChunks: {
53
- chunks: string;
54
- cacheGroups: {
55
- vendors: {
56
- test: RegExp;
57
- name: string;
58
- };
59
- };
60
- };
61
- };
62
- plugins: any[];
63
- externals: {
64
- react: {
65
- root: string;
66
- commonjs2: string;
67
- commonjs: string;
68
- amd: string;
69
- };
70
- "react-dom": {
71
- root: string;
72
- commonjs2: string;
73
- commonjs: string;
74
- amd: string;
75
- };
76
- };
77
- };
78
- export = _exports;
1
+ declare const _exports: {
2
+ mode: string;
3
+ output: {
4
+ libraryTarget: string;
5
+ filename: string;
6
+ publicPath: string;
7
+ };
8
+ resolve: {
9
+ extensions: string[];
10
+ };
11
+ module: {
12
+ rules: ({
13
+ test: RegExp;
14
+ exclude: RegExp;
15
+ use: (string | {
16
+ loader: string;
17
+ } | {
18
+ loader: string;
19
+ options: {
20
+ postcssOptions: {
21
+ plugins: any[];
22
+ };
23
+ };
24
+ })[];
25
+ } | {
26
+ test: RegExp;
27
+ exclude: RegExp;
28
+ use: ({
29
+ loader: string;
30
+ options: {
31
+ transpileOnly: boolean;
32
+ configFile: string;
33
+ };
34
+ } | {
35
+ loader: string;
36
+ options: {
37
+ presets: (string | (string | {
38
+ runtime: string;
39
+ })[])[];
40
+ plugins: string[];
41
+ };
42
+ })[];
43
+ } | {
44
+ test: RegExp;
45
+ type: string;
46
+ })[];
47
+ };
48
+ optimization: {
49
+ sideEffects: boolean;
50
+ minimize: boolean;
51
+ minimizer: any[];
52
+ splitChunks: {
53
+ chunks: string;
54
+ cacheGroups: {
55
+ vendors: {
56
+ test: RegExp;
57
+ name: string;
58
+ };
59
+ };
60
+ };
61
+ };
62
+ plugins: any[];
63
+ externals: {
64
+ react: {
65
+ root: string;
66
+ commonjs2: string;
67
+ commonjs: string;
68
+ amd: string;
69
+ };
70
+ "react-dom": {
71
+ root: string;
72
+ commonjs2: string;
73
+ commonjs: string;
74
+ amd: string;
75
+ };
76
+ };
77
+ };
78
+ export = _exports;
@@ -1,42 +1,42 @@
1
- import { AppState, BinaryFiles } from "../types";
2
- import { ExcalidrawElement, NonDeleted } from "../element/types";
3
- import { MIME_TYPES } from "../constants";
4
- export { MIME_TYPES };
5
- declare type ExportOpts = {
6
- elements: readonly NonDeleted<ExcalidrawElement>[];
7
- appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
- files: BinaryFiles | null;
9
- maxWidthOrHeight?: number;
10
- getDimensions?: (width: number, height: number) => {
11
- width: number;
12
- height: number;
13
- scale?: number;
14
- };
15
- };
16
- export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, }: ExportOpts & {
17
- exportPadding?: number | undefined;
18
- }) => Promise<HTMLCanvasElement>;
19
- export declare const exportToBlob: (opts: ExportOpts & {
20
- mimeType?: string;
21
- quality?: number;
22
- exportPadding?: number;
23
- }) => Promise<Blob>;
24
- export declare const exportToSvg: ({ elements, appState, files, exportPadding, }: Omit<ExportOpts, "getDimensions"> & {
25
- exportPadding?: number | undefined;
26
- }) => Promise<SVGSVGElement>;
27
- export declare const exportToClipboard: (opts: ExportOpts & {
28
- mimeType?: string;
29
- quality?: number;
30
- type: "png" | "svg" | "json";
31
- }) => Promise<void>;
32
- export { serializeAsJSON, serializeLibraryAsJSON } from "../data/json";
33
- export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "../data/blob";
34
- export { getFreeDrawSvgPath } from "../renderer/renderElement";
35
- export { getCommonBoundingBox } from "../element/bounds";
36
- export { getMaximumGroups } from "../groups";
37
- export { intersectElementWithLine } from "../element/collision";
38
- export { determineFocusDistance } from "../element/collision";
39
- export { measureText, wrapText, getDefaultLineHeight } from "../element/textElement";
40
- export { getFontString } from "../utils";
41
- export { getMaxContainerWidth } from "../element/textElement";
42
- export { mergeLibraryItems } from "../data/library";
1
+ import { AppState, BinaryFiles } from "../types";
2
+ import { ExcalidrawElement, NonDeleted } from "../element/types";
3
+ import { MIME_TYPES } from "../constants";
4
+ export { MIME_TYPES };
5
+ declare type ExportOpts = {
6
+ elements: readonly NonDeleted<ExcalidrawElement>[];
7
+ appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
+ files: BinaryFiles | null;
9
+ maxWidthOrHeight?: number;
10
+ getDimensions?: (width: number, height: number) => {
11
+ width: number;
12
+ height: number;
13
+ scale?: number;
14
+ };
15
+ };
16
+ export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, }: ExportOpts & {
17
+ exportPadding?: number | undefined;
18
+ }) => Promise<HTMLCanvasElement>;
19
+ export declare const exportToBlob: (opts: ExportOpts & {
20
+ mimeType?: string;
21
+ quality?: number;
22
+ exportPadding?: number;
23
+ }) => Promise<Blob>;
24
+ export declare const exportToSvg: ({ elements, appState, files, exportPadding, }: Omit<ExportOpts, "getDimensions"> & {
25
+ exportPadding?: number | undefined;
26
+ }) => Promise<SVGSVGElement>;
27
+ export declare const exportToClipboard: (opts: ExportOpts & {
28
+ mimeType?: string;
29
+ quality?: number;
30
+ type: "png" | "svg" | "json";
31
+ }) => Promise<void>;
32
+ export { serializeAsJSON, serializeLibraryAsJSON } from "../data/json";
33
+ export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "../data/blob";
34
+ export { getFreeDrawSvgPath } from "../renderer/renderElement";
35
+ export { getCommonBoundingBox } from "../element/bounds";
36
+ export { getMaximumGroups } from "../groups";
37
+ export { intersectElementWithLine } from "../element/collision";
38
+ export { determineFocusDistance } from "../element/collision";
39
+ export { measureText, wrapText, getDefaultLineHeight } from "../element/textElement";
40
+ export { getFontString } from "../utils";
41
+ export { getMaxContainerWidth } from "../element/textElement";
42
+ export { mergeLibraryItems } from "../data/library";
package/types/points.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { Point } from "./types";
2
- export declare const getSizeFromPoints: (points: readonly Point[]) => {
3
- width: number;
4
- height: number;
5
- };
6
- /** @arg dimension, 0 for rescaling only x, 1 for y */
7
- export declare const rescalePoints: (dimension: 0 | 1, newSize: number, points: readonly Point[], normalize: boolean) => Point[];
1
+ import { Point } from "./types";
2
+ export declare const getSizeFromPoints: (points: readonly Point[]) => {
3
+ width: number;
4
+ height: number;
5
+ };
6
+ /** @arg dimension, 0 for rescaling only x, 1 for y */
7
+ export declare const rescalePoints: (dimension: 0 | 1, newSize: number, points: readonly Point[], normalize: boolean) => Point[];
@@ -1,2 +1,2 @@
1
- declare const polyfill: () => void;
2
- export default polyfill;
1
+ declare const polyfill: () => void;
2
+ export default polyfill;
package/types/random.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const randomInteger: () => number;
2
- export declare const reseed: (seed: number) => void;
3
- export declare const randomId: () => string;
4
- export declare const obsidianId: (size?: number | undefined) => string;
1
+ export declare const randomInteger: () => number;
2
+ export declare const reseed: (seed: number) => void;
3
+ export declare const randomId: () => string;
4
+ export declare const obsidianId: (size?: number | undefined) => string;
@@ -1,6 +1,6 @@
1
- declare type EasingFunction = (progress: number) => number;
2
- interface EasingDictionary {
3
- [easing: string]: EasingFunction;
4
- }
5
- declare const easingsFunctions: EasingDictionary;
6
- export default easingsFunctions;
1
+ declare type EasingFunction = (progress: number) => number;
2
+ interface EasingDictionary {
3
+ [easing: string]: EasingFunction;
4
+ }
5
+ declare const easingsFunctions: EasingDictionary;
6
+ export default easingsFunctions;
@@ -1,35 +1,36 @@
1
- import { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement } from "../element/types";
2
- import { RoughCanvas } from "roughjs/bin/canvas";
3
- import { Drawable, Options } from "roughjs/bin/core";
4
- import { RoughSVG } from "roughjs/bin/svg";
5
- import { RenderConfig } from "../scene/types";
6
- import { AppState, BinaryFiles } from "../types";
7
- export interface ExcalidrawElementWithCanvas {
8
- element: ExcalidrawElement | ExcalidrawTextElement;
9
- canvas: HTMLCanvasElement;
10
- theme: RenderConfig["theme"];
11
- scale: number;
12
- canvasOffsetX: number;
13
- canvasOffsetY: number;
14
- boundTextElementVersion: number | null;
15
- }
16
- export declare const DEFAULT_LINK_SIZE = 14;
17
- declare type ElementShape = Drawable | Drawable[] | null;
18
- declare type ElementShapes = {
19
- freedraw: Drawable | null;
20
- arrow: Drawable[];
21
- line: Drawable[];
22
- text: null;
23
- image: null;
24
- };
25
- export declare const getShapeForElement: <T extends ExcalidrawElement>(element: T) => T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : Drawable | null | undefined;
26
- export declare const setShapeForElement: <T extends ExcalidrawElement>(element: T, shape: T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable) => WeakMap<ExcalidrawElement, ElementShape>;
27
- export declare const invalidateShapeForElement: (element: ExcalidrawElement) => boolean;
28
- export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean) => Options;
29
- export declare const renderElement: (element: NonDeletedExcalidrawElement, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: RenderConfig, appState: AppState) => void;
30
- export declare const renderElementToSvg: (element: NonDeletedExcalidrawElement, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, offsetX: number, offsetY: number, exportWithDarkMode?: boolean) => void;
31
- export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
32
- export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
33
- export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
34
- export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
35
- export {};
1
+ import { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement } from "../element/types";
2
+ import { RoughCanvas } from "roughjs/bin/canvas";
3
+ import { Drawable, Options } from "roughjs/bin/core";
4
+ import { RoughSVG } from "roughjs/bin/svg";
5
+ import { RenderConfig } from "../scene/types";
6
+ import { AppState, BinaryFiles } from "../types";
7
+ export interface ExcalidrawElementWithCanvas {
8
+ element: ExcalidrawElement | ExcalidrawTextElement;
9
+ canvas: HTMLCanvasElement;
10
+ theme: RenderConfig["theme"];
11
+ scale: number;
12
+ zoomValue: RenderConfig["zoom"]["value"];
13
+ canvasOffsetX: number;
14
+ canvasOffsetY: number;
15
+ boundTextElementVersion: number | null;
16
+ }
17
+ export declare const DEFAULT_LINK_SIZE = 14;
18
+ declare type ElementShape = Drawable | Drawable[] | null;
19
+ declare type ElementShapes = {
20
+ freedraw: Drawable | null;
21
+ arrow: Drawable[];
22
+ line: Drawable[];
23
+ text: null;
24
+ image: null;
25
+ };
26
+ export declare const getShapeForElement: <T extends ExcalidrawElement>(element: T) => T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : Drawable | null | undefined;
27
+ export declare const setShapeForElement: <T extends ExcalidrawElement>(element: T, shape: T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable) => WeakMap<ExcalidrawElement, ElementShape>;
28
+ export declare const invalidateShapeForElement: (element: ExcalidrawElement) => boolean;
29
+ export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean) => Options;
30
+ export declare const renderElement: (element: NonDeletedExcalidrawElement, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: RenderConfig, appState: AppState) => void;
31
+ export declare const renderElementToSvg: (element: NonDeletedExcalidrawElement, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, offsetX: number, offsetY: number, exportWithDarkMode?: boolean) => void;
32
+ export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
33
+ export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
34
+ export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
35
+ export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
36
+ export {};
@@ -1,41 +1,41 @@
1
- import { RoughCanvas } from "roughjs/bin/canvas";
2
- import { RoughSVG } from "roughjs/bin/svg";
3
- import { AppState, BinaryFiles } from "../types";
4
- import { NonDeletedExcalidrawElement } from "../element/types";
5
- import { RenderConfig } from "../scene/types";
6
- export declare const DEFAULT_SPACING = 2;
7
- export declare const _renderScene: ({ elements, appState, scale, rc, canvas, renderConfig, }: {
8
- elements: readonly NonDeletedExcalidrawElement[];
9
- appState: AppState;
10
- scale: number;
11
- rc: RoughCanvas;
12
- canvas: HTMLCanvasElement;
13
- renderConfig: RenderConfig;
14
- }) => {
15
- atLeastOneVisibleElement: boolean;
16
- scrollBars?: undefined;
17
- } | {
18
- atLeastOneVisibleElement: boolean;
19
- scrollBars: import("../scene/types").ScrollBars | undefined;
20
- };
21
- /** renderScene throttled to animation framerate */
22
- export declare const renderScene: <T extends boolean = false>(config: {
23
- elements: readonly NonDeletedExcalidrawElement[];
24
- appState: AppState;
25
- scale: number;
26
- rc: RoughCanvas;
27
- canvas: HTMLCanvasElement;
28
- renderConfig: RenderConfig;
29
- callback?: ((data: ReturnType<typeof _renderScene>) => void) | undefined;
30
- }, throttle?: T | undefined) => T extends true ? void : {
31
- atLeastOneVisibleElement: boolean;
32
- scrollBars?: undefined;
33
- } | {
34
- atLeastOneVisibleElement: boolean;
35
- scrollBars: import("../scene/types").ScrollBars | undefined;
36
- };
37
- export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, { offsetX, offsetY, exportWithDarkMode, }?: {
38
- offsetX?: number | undefined;
39
- offsetY?: number | undefined;
40
- exportWithDarkMode?: boolean | undefined;
41
- }) => void;
1
+ import { RoughCanvas } from "roughjs/bin/canvas";
2
+ import { RoughSVG } from "roughjs/bin/svg";
3
+ import { AppState, BinaryFiles } from "../types";
4
+ import { NonDeletedExcalidrawElement } from "../element/types";
5
+ import { RenderConfig } from "../scene/types";
6
+ export declare const DEFAULT_SPACING = 2;
7
+ export declare const _renderScene: ({ elements, appState, scale, rc, canvas, renderConfig, }: {
8
+ elements: readonly NonDeletedExcalidrawElement[];
9
+ appState: AppState;
10
+ scale: number;
11
+ rc: RoughCanvas;
12
+ canvas: HTMLCanvasElement;
13
+ renderConfig: RenderConfig;
14
+ }) => {
15
+ atLeastOneVisibleElement: boolean;
16
+ scrollBars?: undefined;
17
+ } | {
18
+ atLeastOneVisibleElement: boolean;
19
+ scrollBars: import("../scene/types").ScrollBars | undefined;
20
+ };
21
+ /** renderScene throttled to animation framerate */
22
+ export declare const renderScene: <T extends boolean = false>(config: {
23
+ elements: readonly NonDeletedExcalidrawElement[];
24
+ appState: AppState;
25
+ scale: number;
26
+ rc: RoughCanvas;
27
+ canvas: HTMLCanvasElement;
28
+ renderConfig: RenderConfig;
29
+ callback?: ((data: ReturnType<typeof _renderScene>) => void) | undefined;
30
+ }, throttle?: T | undefined) => T extends true ? void : {
31
+ atLeastOneVisibleElement: boolean;
32
+ scrollBars?: undefined;
33
+ } | {
34
+ atLeastOneVisibleElement: boolean;
35
+ scrollBars: import("../scene/types").ScrollBars | undefined;
36
+ };
37
+ export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, { offsetX, offsetY, exportWithDarkMode, }?: {
38
+ offsetX?: number | undefined;
39
+ offsetY?: number | undefined;
40
+ exportWithDarkMode?: boolean | undefined;
41
+ }) => void;
@@ -1,11 +1,11 @@
1
- /**
2
- * https://stackoverflow.com/a/3368118
3
- * Draws a rounded rectangle using the current state of the canvas.
4
- * @param {CanvasRenderingContext2D} context
5
- * @param {Number} x The top left x coordinate
6
- * @param {Number} y The top left y coordinate
7
- * @param {Number} width The width of the rectangle
8
- * @param {Number} height The height of the rectangle
9
- * @param {Number} radius The corner radius
10
- */
11
- export declare const roundRect: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number) => void;
1
+ /**
2
+ * https://stackoverflow.com/a/3368118
3
+ * Draws a rounded rectangle using the current state of the canvas.
4
+ * @param {CanvasRenderingContext2D} context
5
+ * @param {Number} x The top left x coordinate
6
+ * @param {Number} y The top left y coordinate
7
+ * @param {Number} width The width of the rectangle
8
+ * @param {Number} height The height of the rectangle
9
+ * @param {Number} radius The corner radius
10
+ */
11
+ export declare const roundRect: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number) => void;
@@ -1,21 +1,21 @@
1
- import { ExcalidrawElement } from "../element/types";
2
- import type Scene from "./Scene";
3
- export declare class Fonts {
4
- private scene;
5
- private onSceneUpdated;
6
- constructor({ scene, onSceneUpdated, }: {
7
- scene: Scene;
8
- onSceneUpdated: () => void;
9
- });
10
- private static loadedFontFaces;
11
- /**
12
- * if we load a (new) font, it's likely that text elements using it have
13
- * already been rendered using a fallback font. Thus, we want invalidate
14
- * their shapes and rerender. See #637.
15
- *
16
- * Invalidates text elements and rerenders scene, provided that at least one
17
- * of the supplied fontFaces has not already been processed.
18
- */
19
- onFontsLoaded: (fontFaces: readonly FontFace[]) => false | undefined;
20
- loadFontsForElements: (elements: readonly ExcalidrawElement[]) => Promise<void>;
21
- }
1
+ import { ExcalidrawElement } from "../element/types";
2
+ import type Scene from "./Scene";
3
+ export declare class Fonts {
4
+ private scene;
5
+ private onSceneUpdated;
6
+ constructor({ scene, onSceneUpdated, }: {
7
+ scene: Scene;
8
+ onSceneUpdated: () => void;
9
+ });
10
+ private static loadedFontFaces;
11
+ /**
12
+ * if we load a (new) font, it's likely that text elements using it have
13
+ * already been rendered using a fallback font. Thus, we want invalidate
14
+ * their shapes and rerender. See #637.
15
+ *
16
+ * Invalidates text elements and rerenders scene, provided that at least one
17
+ * of the supplied fontFaces has not already been processed.
18
+ */
19
+ onFontsLoaded: (fontFaces: readonly FontFace[]) => false | undefined;
20
+ loadFontsForElements: (elements: readonly ExcalidrawElement[]) => Promise<void>;
21
+ }
@@ -1,40 +1,40 @@
1
- import { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted } from "../element/types";
2
- import { LinearElementEditor } from "../element/linearElementEditor";
3
- declare type ElementIdKey = InstanceType<typeof LinearElementEditor>["elementId"];
4
- declare type ElementKey = ExcalidrawElement | ElementIdKey;
5
- declare type SceneStateCallback = () => void;
6
- declare type SceneStateCallbackRemover = () => void;
7
- declare class Scene {
8
- private static sceneMapByElement;
9
- private static sceneMapById;
10
- static mapElementToScene(elementKey: ElementKey, scene: Scene): void;
11
- static getScene(elementKey: ElementKey): Scene | null;
12
- private callbacks;
13
- private nonDeletedElements;
14
- private elements;
15
- private elementsMap;
16
- getElementsIncludingDeleted(): readonly ExcalidrawElement[];
17
- getNonDeletedElements(): readonly NonDeletedExcalidrawElement[];
18
- getElement<T extends ExcalidrawElement>(id: T["id"]): T | null;
19
- getNonDeletedElement(id: ExcalidrawElement["id"]): NonDeleted<ExcalidrawElement> | null;
20
- /**
21
- * A utility method to help with updating all scene elements, with the added
22
- * performance optimization of not renewing the array if no change is made.
23
- *
24
- * Maps all current excalidraw elements, invoking the callback for each
25
- * element. The callback should either return a new mapped element, or the
26
- * original element if no changes are made. If no changes are made to any
27
- * element, this results in a no-op. Otherwise, the newly mapped elements
28
- * are set as the next scene's elements.
29
- *
30
- * @returns whether a change was made
31
- */
32
- mapElements(iteratee: (element: ExcalidrawElement) => ExcalidrawElement): boolean;
33
- replaceAllElements(nextElements: readonly ExcalidrawElement[]): void;
34
- informMutation(): void;
35
- addCallback(cb: SceneStateCallback): SceneStateCallbackRemover;
36
- destroy(): void;
37
- insertElementAtIndex(element: ExcalidrawElement, index: number): void;
38
- getElementIndex(elementId: string): number;
39
- }
40
- export default Scene;
1
+ import { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted } from "../element/types";
2
+ import { LinearElementEditor } from "../element/linearElementEditor";
3
+ declare type ElementIdKey = InstanceType<typeof LinearElementEditor>["elementId"];
4
+ declare type ElementKey = ExcalidrawElement | ElementIdKey;
5
+ declare type SceneStateCallback = () => void;
6
+ declare type SceneStateCallbackRemover = () => void;
7
+ declare class Scene {
8
+ private static sceneMapByElement;
9
+ private static sceneMapById;
10
+ static mapElementToScene(elementKey: ElementKey, scene: Scene): void;
11
+ static getScene(elementKey: ElementKey): Scene | null;
12
+ private callbacks;
13
+ private nonDeletedElements;
14
+ private elements;
15
+ private elementsMap;
16
+ getElementsIncludingDeleted(): readonly ExcalidrawElement[];
17
+ getNonDeletedElements(): readonly NonDeletedExcalidrawElement[];
18
+ getElement<T extends ExcalidrawElement>(id: T["id"]): T | null;
19
+ getNonDeletedElement(id: ExcalidrawElement["id"]): NonDeleted<ExcalidrawElement> | null;
20
+ /**
21
+ * A utility method to help with updating all scene elements, with the added
22
+ * performance optimization of not renewing the array if no change is made.
23
+ *
24
+ * Maps all current excalidraw elements, invoking the callback for each
25
+ * element. The callback should either return a new mapped element, or the
26
+ * original element if no changes are made. If no changes are made to any
27
+ * element, this results in a no-op. Otherwise, the newly mapped elements
28
+ * are set as the next scene's elements.
29
+ *
30
+ * @returns whether a change was made
31
+ */
32
+ mapElements(iteratee: (element: ExcalidrawElement) => ExcalidrawElement): boolean;
33
+ replaceAllElements(nextElements: readonly ExcalidrawElement[]): void;
34
+ informMutation(): void;
35
+ addCallback(cb: SceneStateCallback): SceneStateCallbackRemover;
36
+ destroy(): void;
37
+ insertElementAtIndex(element: ExcalidrawElement, index: number): void;
38
+ getElementIndex(elementId: string): number;
39
+ }
40
+ export default Scene;
@@ -1,10 +1,10 @@
1
- import { NonDeletedExcalidrawElement } from "../element/types";
2
- export declare const hasBackground: (type: string) => boolean;
3
- export declare const hasStrokeColor: (type: string) => boolean;
4
- export declare const hasStrokeWidth: (type: string) => boolean;
5
- export declare const hasStrokeStyle: (type: string) => boolean;
6
- export declare const canChangeRoundness: (type: string) => boolean;
7
- export declare const hasText: (type: string) => boolean;
8
- export declare const canHaveArrowheads: (type: string) => boolean;
9
- export declare const getElementAtPosition: (elements: readonly NonDeletedExcalidrawElement[], isAtPositionFn: (element: NonDeletedExcalidrawElement) => boolean) => NonDeletedExcalidrawElement | null;
10
- export declare const getElementsAtPosition: (elements: readonly NonDeletedExcalidrawElement[], isAtPositionFn: (element: NonDeletedExcalidrawElement) => boolean) => NonDeletedExcalidrawElement[];
1
+ import { NonDeletedExcalidrawElement } from "../element/types";
2
+ export declare const hasBackground: (type: string) => boolean;
3
+ export declare const hasStrokeColor: (type: string) => boolean;
4
+ export declare const hasStrokeWidth: (type: string) => boolean;
5
+ export declare const hasStrokeStyle: (type: string) => boolean;
6
+ export declare const canChangeRoundness: (type: string) => boolean;
7
+ export declare const hasText: (type: string) => boolean;
8
+ export declare const canHaveArrowheads: (type: string) => boolean;
9
+ export declare const getElementAtPosition: (elements: readonly NonDeletedExcalidrawElement[], isAtPositionFn: (element: NonDeletedExcalidrawElement) => boolean) => NonDeletedExcalidrawElement | null;
10
+ export declare const getElementsAtPosition: (elements: readonly NonDeletedExcalidrawElement[], isAtPositionFn: (element: NonDeletedExcalidrawElement) => boolean) => NonDeletedExcalidrawElement[];