@excalidraw/common 0.18.0-2874f9e → 0.18.0-2a82821

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 (143) hide show
  1. package/dist/dev/index.js +173 -25
  2. package/dist/dev/index.js.map +3 -3
  3. package/dist/prod/index.js +3 -3
  4. package/dist/types/common/src/appEventBus.d.ts +27 -0
  5. package/dist/types/common/src/colors.d.ts +14 -14
  6. package/dist/types/common/src/constants.d.ts +9 -7
  7. package/dist/types/common/src/index.d.ts +2 -0
  8. package/dist/types/common/src/utils.d.ts +1 -3
  9. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  10. package/dist/types/element/src/Scene.d.ts +7 -3
  11. package/dist/types/element/src/arrowheads.d.ts +3 -0
  12. package/dist/types/element/src/binding.d.ts +3 -4
  13. package/dist/types/element/src/bounds.d.ts +22 -3
  14. package/dist/types/element/src/comparisons.d.ts +1 -0
  15. package/dist/types/element/src/duplicate.d.ts +1 -0
  16. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  17. package/dist/types/element/src/frame.d.ts +7 -6
  18. package/dist/types/element/src/index.d.ts +1 -0
  19. package/dist/types/element/src/linearElementEditor.d.ts +5 -2
  20. package/dist/types/element/src/mutateElement.d.ts +2 -0
  21. package/dist/types/element/src/newElement.d.ts +1 -0
  22. package/dist/types/element/src/selection.d.ts +8 -4
  23. package/dist/types/element/src/shape.d.ts +1 -1
  24. package/dist/types/element/src/textElement.d.ts +1 -1
  25. package/dist/types/element/src/textWrapping.d.ts +26 -0
  26. package/dist/types/element/src/typeChecks.d.ts +1 -0
  27. package/dist/types/element/src/types.d.ts +11 -2
  28. package/dist/types/element/src/utils.d.ts +2 -2
  29. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +35 -38
  30. package/dist/types/excalidraw/actions/actionBoundText.d.ts +25 -27
  31. package/dist/types/excalidraw/actions/actionCanvas.d.ts +207 -219
  32. package/dist/types/excalidraw/actions/actionClipboard.d.ts +24 -26
  33. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +12 -13
  34. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +37 -40
  35. package/dist/types/excalidraw/actions/actionDeselect.d.ts +160 -0
  36. package/dist/types/excalidraw/actions/actionElementLink.d.ts +8 -13
  37. package/dist/types/excalidraw/actions/actionElementLock.d.ts +24 -26
  38. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +12 -13
  39. package/dist/types/excalidraw/actions/actionExport.d.ts +112 -394
  40. package/dist/types/excalidraw/actions/actionFrame.d.ts +49 -52
  41. package/dist/types/excalidraw/actions/actionGroup.d.ts +27 -29
  42. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +13 -13
  43. package/dist/types/excalidraw/actions/actionLink.d.ts +12 -13
  44. package/dist/types/excalidraw/actions/actionMenu.d.ts +8 -13
  45. package/dist/types/excalidraw/actions/actionProperties.d.ts +37 -30
  46. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +13 -14
  47. package/dist/types/excalidraw/actions/actionStyles.d.ts +12 -12
  48. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  49. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +173 -0
  50. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +12 -13
  51. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +173 -0
  52. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +12 -13
  53. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +8 -13
  54. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +12 -13
  55. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +12 -13
  56. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +12 -13
  57. package/dist/types/excalidraw/actions/index.d.ts +4 -1
  58. package/dist/types/excalidraw/actions/types.d.ts +1 -1
  59. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  60. package/dist/types/excalidraw/appState.d.ts +32 -28
  61. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  62. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  63. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  64. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  65. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  66. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  67. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  68. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  69. package/dist/types/excalidraw/clipboard.d.ts +4 -7
  70. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  71. package/dist/types/excalidraw/components/App.d.ts +54 -14
  72. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  73. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  74. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  75. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +1 -1
  76. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  77. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  78. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  79. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  80. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  81. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  82. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  83. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  84. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  85. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  86. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  87. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  88. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
  89. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  90. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  91. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  92. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  93. package/dist/types/excalidraw/components/Toast.d.ts +8 -4
  94. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +2 -1
  95. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  96. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  97. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  98. package/dist/types/excalidraw/components/icons.d.ts +19 -8
  99. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +9 -3
  100. package/dist/types/excalidraw/components/shapes.d.ts +7 -0
  101. package/dist/types/excalidraw/data/blob.d.ts +163 -166
  102. package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
  103. package/dist/types/excalidraw/data/index.d.ts +2 -3
  104. package/dist/types/excalidraw/data/json.d.ts +92 -85
  105. package/dist/types/excalidraw/data/library.d.ts +1 -1
  106. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  107. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  108. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  109. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  110. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  111. package/dist/types/excalidraw/renderer/animation.d.ts +4 -1
  112. package/dist/types/excalidraw/scene/Renderer.d.ts +426 -19
  113. package/dist/types/excalidraw/scene/index.d.ts +1 -1
  114. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  115. package/dist/types/excalidraw/types.d.ts +110 -18
  116. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +5 -1
  117. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  118. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  119. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  120. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  121. package/dist/types/laser-pointer/src/state.d.ts +35 -0
  122. package/dist/types/math/src/constants.d.ts +0 -1
  123. package/dist/types/math/src/curve.d.ts +4 -1
  124. package/dist/types/math/src/point.d.ts +2 -1
  125. package/dist/types/utils/src/index.d.ts +1 -2
  126. package/package.json +1 -1
  127. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  128. package/dist/types/excalidraw/charts.d.ts +0 -27
  129. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
  130. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -15
  131. package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
  132. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -8
  133. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +0 -24
  134. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
  135. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -11
  136. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
  137. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
  138. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -84
  139. package/dist/types/excalidraw/data/reconcile.d.ts +0 -7
  140. package/dist/types/excalidraw/index.d.ts +0 -47
  141. package/dist/types/excalidraw/polyfill.d.ts +0 -2
  142. package/dist/types/utils/src/bbox.d.ts +0 -9
  143. package/dist/types/utils/src/withinBounds.d.ts +0 -19
package/dist/dev/index.js CHANGED
@@ -1394,7 +1394,10 @@ var cssInvert = (r, g, b, percent) => {
1394
1394
  const invertedB = invertComponent(b);
1395
1395
  return { r: invertedR, g: invertedG, b: invertedB };
1396
1396
  };
1397
- var applyDarkModeFilter = (color) => {
1397
+ var applyDarkModeFilter = (color, enable = true) => {
1398
+ if (!enable) {
1399
+ return color;
1400
+ }
1398
1401
  const cached = DARK_MODE_COLORS_CACHE?.get(color);
1399
1402
  if (cached) {
1400
1403
  return cached;
@@ -1836,8 +1839,10 @@ var DEFAULT_UI_OPTIONS = {
1836
1839
  var MAX_DECIMALS_FOR_SVG_EXPORT = 2;
1837
1840
  var EXPORT_SCALES = [1, 2, 3];
1838
1841
  var DEFAULT_EXPORT_PADDING = 10;
1839
- var DEFAULT_MAX_IMAGE_WIDTH_OR_HEIGHT = 1440;
1840
- var MAX_ALLOWED_FILE_BYTES = 4 * 1024 * 1024;
1842
+ var DEFAULT_IMAGE_OPTIONS = {
1843
+ maxWidthOrHeight: 1440,
1844
+ maxFileSizeBytes: 4 * 1024 * 1024
1845
+ };
1841
1846
  var SVG_NS = "http://www.w3.org/2000/svg";
1842
1847
  var SVG_DOCUMENT_PREAMBLE = `<?xml version="1.0" standalone="no"?>
1843
1848
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
@@ -1884,16 +1889,34 @@ var ROUGHNESS = {
1884
1889
  artist: 1,
1885
1890
  cartoonist: 2
1886
1891
  };
1892
+ var STROKE_WIDTH_KEYS = [
1893
+ "thin",
1894
+ "medium",
1895
+ "bold"
1896
+ ];
1887
1897
  var STROKE_WIDTH = {
1888
1898
  thin: 1,
1899
+ medium: 2,
1900
+ bold: 4,
1901
+ extraBold: 8
1902
+ // unused (may be introduced in the future)
1903
+ };
1904
+ var FREEDRAW_STROKE_WIDTH = {
1905
+ thin: 0.5,
1906
+ medium: 1,
1889
1907
  bold: 2,
1890
1908
  extraBold: 4
1909
+ // legacy (may be used again in the future)
1891
1910
  };
1911
+ var getStrokeWidthByKey = (elementType, strokeWidthKey) => {
1912
+ return elementType === "freedraw" ? FREEDRAW_STROKE_WIDTH[strokeWidthKey] : STROKE_WIDTH[strokeWidthKey];
1913
+ };
1914
+ var DEFAULT_ELEMENT_STROKE_WIDTH_KEY = "medium";
1892
1915
  var DEFAULT_ELEMENT_PROPS = {
1893
1916
  strokeColor: COLOR_PALETTE.black,
1894
1917
  backgroundColor: COLOR_PALETTE.transparent,
1895
1918
  fillStyle: "solid",
1896
- strokeWidth: 2,
1919
+ strokeWidth: STROKE_WIDTH[DEFAULT_ELEMENT_STROKE_WIDTH_KEY],
1897
1920
  strokeStyle: "solid",
1898
1921
  roughness: ROUGHNESS.artist,
1899
1922
  opacity: 100,
@@ -1957,6 +1980,8 @@ var BIND_MODE_TIMEOUT = 700;
1957
1980
  var MOBILE_ACTION_BUTTON_BG = {
1958
1981
  background: "var(--mobile-action-button-bg)"
1959
1982
  };
1983
+ var DEFAULT_STROKE_STREAMLINE = 0.5;
1984
+ var DEFAULT_STROKE_STREAMLINE_PRECISE = 0.2;
1960
1985
 
1961
1986
  // src/font-metadata.ts
1962
1987
  init_define_import_meta_env();
@@ -2484,7 +2509,7 @@ var isInteractive = (target) => {
2484
2509
  return isInputLike(target) || target instanceof Element && !!target.closest("label, button");
2485
2510
  };
2486
2511
  var isWritableElement = (target) => target instanceof HTMLElement && target.dataset.type === "wysiwyg" || target instanceof HTMLBRElement || // newline in wysiwyg
2487
- target instanceof HTMLTextAreaElement || target instanceof HTMLInputElement && (target.type === "text" || target.type === "number" || target.type === "password" || target.type === "search");
2512
+ target instanceof HTMLTextAreaElement || target instanceof HTMLInputElement && (target.type === "text" || target.type === "number" || target.type === "password" || target.type === "search") || target instanceof HTMLElement && target.closest(".cm-editor") !== null;
2488
2513
  var getFontFamilyString = ({
2489
2514
  fontFamily
2490
2515
  }) => {
@@ -2529,32 +2554,23 @@ var debounce = (fn, timeout) => {
2529
2554
  };
2530
2555
  return ret;
2531
2556
  };
2532
- var throttleRAF = (fn, opts) => {
2557
+ var throttleRAF = (fn) => {
2533
2558
  let timerId = null;
2534
2559
  let lastArgs = null;
2535
- let lastArgsTrailing = null;
2536
- const scheduleFunc = (args) => {
2560
+ const scheduleFunc = () => {
2537
2561
  timerId = window.requestAnimationFrame(() => {
2538
2562
  timerId = null;
2539
- fn(...args);
2563
+ const args = lastArgs;
2540
2564
  lastArgs = null;
2541
- if (lastArgsTrailing) {
2542
- lastArgs = lastArgsTrailing;
2543
- lastArgsTrailing = null;
2544
- scheduleFunc(lastArgs);
2565
+ if (args) {
2566
+ fn(...args);
2545
2567
  }
2546
2568
  });
2547
2569
  };
2548
2570
  const ret = (...args) => {
2549
- if (isTestEnv()) {
2550
- fn(...args);
2551
- return;
2552
- }
2553
2571
  lastArgs = args;
2554
2572
  if (timerId === null) {
2555
- scheduleFunc(lastArgs);
2556
- } else if (opts?.trailing) {
2557
- lastArgsTrailing = args;
2573
+ scheduleFunc();
2558
2574
  }
2559
2575
  };
2560
2576
  ret.flush = () => {
@@ -2563,12 +2579,12 @@ var throttleRAF = (fn, opts) => {
2563
2579
  timerId = null;
2564
2580
  }
2565
2581
  if (lastArgs) {
2566
- fn(...lastArgsTrailing || lastArgs);
2567
- lastArgs = lastArgsTrailing = null;
2582
+ fn(...lastArgs);
2583
+ lastArgs = null;
2568
2584
  }
2569
2585
  };
2570
2586
  ret.cancel = () => {
2571
- lastArgs = lastArgsTrailing = null;
2587
+ lastArgs = null;
2572
2588
  if (timerId !== null) {
2573
2589
  cancelAnimationFrame(timerId);
2574
2590
  timerId = null;
@@ -3236,6 +3252,131 @@ var Emitter = class {
3236
3252
  }
3237
3253
  };
3238
3254
 
3255
+ // src/appEventBus.ts
3256
+ init_define_import_meta_env();
3257
+ var AppEventBus = class {
3258
+ constructor(behavior) {
3259
+ this.behavior = behavior;
3260
+ }
3261
+ emitters = /* @__PURE__ */ new Map();
3262
+ lastPayload = /* @__PURE__ */ new Map();
3263
+ emittedOnce = /* @__PURE__ */ new Set();
3264
+ getEmitter(name) {
3265
+ let emitter = this.emitters.get(name);
3266
+ if (!emitter) {
3267
+ emitter = new Emitter();
3268
+ this.emitters.set(name, emitter);
3269
+ }
3270
+ return emitter;
3271
+ }
3272
+ toPromiseValue(args) {
3273
+ return args.length === 1 ? args[0] : args;
3274
+ }
3275
+ on(name, callback) {
3276
+ const eventBehavior = this.behavior[name];
3277
+ const cachedPayload = this.lastPayload.get(name);
3278
+ if (callback) {
3279
+ if (eventBehavior.replay === "last" && cachedPayload) {
3280
+ queueMicrotask(() => callback(...cachedPayload));
3281
+ if (eventBehavior.cardinality === "once") {
3282
+ return () => {
3283
+ };
3284
+ }
3285
+ }
3286
+ return this.getEmitter(name).on(callback);
3287
+ }
3288
+ if (eventBehavior.cardinality !== "once" || eventBehavior.replay !== "last") {
3289
+ throw new Error(`Event "${String(name)}" requires a callback`);
3290
+ }
3291
+ if (cachedPayload) {
3292
+ return Promise.resolve(this.toPromiseValue(cachedPayload));
3293
+ }
3294
+ return new Promise((resolve) => {
3295
+ this.getEmitter(name).once((...args) => {
3296
+ resolve(this.toPromiseValue(args));
3297
+ });
3298
+ });
3299
+ }
3300
+ emit(name, ...args) {
3301
+ const eventBehavior = this.behavior[name];
3302
+ if (!isProdEnv()) {
3303
+ if (eventBehavior.cardinality === "once") {
3304
+ if (this.emittedOnce.has(name)) {
3305
+ throw new Error(`Event "${String(name)}" can only be emitted once`);
3306
+ }
3307
+ this.emittedOnce.add(name);
3308
+ }
3309
+ }
3310
+ if (eventBehavior.replay === "last") {
3311
+ this.lastPayload.set(name, args);
3312
+ }
3313
+ try {
3314
+ this.getEmitter(name).trigger(...args);
3315
+ } finally {
3316
+ if (eventBehavior.cardinality === "once") {
3317
+ this.getEmitter(name).clear();
3318
+ }
3319
+ }
3320
+ }
3321
+ clear() {
3322
+ this.lastPayload.clear();
3323
+ this.emittedOnce.clear();
3324
+ for (const emitter of this.emitters.values()) {
3325
+ emitter.clear();
3326
+ }
3327
+ this.emitters.clear();
3328
+ }
3329
+ };
3330
+
3331
+ // src/versionedSnapshotStore.ts
3332
+ init_define_import_meta_env();
3333
+ var VersionedSnapshotStore = class {
3334
+ constructor(initialValue, isEqual = Object.is) {
3335
+ this.isEqual = isEqual;
3336
+ this.value = initialValue;
3337
+ }
3338
+ version = 0;
3339
+ value;
3340
+ waiters = /* @__PURE__ */ new Set();
3341
+ subscribers = /* @__PURE__ */ new Set();
3342
+ getSnapshot() {
3343
+ return { version: this.version, value: this.value };
3344
+ }
3345
+ set(nextValue) {
3346
+ if (this.isEqual(this.value, nextValue)) {
3347
+ return false;
3348
+ }
3349
+ this.value = nextValue;
3350
+ this.version += 1;
3351
+ const snapshot = this.getSnapshot();
3352
+ for (const subscriber of this.subscribers) {
3353
+ subscriber(snapshot);
3354
+ }
3355
+ for (const waiter of this.waiters) {
3356
+ waiter(snapshot);
3357
+ }
3358
+ this.waiters.clear();
3359
+ return true;
3360
+ }
3361
+ update(updater) {
3362
+ return this.set(updater(this.value));
3363
+ }
3364
+ subscribe(subscriber) {
3365
+ this.subscribers.add(subscriber);
3366
+ return () => {
3367
+ this.subscribers.delete(subscriber);
3368
+ };
3369
+ }
3370
+ pull(sinceVersion = -1) {
3371
+ if (this.version !== sinceVersion) {
3372
+ return Promise.resolve(this.getSnapshot());
3373
+ }
3374
+ return new Promise((resolve) => {
3375
+ this.waiters.add(resolve);
3376
+ });
3377
+ }
3378
+ };
3379
+
3239
3380
  // debug.ts
3240
3381
  init_define_import_meta_env();
3241
3382
  var lessPrecise = (num, precision = 5) => parseFloat(num.toPrecision(precision));
@@ -3409,6 +3550,7 @@ export {
3409
3550
  ARROW_LABEL_FONT_SIZE_TO_MIN_WIDTH_RATIO,
3410
3551
  ARROW_LABEL_WIDTH_FRACTION,
3411
3552
  ARROW_TYPE,
3553
+ AppEventBus,
3412
3554
  BIND_MODE_TIMEOUT,
3413
3555
  BOUND_TEXT_PADDING,
3414
3556
  BinaryHeap,
@@ -3436,17 +3578,20 @@ export {
3436
3578
  DEFAULT_ELEMENT_STROKE_COLOR_INDEX,
3437
3579
  DEFAULT_ELEMENT_STROKE_COLOR_PALETTE,
3438
3580
  DEFAULT_ELEMENT_STROKE_PICKS,
3581
+ DEFAULT_ELEMENT_STROKE_WIDTH_KEY,
3439
3582
  DEFAULT_EXPORT_PADDING,
3440
3583
  DEFAULT_FILENAME,
3441
3584
  DEFAULT_FONT_FAMILY,
3442
3585
  DEFAULT_FONT_SIZE,
3443
3586
  DEFAULT_GRID_SIZE,
3444
3587
  DEFAULT_GRID_STEP,
3588
+ DEFAULT_IMAGE_OPTIONS,
3445
3589
  DEFAULT_LASER_COLOR,
3446
- DEFAULT_MAX_IMAGE_WIDTH_OR_HEIGHT,
3447
3590
  DEFAULT_PROPORTIONAL_RADIUS,
3448
3591
  DEFAULT_REDUCED_GLOBAL_ALPHA,
3449
3592
  DEFAULT_SIDEBAR,
3593
+ DEFAULT_STROKE_STREAMLINE,
3594
+ DEFAULT_STROKE_STREAMLINE_PRECISE,
3450
3595
  DEFAULT_TEXT_ALIGN,
3451
3596
  DEFAULT_TRANSFORM_HANDLE_SPACING,
3452
3597
  DEFAULT_UI_OPTIONS,
@@ -3474,6 +3619,7 @@ export {
3474
3619
  FONT_METADATA,
3475
3620
  FONT_SIZES,
3476
3621
  FRAME_STYLE,
3622
+ FREEDRAW_STROKE_WIDTH,
3477
3623
  GOOGLE_FONTS_RANGES,
3478
3624
  HYPERLINK_TOOLTIP_DELAY,
3479
3625
  IDLE_THRESHOLD,
@@ -3486,7 +3632,6 @@ export {
3486
3632
  LINE_CONFIRM_THRESHOLD,
3487
3633
  LINE_POLYGON_POINT_MERGE_DISTANCE,
3488
3634
  LOCAL_FONT_PROTOCOL,
3489
- MAX_ALLOWED_FILE_BYTES,
3490
3635
  MAX_CUSTOM_COLORS_USED_IN_CANVAS,
3491
3636
  MAX_DECIMALS_FOR_SVG_EXPORT,
3492
3637
  MAX_ZOOM,
@@ -3518,6 +3663,7 @@ export {
3518
3663
  STATS_PANELS,
3519
3664
  STRING_MIME_TYPES,
3520
3665
  STROKE_WIDTH,
3666
+ STROKE_WIDTH_KEYS,
3521
3667
  SVG_DOCUMENT_PREAMBLE,
3522
3668
  SVG_NS,
3523
3669
  TAP_TWICE_TIMEOUT,
@@ -3534,6 +3680,7 @@ export {
3534
3680
  VERSIONS,
3535
3681
  VERSION_TIMEOUT,
3536
3682
  VERTICAL_ALIGN,
3683
+ VersionedSnapshotStore,
3537
3684
  WINDOWS_EMOJI_FALLBACK_FONT,
3538
3685
  YOUTUBE_STATES,
3539
3686
  ZOOM_STEP,
@@ -3578,6 +3725,7 @@ export {
3578
3725
  getLineHeight,
3579
3726
  getNearestScrollableContainer,
3580
3727
  getSizeFromPoints,
3728
+ getStrokeWidthByKey,
3581
3729
  getSvgPathFromStroke,
3582
3730
  getUpdatedTimestamp,
3583
3731
  getVersion,