@excalidraw/common 0.18.0-a9ca16e → 0.18.0-ab0255f

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 (175) hide show
  1. package/dist/dev/index.js +61 -73
  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 +17 -1
  5. package/dist/types/common/src/constants.d.ts +12 -7
  6. package/dist/types/common/src/keys.d.ts +2 -0
  7. package/dist/types/common/src/points.d.ts +1 -1
  8. package/dist/types/common/src/utils.d.ts +1 -43
  9. package/dist/types/element/src/Scene.d.ts +6 -4
  10. package/dist/types/element/src/align.d.ts +2 -2
  11. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  12. package/dist/types/element/src/arrows/focus.d.ts +5 -2
  13. package/dist/types/element/src/binding.d.ts +17 -8
  14. package/dist/types/element/src/bounds.d.ts +22 -7
  15. package/dist/types/element/src/bucketFill.d.ts +110 -0
  16. package/dist/types/element/src/collision.d.ts +1 -1
  17. package/dist/types/element/src/comparisons.d.ts +5 -4
  18. package/dist/types/element/src/convertToShape.d.ts +23 -0
  19. package/dist/types/element/src/distribute.d.ts +2 -2
  20. package/dist/types/element/src/dragElements.d.ts +27 -0
  21. package/dist/types/element/src/duplicate.d.ts +4 -3
  22. package/dist/types/element/src/embeddable.d.ts +2 -2
  23. package/dist/types/element/src/flowchart.d.ts +7 -7
  24. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  25. package/dist/types/element/src/frame.d.ts +9 -8
  26. package/dist/types/element/src/groups.d.ts +9 -9
  27. package/dist/types/element/src/index.d.ts +4 -1
  28. package/dist/types/element/src/linearElementEditor.d.ts +17 -10
  29. package/dist/types/element/src/newElement.d.ts +14 -0
  30. package/dist/types/element/src/renderElement.d.ts +0 -3
  31. package/dist/types/element/src/resizeElements.d.ts +2 -2
  32. package/dist/types/element/src/selection.d.ts +6 -6
  33. package/dist/types/element/src/shape.d.ts +13 -1
  34. package/dist/types/element/src/textElement.d.ts +12 -9
  35. package/dist/types/element/src/transform.d.ts +2 -2
  36. package/dist/types/element/src/typeChecks.d.ts +26 -25
  37. package/dist/types/element/src/types.d.ts +8 -1
  38. package/dist/types/element/src/utils.d.ts +1 -1
  39. package/dist/types/element/src/zindex.d.ts +2 -2
  40. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +30 -12
  41. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  42. package/dist/types/excalidraw/actions/actionBoundText.d.ts +20 -8
  43. package/dist/types/excalidraw/actions/actionCanvas.d.ts +132 -926
  44. package/dist/types/excalidraw/actions/actionClipboard.d.ts +20 -8
  45. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +10 -4
  46. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +32 -13
  47. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionDeselect.d.ts} +24 -33
  48. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  49. package/dist/types/excalidraw/actions/actionElementLink.d.ts +10 -4
  50. package/dist/types/excalidraw/actions/actionElementLock.d.ts +21 -9
  51. package/dist/types/excalidraw/actions/actionExport.d.ts +25 -13
  52. package/dist/types/excalidraw/actions/actionFrame.d.ts +42 -196
  53. package/dist/types/excalidraw/actions/actionGroup.d.ts +35 -23
  54. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +14 -6
  55. package/dist/types/excalidraw/actions/actionLink.d.ts +11 -5
  56. package/dist/types/excalidraw/actions/actionMenu.d.ts +10 -4
  57. package/dist/types/excalidraw/actions/actionProperties.d.ts +50 -26
  58. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +15 -9
  59. package/dist/types/excalidraw/actions/actionStyles.d.ts +10 -4
  60. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +1 -1
  61. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +11 -5
  62. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +14 -9
  63. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +11 -5
  64. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +11 -5
  65. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +14 -9
  66. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  67. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +11 -5
  68. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +12 -6
  69. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +11 -5
  70. package/dist/types/excalidraw/actions/index.d.ts +2 -2
  71. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  72. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  73. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  74. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  75. package/dist/types/excalidraw/appState.d.ts +8 -6
  76. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  77. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  78. package/dist/types/excalidraw/components/App.arrowText.d.ts +72 -0
  79. package/dist/types/excalidraw/components/App.bucketFill.d.ts +34 -0
  80. package/dist/types/excalidraw/components/App.cursor.d.ts +31 -0
  81. package/dist/types/excalidraw/components/App.d.ts +355 -65
  82. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  83. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  84. package/dist/types/excalidraw/components/App.viewport.d.ts +73 -0
  85. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -3
  86. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +1 -0
  87. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +6 -1
  88. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  89. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  90. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  91. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  92. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  93. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  94. package/dist/types/excalidraw/components/{ToolButton.d.ts → IconButton.d.ts} +16 -19
  95. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  96. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  97. package/dist/types/excalidraw/components/LayerUI.d.ts +4 -2
  98. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  99. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  100. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  101. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  102. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  103. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  104. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  105. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  106. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  107. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  108. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  109. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  110. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  111. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  112. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  113. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  114. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  115. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  116. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  117. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  118. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  119. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  120. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  121. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  122. package/dist/types/excalidraw/components/Tools.d.ts +146 -0
  123. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +3 -1
  124. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +1 -0
  125. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  126. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  127. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  128. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  129. package/dist/types/excalidraw/components/icons.d.ts +3 -1
  130. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +8 -4
  131. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  132. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  133. package/dist/types/excalidraw/data/blob.d.ts +30 -18
  134. package/dist/types/excalidraw/data/index.d.ts +4 -4
  135. package/dist/types/excalidraw/data/json.d.ts +21 -15
  136. package/dist/types/excalidraw/data/library.d.ts +1 -1
  137. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  138. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  139. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  140. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  141. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  142. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  143. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  144. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +1 -3
  145. package/dist/types/excalidraw/scene/Renderer.d.ts +426 -19
  146. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  147. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  148. package/dist/types/excalidraw/scene/types.d.ts +4 -3
  149. package/dist/types/excalidraw/snapping.d.ts +7 -7
  150. package/dist/types/excalidraw/types.d.ts +368 -19
  151. package/dist/types/excalidraw/viewport.d.ts +272 -0
  152. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +2 -3
  153. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  154. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  155. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  156. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  157. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  158. package/dist/types/math/src/constants.d.ts +0 -1
  159. package/dist/types/math/src/curve.d.ts +4 -1
  160. package/dist/types/math/src/index.d.ts +1 -0
  161. package/dist/types/math/src/pca.d.ts +79 -0
  162. package/dist/types/math/src/point.d.ts +1 -0
  163. package/dist/types/math/src/polygon.d.ts +25 -1
  164. package/dist/types/utils/src/export.d.ts +3 -3
  165. package/dist/types/utils/src/index.d.ts +1 -2
  166. package/package.json +1 -1
  167. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  168. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  169. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  170. package/dist/types/excalidraw/components/shapes.d.ts +0 -263
  171. package/dist/types/excalidraw/cursor.d.ts +0 -5
  172. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  173. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  174. package/dist/types/utils/src/bbox.d.ts +0 -9
  175. 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;
@@ -1474,6 +1477,13 @@ var DEFAULT_ELEMENT_BACKGROUND_PICKS = [
1474
1477
  COLOR_PALETTE.blue[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX],
1475
1478
  COLOR_PALETTE.yellow[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX]
1476
1479
  ];
1480
+ var BUCKET_FILL_BACKGROUND_PICKS = [
1481
+ COLOR_PALETTE.white,
1482
+ COLOR_PALETTE.red[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX],
1483
+ COLOR_PALETTE.green[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX],
1484
+ COLOR_PALETTE.blue[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX],
1485
+ COLOR_PALETTE.yellow[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX]
1486
+ ];
1477
1487
  var DEFAULT_CANVAS_BACKGROUND_PICKS = [
1478
1488
  COLOR_PALETTE.white,
1479
1489
  // radix slate2
@@ -1503,6 +1513,7 @@ var DEFAULT_ELEMENT_BACKGROUND_COLOR_PALETTE = {
1503
1513
  bronze: COLOR_PALETTE.bronze,
1504
1514
  ...COMMON_ELEMENT_SHADES
1505
1515
  };
1516
+ var getBucketFillBackgroundColor = (backgroundColor) => isTransparent(backgroundColor) ? COLOR_PALETTE.green[DEFAULT_ELEMENT_BACKGROUND_COLOR_INDEX] : backgroundColor;
1506
1517
  var getAllColorsSpecificShade = (index) => [
1507
1518
  // 2nd row
1508
1519
  COLOR_PALETTE.cyan[index],
@@ -1536,6 +1547,9 @@ var colorToHex = (color) => {
1536
1547
  var isTransparent = (color) => {
1537
1548
  return tinycolor(color).getAlpha() === 0;
1538
1549
  };
1550
+ var isOpaqueColor = (color) => {
1551
+ return tinycolor(color).getAlpha() === 1;
1552
+ };
1539
1553
  var COLOR_OUTLINE_CONTRAST_THRESHOLD = 240;
1540
1554
  var calculateContrast = (r, g, b) => {
1541
1555
  const yiq = (r * 299 + g * 587 + b * 114) / 1e3;
@@ -1836,8 +1850,10 @@ var DEFAULT_UI_OPTIONS = {
1836
1850
  var MAX_DECIMALS_FOR_SVG_EXPORT = 2;
1837
1851
  var EXPORT_SCALES = [1, 2, 3];
1838
1852
  var DEFAULT_EXPORT_PADDING = 10;
1839
- var DEFAULT_MAX_IMAGE_WIDTH_OR_HEIGHT = 1440;
1840
- var MAX_ALLOWED_FILE_BYTES = 4 * 1024 * 1024;
1853
+ var DEFAULT_IMAGE_OPTIONS = {
1854
+ maxWidthOrHeight: 1440,
1855
+ maxFileSizeBytes: 4 * 1024 * 1024
1856
+ };
1841
1857
  var SVG_NS = "http://www.w3.org/2000/svg";
1842
1858
  var SVG_DOCUMENT_PREAMBLE = `<?xml version="1.0" standalone="no"?>
1843
1859
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
@@ -1861,6 +1877,7 @@ var TEXT_ALIGN = {
1861
1877
  RIGHT: "right"
1862
1878
  };
1863
1879
  var ELEMENT_READY_TO_ERASE_OPACITY = 20;
1880
+ var ELEMENT_PENDING_DRAW_SHAPE_OPACITY = 70;
1864
1881
  var DEFAULT_PROPORTIONAL_RADIUS = 0.25;
1865
1882
  var DEFAULT_ADAPTIVE_RADIUS = 32;
1866
1883
  var ROUNDNESS = {
@@ -1884,16 +1901,34 @@ var ROUGHNESS = {
1884
1901
  artist: 1,
1885
1902
  cartoonist: 2
1886
1903
  };
1904
+ var STROKE_WIDTH_KEYS = [
1905
+ "thin",
1906
+ "medium",
1907
+ "bold"
1908
+ ];
1887
1909
  var STROKE_WIDTH = {
1888
1910
  thin: 1,
1911
+ medium: 2,
1912
+ bold: 4,
1913
+ extraBold: 8
1914
+ // unused (may be introduced in the future)
1915
+ };
1916
+ var FREEDRAW_STROKE_WIDTH = {
1917
+ thin: 0.5,
1918
+ medium: 1,
1889
1919
  bold: 2,
1890
1920
  extraBold: 4
1921
+ // legacy (may be used again in the future)
1922
+ };
1923
+ var getStrokeWidthByKey = (elementType, strokeWidthKey) => {
1924
+ return elementType === "freedraw" ? FREEDRAW_STROKE_WIDTH[strokeWidthKey] : STROKE_WIDTH[strokeWidthKey];
1891
1925
  };
1926
+ var DEFAULT_ELEMENT_STROKE_WIDTH_KEY = "medium";
1892
1927
  var DEFAULT_ELEMENT_PROPS = {
1893
1928
  strokeColor: COLOR_PALETTE.black,
1894
1929
  backgroundColor: COLOR_PALETTE.transparent,
1895
1930
  fillStyle: "solid",
1896
- strokeWidth: 2,
1931
+ strokeWidth: STROKE_WIDTH[DEFAULT_ELEMENT_STROKE_WIDTH_KEY],
1897
1932
  strokeStyle: "solid",
1898
1933
  roughness: ROUGHNESS.artist,
1899
1934
  opacity: 100,
@@ -1926,7 +1961,9 @@ var TOOL_TYPE = {
1926
1961
  frame: "frame",
1927
1962
  magicframe: "magicframe",
1928
1963
  embeddable: "embeddable",
1929
- laser: "laser"
1964
+ laser: "laser",
1965
+ autoshape: "autoshape",
1966
+ bucketfill: "bucketfill"
1930
1967
  };
1931
1968
  var EDITOR_LS_KEYS = {
1932
1969
  OAI_API_KEY: "excalidraw-oai-api-key",
@@ -1957,6 +1994,8 @@ var BIND_MODE_TIMEOUT = 700;
1957
1994
  var MOBILE_ACTION_BUTTON_BG = {
1958
1995
  background: "var(--mobile-action-button-bg)"
1959
1996
  };
1997
+ var DEFAULT_STROKE_STREAMLINE = 0.5;
1998
+ var DEFAULT_STROKE_STREAMLINE_PRECISE = 0.2;
1960
1999
 
1961
2000
  // src/font-metadata.ts
1962
2001
  init_define_import_meta_env();
@@ -2286,6 +2325,7 @@ var KEYS = {
2286
2325
  SUBTRACT: "-",
2287
2326
  SLASH: "/",
2288
2327
  A: "a",
2328
+ B: "b",
2289
2329
  C: "c",
2290
2330
  D: "d",
2291
2331
  E: "e",
@@ -2337,6 +2377,7 @@ var shouldRotateWithDiscreteAngle = (event) => event.shiftKey;
2337
2377
  // src/points.ts
2338
2378
  init_define_import_meta_env();
2339
2379
  import {
2380
+ pointFrom,
2340
2381
  pointFromPair
2341
2382
  } from "@excalidraw/math";
2342
2383
  var getSizeFromPoints = (points) => {
@@ -2381,12 +2422,12 @@ var rescalePoints = (dimension, newSize, points, normalize) => {
2381
2422
  };
2382
2423
  var getGridPoint = (x, y, gridSize) => {
2383
2424
  if (gridSize) {
2384
- return [
2425
+ return pointFrom(
2385
2426
  Math.round(x / gridSize) * gridSize,
2386
2427
  Math.round(y / gridSize) * gridSize
2387
- ];
2428
+ );
2388
2429
  }
2389
- return [x, y];
2430
+ return pointFrom(x, y);
2390
2431
  };
2391
2432
 
2392
2433
  // src/promise-pool.ts
@@ -2570,67 +2611,6 @@ var throttleRAF = (fn) => {
2570
2611
  var easeOut = (k) => {
2571
2612
  return 1 - Math.pow(1 - k, 4);
2572
2613
  };
2573
- var easeOutInterpolate = (from, to, progress) => {
2574
- return (to - from) * easeOut(progress) + from;
2575
- };
2576
- var easeToValuesRAF = ({
2577
- fromValues,
2578
- toValues,
2579
- onStep,
2580
- duration = 250,
2581
- interpolateValue,
2582
- onStart,
2583
- onEnd,
2584
- onCancel
2585
- }) => {
2586
- let canceled = false;
2587
- let frameId = 0;
2588
- let startTime;
2589
- function step(timestamp) {
2590
- if (canceled) {
2591
- return;
2592
- }
2593
- if (startTime === void 0) {
2594
- startTime = timestamp;
2595
- onStart?.();
2596
- }
2597
- const elapsed = Math.min(timestamp - startTime, duration);
2598
- const factor = easeOut(elapsed / duration);
2599
- const newValues = {};
2600
- Object.keys(fromValues).forEach((key) => {
2601
- const _key = key;
2602
- const result = (toValues[_key] - fromValues[_key]) * factor + fromValues[_key];
2603
- newValues[_key] = result;
2604
- });
2605
- onStep(newValues);
2606
- if (elapsed < duration) {
2607
- const progress = elapsed / duration;
2608
- const newValues2 = {};
2609
- Object.keys(fromValues).forEach((key) => {
2610
- const _key = key;
2611
- const startValue = fromValues[_key];
2612
- const endValue = toValues[_key];
2613
- let result;
2614
- result = interpolateValue ? interpolateValue(startValue, endValue, progress, _key) : easeOutInterpolate(startValue, endValue, progress);
2615
- if (result == null) {
2616
- result = easeOutInterpolate(startValue, endValue, progress);
2617
- }
2618
- newValues2[_key] = result;
2619
- });
2620
- onStep(newValues2);
2621
- frameId = window.requestAnimationFrame(step);
2622
- } else {
2623
- onStep(toValues);
2624
- onEnd?.();
2625
- }
2626
- }
2627
- frameId = window.requestAnimationFrame(step);
2628
- return () => {
2629
- onCancel?.();
2630
- canceled = true;
2631
- window.cancelAnimationFrame(frameId);
2632
- };
2633
- };
2634
2614
  var chunk = (array, size) => {
2635
2615
  if (!array.length || size < 1) {
2636
2616
  return [];
@@ -2673,7 +2653,7 @@ var updateActiveTool = (appState, data) => {
2673
2653
  }
2674
2654
  return {
2675
2655
  ...appState.activeTool,
2676
- lastActiveTool: data.lastActiveToolBeforeEraser === void 0 ? appState.activeTool.lastActiveTool : data.lastActiveToolBeforeEraser,
2656
+ lastActiveTool: data.lastActiveTool === void 0 ? appState.activeTool.lastActiveTool : data.lastActiveTool,
2677
2657
  type: data.type,
2678
2658
  customType: null,
2679
2659
  locked: data.locked ?? appState.activeTool.locked,
@@ -3528,6 +3508,7 @@ export {
3528
3508
  AppEventBus,
3529
3509
  BIND_MODE_TIMEOUT,
3530
3510
  BOUND_TEXT_PADDING,
3511
+ BUCKET_FILL_BACKGROUND_PICKS,
3531
3512
  BinaryHeap,
3532
3513
  CANVAS_ONLY_ACTIONS,
3533
3514
  CANVAS_SEARCH_TAB,
@@ -3553,17 +3534,20 @@ export {
3553
3534
  DEFAULT_ELEMENT_STROKE_COLOR_INDEX,
3554
3535
  DEFAULT_ELEMENT_STROKE_COLOR_PALETTE,
3555
3536
  DEFAULT_ELEMENT_STROKE_PICKS,
3537
+ DEFAULT_ELEMENT_STROKE_WIDTH_KEY,
3556
3538
  DEFAULT_EXPORT_PADDING,
3557
3539
  DEFAULT_FILENAME,
3558
3540
  DEFAULT_FONT_FAMILY,
3559
3541
  DEFAULT_FONT_SIZE,
3560
3542
  DEFAULT_GRID_SIZE,
3561
3543
  DEFAULT_GRID_STEP,
3544
+ DEFAULT_IMAGE_OPTIONS,
3562
3545
  DEFAULT_LASER_COLOR,
3563
- DEFAULT_MAX_IMAGE_WIDTH_OR_HEIGHT,
3564
3546
  DEFAULT_PROPORTIONAL_RADIUS,
3565
3547
  DEFAULT_REDUCED_GLOBAL_ALPHA,
3566
3548
  DEFAULT_SIDEBAR,
3549
+ DEFAULT_STROKE_STREAMLINE,
3550
+ DEFAULT_STROKE_STREAMLINE_PRECISE,
3567
3551
  DEFAULT_TEXT_ALIGN,
3568
3552
  DEFAULT_TRANSFORM_HANDLE_SPACING,
3569
3553
  DEFAULT_UI_OPTIONS,
@@ -3574,6 +3558,7 @@ export {
3574
3558
  Debug,
3575
3559
  EDITOR_LS_KEYS,
3576
3560
  ELEMENT_LINK_KEY,
3561
+ ELEMENT_PENDING_DRAW_SHAPE_OPACITY,
3577
3562
  ELEMENT_READY_TO_ERASE_OPACITY,
3578
3563
  ELEMENT_SHIFT_TRANSLATE_AMOUNT,
3579
3564
  ELEMENT_TRANSLATE_AMOUNT,
@@ -3591,6 +3576,7 @@ export {
3591
3576
  FONT_METADATA,
3592
3577
  FONT_SIZES,
3593
3578
  FRAME_STYLE,
3579
+ FREEDRAW_STROKE_WIDTH,
3594
3580
  GOOGLE_FONTS_RANGES,
3595
3581
  HYPERLINK_TOOLTIP_DELAY,
3596
3582
  IDLE_THRESHOLD,
@@ -3603,7 +3589,6 @@ export {
3603
3589
  LINE_CONFIRM_THRESHOLD,
3604
3590
  LINE_POLYGON_POINT_MERGE_DISTANCE,
3605
3591
  LOCAL_FONT_PROTOCOL,
3606
- MAX_ALLOWED_FILE_BYTES,
3607
3592
  MAX_CUSTOM_COLORS_USED_IN_CANVAS,
3608
3593
  MAX_DECIMALS_FOR_SVG_EXPORT,
3609
3594
  MAX_ZOOM,
@@ -3635,6 +3620,7 @@ export {
3635
3620
  STATS_PANELS,
3636
3621
  STRING_MIME_TYPES,
3637
3622
  STROKE_WIDTH,
3623
+ STROKE_WIDTH_KEYS,
3638
3624
  SVG_DOCUMENT_PREAMBLE,
3639
3625
  SVG_NS,
3640
3626
  TAP_TWICE_TIMEOUT,
@@ -3675,13 +3661,13 @@ export {
3675
3661
  deriveStylesPanelMode,
3676
3662
  distance,
3677
3663
  easeOut,
3678
- easeToValuesRAF,
3679
3664
  escapeDoubleQuotes,
3680
3665
  exitFullScreen,
3681
3666
  findIndex,
3682
3667
  findLastIndex,
3683
3668
  focusNearestParent,
3684
3669
  getAllColorsSpecificShade,
3670
+ getBucketFillBackgroundColor,
3685
3671
  getDateTime,
3686
3672
  getExportSource,
3687
3673
  getFeatureFlag,
@@ -3696,6 +3682,7 @@ export {
3696
3682
  getLineHeight,
3697
3683
  getNearestScrollableContainer,
3698
3684
  getSizeFromPoints,
3685
+ getStrokeWidthByKey,
3699
3686
  getSvgPathFromStroke,
3700
3687
  getUpdatedTimestamp,
3701
3688
  getVersion,
@@ -3719,6 +3706,7 @@ export {
3719
3706
  isLocalLink,
3720
3707
  isMemberOf,
3721
3708
  isMobileBreakpoint,
3709
+ isOpaqueColor,
3722
3710
  isPrimitive,
3723
3711
  isProdEnv,
3724
3712
  isPromiseLike,