@excalidraw/excalidraw 0.18.0-835eb8d → 0.18.0-8608d7b

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 (60) hide show
  1. package/dist/dev/{chunk-N4PQJPAH.js → chunk-YMRX7R7U.js} +8 -3
  2. package/dist/dev/chunk-YMRX7R7U.js.map +7 -0
  3. package/dist/dev/data/{image-RT6RLBUE.js → image-L23D26XS.js} +2 -2
  4. package/dist/dev/index.css +272 -84
  5. package/dist/dev/index.css.map +3 -3
  6. package/dist/dev/index.js +2930 -2161
  7. package/dist/dev/index.js.map +4 -4
  8. package/dist/prod/chunk-HT4FKTIQ.js +4 -0
  9. package/dist/prod/data/{image-HPGPBQV2.js → image-NWF7UX55.js} +1 -1
  10. package/dist/prod/index.css +1 -1
  11. package/dist/prod/index.js +20 -20
  12. package/dist/types/common/src/constants.d.ts +3 -0
  13. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +15 -3
  14. package/dist/types/excalidraw/actions/actionBoundText.d.ts +10 -2
  15. package/dist/types/excalidraw/actions/actionCanvas.d.ts +65 -13
  16. package/dist/types/excalidraw/actions/actionClipboard.d.ts +30 -6
  17. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +5 -1
  18. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +15 -3
  19. package/dist/types/excalidraw/actions/actionElementLink.d.ts +5 -1
  20. package/dist/types/excalidraw/actions/actionElementLock.d.ts +10 -2
  21. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +5 -1
  22. package/dist/types/excalidraw/actions/actionExport.d.ts +45 -9
  23. package/dist/types/excalidraw/actions/actionFinalize.d.ts +10 -2
  24. package/dist/types/excalidraw/actions/actionFrame.d.ts +20 -4
  25. package/dist/types/excalidraw/actions/actionGroup.d.ts +10 -2
  26. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +5 -1
  27. package/dist/types/excalidraw/actions/actionLink.d.ts +5 -1
  28. package/dist/types/excalidraw/actions/actionMenu.d.ts +15 -3
  29. package/dist/types/excalidraw/actions/actionNavigate.d.ts +10 -2
  30. package/dist/types/excalidraw/actions/actionProperties.d.ts +76 -16
  31. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +5 -1
  32. package/dist/types/excalidraw/actions/actionStyles.d.ts +5 -1
  33. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +5 -1
  34. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +5 -1
  35. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +5 -1
  36. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +5 -1
  37. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +5 -1
  38. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +5 -1
  39. package/dist/types/excalidraw/appState.d.ts +4 -1
  40. package/dist/types/excalidraw/components/Actions.d.ts +9 -2
  41. package/dist/types/excalidraw/components/App.d.ts +8 -3
  42. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +1 -1
  43. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -0
  44. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -1
  45. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -1
  46. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +1 -1
  47. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +2 -1
  48. package/dist/types/excalidraw/components/LayerUI.d.ts +2 -1
  49. package/dist/types/excalidraw/components/MobileMenu.d.ts +3 -5
  50. package/dist/types/excalidraw/components/MobileToolBar.d.ts +11 -0
  51. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -2
  52. package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
  53. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +4 -2
  54. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +2 -1
  55. package/dist/types/excalidraw/components/icons.d.ts +0 -1
  56. package/dist/types/excalidraw/types.d.ts +7 -2
  57. package/package.json +4 -4
  58. package/dist/dev/chunk-N4PQJPAH.js.map +0 -7
  59. package/dist/prod/chunk-SVEJI6WL.js +0 -4
  60. /package/dist/dev/data/{image-RT6RLBUE.js.map → image-L23D26XS.js.map} +0 -0
@@ -2,7 +2,7 @@ import {
2
2
  decodePngMetadata,
3
3
  encodePngMetadata,
4
4
  getTEXtChunk
5
- } from "../chunk-N4PQJPAH.js";
5
+ } from "../chunk-YMRX7R7U.js";
6
6
  import "../chunk-CP5DND7P.js";
7
7
  import "../chunk-XDFCUUT6.js";
8
8
  export {
@@ -10,4 +10,4 @@ export {
10
10
  encodePngMetadata,
11
11
  getTEXtChunk
12
12
  };
13
- //# sourceMappingURL=image-RT6RLBUE.js.map
13
+ //# sourceMappingURL=image-L23D26XS.js.map
@@ -258,6 +258,8 @@
258
258
  --button-gray-1: #e9ecef;
259
259
  --button-gray-2: #ced4da;
260
260
  --button-gray-3: #adb5bd;
261
+ --mobile-action-button-bg: rgba(255, 255, 255, 0.35);
262
+ --mobile-color-border: var(--default-border-color);
261
263
  --button-special-active-bg-color: #ebfbee;
262
264
  --dialog-border-color: var(--color-gray-20);
263
265
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -291,6 +293,7 @@
291
293
  --lg-button-size: 2.25rem;
292
294
  --lg-icon-size: 1rem;
293
295
  --editor-container-padding: 1rem;
296
+ --mobile-action-button-size: 2rem;
294
297
  --scrollbar-thumb: var(--button-gray-2);
295
298
  --scrollbar-thumb-hover: var(--button-gray-3);
296
299
  --color-slider-track: hsl(240, 100%, 90%);
@@ -390,6 +393,9 @@
390
393
  --color-badge: #0b6513;
391
394
  --background-color-badge: #d3ffd2;
392
395
  }
396
+ .excalidraw--mobile.excalidraw {
397
+ --editor-container-padding: 0.75rem;
398
+ }
393
399
  @media screen and (min-device-width: 1921px) {
394
400
  .excalidraw {
395
401
  --lg-button-size: 2.5rem;
@@ -408,6 +414,8 @@
408
414
  --button-gray-1: #363636;
409
415
  --button-gray-2: #272727;
410
416
  --button-gray-3: #222;
417
+ --mobile-action-button-bg: var(--island-bg-color);
418
+ --mobile-color-border: rgba(255, 255, 255, 0.85);
411
419
  --button-special-active-bg-color: #204624;
412
420
  --dialog-border-color: var(--color-gray-80);
413
421
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -524,6 +532,10 @@
524
532
  .excalidraw button.standalone.active svg {
525
533
  color: var(--button-color, var(--color-on-primary-container));
526
534
  }
535
+ .excalidraw--mobile.excalidraw button.standalone {
536
+ width: var(--mobile-action-button-size, var(--default-button-size));
537
+ height: var(--mobile-action-button-size, var(--default-button-size));
538
+ }
527
539
  .excalidraw button.standalone svg {
528
540
  width: var(--default-icon-size);
529
541
  height: var(--default-icon-size);
@@ -594,6 +606,11 @@
594
606
  .excalidraw .focus-visible-none:focus-visible {
595
607
  outline: none !important;
596
608
  }
609
+ .excalidraw .color-picker__title {
610
+ padding: 0 0.5rem;
611
+ font-size: 0.875rem;
612
+ text-align: left;
613
+ }
597
614
  .excalidraw .color-picker__heading {
598
615
  padding: 0 0.5rem;
599
616
  font-size: 0.75rem;
@@ -720,6 +737,13 @@
720
737
  width: 1.625rem;
721
738
  height: 1.625rem;
722
739
  }
740
+ .excalidraw .color-picker__button.compact-sizing {
741
+ width: var(--mobile-action-button-size);
742
+ height: var(--mobile-action-button-size);
743
+ }
744
+ .excalidraw .color-picker__button.mobile-border {
745
+ border: 1px solid var(--mobile-color-border);
746
+ }
723
747
  .excalidraw .color-picker__button__hotkey-label {
724
748
  position: absolute;
725
749
  right: 5px;
@@ -978,6 +1002,10 @@
978
1002
  .excalidraw .color-picker-label-swatch.active svg {
979
1003
  color: var(--button-color, var(--color-on-primary-container));
980
1004
  }
1005
+ .excalidraw--mobile.excalidraw .color-picker-label-swatch {
1006
+ width: var(--mobile-action-button-size, var(--default-button-size));
1007
+ height: var(--mobile-action-button-size, var(--default-button-size));
1008
+ }
981
1009
  .excalidraw .color-picker-label-swatch:after {
982
1010
  content: "";
983
1011
  position: absolute;
@@ -1713,30 +1741,48 @@
1713
1741
  /* components/dropdownMenu/DropdownMenu.scss */
1714
1742
  .excalidraw .dropdown-menu {
1715
1743
  position: absolute;
1716
- top: 100%;
1744
+ top: 2.5rem;
1717
1745
  margin-top: 0.5rem;
1718
1746
  }
1747
+ .excalidraw .dropdown-menu--placement-top {
1748
+ top: auto;
1749
+ bottom: 100%;
1750
+ margin-top: 0;
1751
+ margin-bottom: 0.5rem;
1752
+ }
1719
1753
  .excalidraw .dropdown-menu--mobile {
1720
- left: 0;
1721
1754
  width: 100%;
1722
1755
  row-gap: 0.75rem;
1723
1756
  }
1757
+ .excalidraw .dropdown-menu--mobile.main-menu-dropdown {
1758
+ min-width: 232px;
1759
+ max-width: calc(100vw - var(--editor-container-padding) * 2);
1760
+ margin-top: 0;
1761
+ margin-bottom: 0;
1762
+ z-index: var(--zIndex-layerUI);
1763
+ }
1764
+ @media screen and (orientation: landscape) {
1765
+ .excalidraw .dropdown-menu--mobile.main-menu-dropdown {
1766
+ max-width: 232px;
1767
+ }
1768
+ }
1724
1769
  .excalidraw .dropdown-menu--mobile .dropdown-menu-container {
1725
1770
  padding: 8px 8px;
1726
1771
  box-sizing: border-box;
1772
+ max-height: calc(100svh - var(--editor-container-padding) * 2 - 2.25rem);
1727
1773
  box-shadow: var(--shadow-island);
1728
1774
  border-radius: var(--border-radius-lg);
1729
1775
  position: relative;
1730
1776
  transition: box-shadow 0.5s ease-in-out;
1731
1777
  display: flex;
1732
1778
  flex-direction: column;
1779
+ overflow-y: auto;
1733
1780
  }
1734
1781
  .excalidraw .dropdown-menu--mobile .dropdown-menu-container.zen-mode {
1735
1782
  box-shadow: none;
1736
1783
  }
1737
1784
  .excalidraw .dropdown-menu .dropdown-menu-container {
1738
1785
  background-color: var(--island-bg-color);
1739
- max-height: calc(100vh - 150px);
1740
1786
  overflow-y: auto;
1741
1787
  --gap: 2;
1742
1788
  }
@@ -1901,6 +1947,10 @@
1901
1947
  .excalidraw .dropdown-menu-button.active svg {
1902
1948
  color: var(--button-color, var(--color-on-primary-container));
1903
1949
  }
1950
+ .excalidraw--mobile.excalidraw .dropdown-menu-button {
1951
+ width: var(--mobile-action-button-size, var(--default-button-size));
1952
+ height: var(--mobile-action-button-size, var(--default-button-size));
1953
+ }
1904
1954
  .excalidraw.theme--dark.excalidraw .dropdown-menu-button {
1905
1955
  --background: var(--color-surface-high);
1906
1956
  }
@@ -2213,6 +2263,8 @@
2213
2263
  --button-gray-1: #e9ecef;
2214
2264
  --button-gray-2: #ced4da;
2215
2265
  --button-gray-3: #adb5bd;
2266
+ --mobile-action-button-bg: rgba(255, 255, 255, 0.35);
2267
+ --mobile-color-border: var(--default-border-color);
2216
2268
  --button-special-active-bg-color: #ebfbee;
2217
2269
  --dialog-border-color: var(--color-gray-20);
2218
2270
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -2246,6 +2298,7 @@
2246
2298
  --lg-button-size: 2.25rem;
2247
2299
  --lg-icon-size: 1rem;
2248
2300
  --editor-container-padding: 1rem;
2301
+ --mobile-action-button-size: 2rem;
2249
2302
  --scrollbar-thumb: var(--button-gray-2);
2250
2303
  --scrollbar-thumb-hover: var(--button-gray-3);
2251
2304
  --color-slider-track: hsl(240, 100%, 90%);
@@ -2345,6 +2398,9 @@
2345
2398
  --color-badge: #0b6513;
2346
2399
  --background-color-badge: #d3ffd2;
2347
2400
  }
2401
+ .excalidraw--mobile.excalidraw {
2402
+ --editor-container-padding: 0.75rem;
2403
+ }
2348
2404
  @media screen and (min-device-width: 1921px) {
2349
2405
  .excalidraw {
2350
2406
  --lg-button-size: 2.5rem;
@@ -2363,6 +2419,8 @@
2363
2419
  --button-gray-1: #363636;
2364
2420
  --button-gray-2: #272727;
2365
2421
  --button-gray-3: #222;
2422
+ --mobile-action-button-bg: var(--island-bg-color);
2423
+ --mobile-color-border: rgba(255, 255, 255, 0.85);
2366
2424
  --button-special-active-bg-color: #204624;
2367
2425
  --dialog-border-color: var(--color-gray-80);
2368
2426
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -2478,6 +2536,10 @@
2478
2536
  .excalidraw .excalidraw-button.active svg {
2479
2537
  color: var(--button-color, var(--color-on-primary-container));
2480
2538
  }
2539
+ .excalidraw--mobile.excalidraw .excalidraw-button {
2540
+ width: var(--mobile-action-button-size, var(--default-button-size));
2541
+ height: var(--mobile-action-button-size, var(--default-button-size));
2542
+ }
2481
2543
 
2482
2544
  /* components/TextField.scss */
2483
2545
  .excalidraw {
@@ -2941,33 +3003,29 @@
2941
3003
  justify-content: center;
2942
3004
  align-items: center;
2943
3005
  min-height: 2.5rem;
3006
+ pointer-events: auto;
2944
3007
  --default-button-size: 2rem;
2945
3008
  }
2946
3009
  .compact-shape-actions .compact-action-item .compact-action-button {
2947
- width: 2rem;
2948
- height: 2rem;
3010
+ width: var(--mobile-action-button-size);
3011
+ height: var(--mobile-action-button-size);
2949
3012
  border: none;
2950
3013
  border-radius: var(--border-radius-lg);
2951
- background: transparent;
2952
3014
  color: var(--color-on-surface);
2953
3015
  cursor: pointer;
2954
3016
  display: flex;
2955
3017
  align-items: center;
2956
3018
  justify-content: center;
2957
3019
  transition: all 0.2s ease;
3020
+ background: var(--mobile-action-button-bg);
2958
3021
  }
2959
3022
  .compact-shape-actions .compact-action-item .compact-action-button svg {
2960
3023
  width: 1rem;
2961
3024
  height: 1rem;
2962
3025
  flex: 0 0 auto;
2963
3026
  }
2964
- .compact-shape-actions .compact-action-item .compact-action-button:hover {
2965
- background: var(--button-hover-bg, var(--island-bg-color));
2966
- border-color: var(--button-hover-border, var(--button-border, var(--default-border-color)));
2967
- }
2968
- .compact-shape-actions .compact-action-item .compact-action-button:active {
2969
- background: var(--button-active-bg, var(--island-bg-color));
2970
- border-color: var(--button-active-border, var(--color-primary-darkest));
3027
+ .compact-shape-actions .compact-action-item .compact-action-button.active {
3028
+ background: var(--color-surface-primary-container, var(--mobile-action-button-bg));
2971
3029
  }
2972
3030
  .compact-shape-actions .compact-action-item .compact-popover-content .popover-section {
2973
3031
  margin-bottom: 1rem;
@@ -2988,28 +3046,30 @@
2988
3046
  flex-wrap: wrap;
2989
3047
  gap: 0.25rem;
2990
3048
  }
3049
+ .compact-shape-actions .ToolIcon .ToolIcon__icon {
3050
+ width: var(--mobile-action-button-size);
3051
+ height: var(--mobile-action-button-size);
3052
+ background: var(--mobile-action-button-bg);
3053
+ }
3054
+ .compact-shape-actions .ToolIcon .ToolIcon__icon:hover {
3055
+ background-color: transparent;
3056
+ }
2991
3057
  .compact-shape-actions-island {
2992
3058
  width: fit-content;
2993
3059
  overflow-x: hidden;
2994
3060
  }
2995
- .compact-popover-content .popover-section {
2996
- margin-bottom: 1rem;
2997
- }
2998
- .compact-popover-content .popover-section:last-child {
2999
- margin-bottom: 0;
3000
- }
3001
- .compact-popover-content .popover-section .popover-section-title {
3002
- font-size: 0.75rem;
3003
- font-weight: 600;
3004
- color: var(--color-text-secondary);
3005
- margin-bottom: 0.5rem;
3006
- text-transform: uppercase;
3007
- letter-spacing: 0.5px;
3008
- }
3009
- .compact-popover-content .popover-section .buttonList {
3061
+ .mobile-shape-actions {
3062
+ z-index: 999;
3010
3063
  display: flex;
3011
- flex-wrap: wrap;
3012
- gap: 0.25rem;
3064
+ flex-direction: row;
3065
+ justify-content: space-between;
3066
+ width: 100%;
3067
+ background: transparent;
3068
+ border-radius: var(--border-radius-lg);
3069
+ box-shadow: none;
3070
+ overflow: none;
3071
+ scrollbar-width: none;
3072
+ -ms-overflow-style: none;
3013
3073
  }
3014
3074
  .shape-actions-theme-scope {
3015
3075
  --button-border: transparent;
@@ -3020,6 +3080,21 @@
3020
3080
  --button-bg: var(--color-surface-high);
3021
3081
  }
3022
3082
 
3083
+ /* components/ToolPopover.scss */
3084
+ .excalidraw .tool-popover-content {
3085
+ display: flex;
3086
+ flex-direction: row;
3087
+ gap: 0.25rem;
3088
+ border-radius: 0.5rem;
3089
+ background: var(--island-bg-color);
3090
+ box-shadow: var(--shadow-island);
3091
+ padding: 0.5rem;
3092
+ z-index: var(--zIndex-layerUI);
3093
+ }
3094
+ .excalidraw:focus {
3095
+ outline: none;
3096
+ }
3097
+
3023
3098
  /* components/CommandPalette/CommandPalette.scss */
3024
3099
  .excalidraw .command-palette-dialog {
3025
3100
  user-select: none;
@@ -3304,6 +3379,68 @@
3304
3379
  height: 1rem;
3305
3380
  }
3306
3381
 
3382
+ /* components/MobileToolBar.scss */
3383
+ .excalidraw .mobile-toolbar {
3384
+ display: flex;
3385
+ flex: 1;
3386
+ align-items: center;
3387
+ padding: 0px;
3388
+ gap: 4px;
3389
+ border-radius: var(--space-factor);
3390
+ overflow-x: auto;
3391
+ scrollbar-width: none;
3392
+ -ms-overflow-style: none;
3393
+ justify-content: space-between;
3394
+ }
3395
+ .excalidraw .mobile-toolbar::-webkit-scrollbar {
3396
+ display: none;
3397
+ }
3398
+ .excalidraw .mobile-toolbar .ToolIcon {
3399
+ min-width: 2rem;
3400
+ min-height: 2rem;
3401
+ border-radius: 4px;
3402
+ display: flex;
3403
+ align-items: center;
3404
+ justify-content: center;
3405
+ flex-shrink: 0;
3406
+ }
3407
+ .excalidraw .mobile-toolbar .ToolIcon .ToolIcon__icon {
3408
+ width: 2.25rem;
3409
+ height: 2.25rem;
3410
+ }
3411
+ .excalidraw .mobile-toolbar .ToolIcon .ToolIcon__icon:hover {
3412
+ background-color: transparent;
3413
+ }
3414
+ .excalidraw .mobile-toolbar .ToolIcon.active {
3415
+ background: var(--color-surface-primary-container, var(--island-bg-color));
3416
+ border-color: var(--button-active-border, var(--color-primary-darkest));
3417
+ }
3418
+ .excalidraw .mobile-toolbar .ToolIcon svg {
3419
+ width: 1rem;
3420
+ height: 1rem;
3421
+ }
3422
+ .excalidraw .mobile-toolbar .App-toolbar__extra-tools-dropdown {
3423
+ min-width: 160px;
3424
+ z-index: var(--zIndex-layerUI);
3425
+ }
3426
+ .excalidraw .mobile-toolbar-separator {
3427
+ width: 1px;
3428
+ height: 24px;
3429
+ background: var(--default-border-color);
3430
+ margin: 0 2px;
3431
+ flex-shrink: 0;
3432
+ }
3433
+ .excalidraw .mobile-toolbar-undo {
3434
+ display: flex;
3435
+ align-items: center;
3436
+ }
3437
+ .excalidraw .mobile-toolbar-undo .ToolIcon {
3438
+ min-width: 32px;
3439
+ min-height: 32px;
3440
+ width: 32px;
3441
+ height: 32px;
3442
+ }
3443
+
3307
3444
  /* components/FixedSideContainer.scss */
3308
3445
  .excalidraw .FixedSideContainer {
3309
3446
  position: absolute;
@@ -3322,34 +3459,6 @@
3322
3459
  right: 42px;
3323
3460
  }
3324
3461
 
3325
- /* components/HintViewer.scss */
3326
- .excalidraw .HintViewer {
3327
- pointer-events: none;
3328
- box-sizing: border-box;
3329
- position: absolute;
3330
- display: flex;
3331
- flex-direction: column;
3332
- justify-content: center;
3333
- left: 0;
3334
- top: 100%;
3335
- max-width: 100%;
3336
- width: 100%;
3337
- margin-top: 0.5rem;
3338
- text-align: center;
3339
- color: var(--color-gray-40);
3340
- font-size: 0.75rem;
3341
- }
3342
- .excalidraw--mobile.excalidraw .HintViewer {
3343
- position: static;
3344
- padding-right: 2rem;
3345
- }
3346
- .excalidraw .HintViewer > span {
3347
- padding: 0.25rem;
3348
- }
3349
- .excalidraw.theme--dark .HintViewer {
3350
- color: var(--color-gray-60);
3351
- }
3352
-
3353
3462
  /* components/PasteChartDialog.scss */
3354
3463
  .excalidraw--mobile.excalidraw .PasteChartDialog .Island {
3355
3464
  display: flex;
@@ -3608,9 +3717,17 @@
3608
3717
  .excalidraw .sidebar-trigger.active svg {
3609
3718
  color: var(--button-color, var(--color-on-primary-container));
3610
3719
  }
3720
+ .excalidraw--mobile.excalidraw .sidebar-trigger {
3721
+ width: var(--mobile-action-button-size, var(--default-button-size));
3722
+ height: var(--mobile-action-button-size, var(--default-button-size));
3723
+ }
3611
3724
  .excalidraw .sidebar-trigger:active {
3612
3725
  box-shadow: 0 0 0 1px var(--color-brand-active);
3613
3726
  }
3727
+ .excalidraw--mobile.excalidraw .sidebar-trigger {
3728
+ width: var(--mobile-action-button-size, 2rem);
3729
+ height: var(--mobile-action-button-size, 2rem);
3730
+ }
3614
3731
  .excalidraw .sidebar-trigger svg {
3615
3732
  width: var(--lg-icon-size);
3616
3733
  height: var(--lg-icon-size);
@@ -3725,6 +3842,10 @@
3725
3842
  .excalidraw .sidebar__header__buttons button.active svg {
3726
3843
  color: var(--button-color, var(--color-on-primary-container));
3727
3844
  }
3845
+ .excalidraw--mobile.excalidraw .sidebar__header__buttons button {
3846
+ width: var(--mobile-action-button-size, var(--default-button-size));
3847
+ height: var(--mobile-action-button-size, var(--default-button-size));
3848
+ }
3728
3849
  .excalidraw .sidebar__header__buttons button svg {
3729
3850
  width: var(--lg-icon-size);
3730
3851
  height: var(--lg-icon-size);
@@ -4929,6 +5050,34 @@
4929
5050
  line-height: 1;
4930
5051
  }
4931
5052
 
5053
+ /* components/HintViewer.scss */
5054
+ .excalidraw .HintViewer {
5055
+ pointer-events: none;
5056
+ box-sizing: border-box;
5057
+ position: absolute;
5058
+ display: flex;
5059
+ flex-direction: column;
5060
+ justify-content: center;
5061
+ left: 0;
5062
+ top: 100%;
5063
+ max-width: 100%;
5064
+ width: 100%;
5065
+ margin-top: 0.5rem;
5066
+ text-align: center;
5067
+ color: var(--color-gray-40);
5068
+ font-size: 0.75rem;
5069
+ }
5070
+ .excalidraw--mobile.excalidraw .HintViewer {
5071
+ position: static;
5072
+ padding-right: 2rem;
5073
+ }
5074
+ .excalidraw .HintViewer > span {
5075
+ padding: 0.25rem;
5076
+ }
5077
+ .excalidraw.theme--dark .HintViewer {
5078
+ color: var(--color-gray-60);
5079
+ }
5080
+
4932
5081
  /* components/Switch.scss */
4933
5082
  .excalidraw {
4934
5083
  --Switch-disabled-color: var(--color-border-outline);
@@ -5433,6 +5582,9 @@
5433
5582
  background-color: var(--button-hover-bg);
5434
5583
  box-shadow: 0 0 0 1px var(--button-active-border, var(--color-primary-darkest)) inset;
5435
5584
  }
5585
+ .excalidraw .App-toolbar__extra-tools-trigger:hover {
5586
+ background-color: transparent;
5587
+ }
5436
5588
  .excalidraw .App-toolbar__extra-tools-trigger--selected,
5437
5589
  .excalidraw .App-toolbar__extra-tools-trigger--selected:hover {
5438
5590
  background: var(--color-primary-light);
@@ -5602,6 +5754,8 @@
5602
5754
 
5603
5755
  /* components/ExcalidrawLogo.scss */
5604
5756
  .excalidraw .ExcalidrawLogo {
5757
+ --logo-icon--mobile: 1rem;
5758
+ --logo-text--mobile: 0.75rem;
5605
5759
  --logo-icon--xs: 2rem;
5606
5760
  --logo-text--xs: 1.5rem;
5607
5761
  --logo-icon--small: 2.5rem;
@@ -5625,6 +5779,13 @@
5625
5779
  width: auto;
5626
5780
  color: var(--color-logo-text);
5627
5781
  }
5782
+ .excalidraw .ExcalidrawLogo.is-mobile .ExcalidrawLogo-icon {
5783
+ height: var(--logo-icon--mobile);
5784
+ }
5785
+ .excalidraw .ExcalidrawLogo.is-mobile .ExcalidrawLogo-text {
5786
+ height: var(--logo-text--mobile);
5787
+ margin-left: 0.5rem;
5788
+ }
5628
5789
  .excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-icon {
5629
5790
  height: var(--logo-icon--xs);
5630
5791
  }
@@ -5841,15 +6002,8 @@
5841
6002
  .excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__text {
5842
6003
  color: var(--color-gray-10);
5843
6004
  }
5844
- @media (max-height: 599px) {
5845
- .excalidraw .welcome-screen-center {
5846
- margin-top: 4rem;
5847
- }
5848
- }
5849
- @media (min-height: 600px) and (max-height: 900px) {
5850
- .excalidraw .welcome-screen-center {
5851
- margin-top: 8rem;
5852
- }
6005
+ .excalidraw.excalidraw--mobile .welcome-screen-center {
6006
+ margin-bottom: 2rem;
5853
6007
  }
5854
6008
  @media (max-height: 500px), (max-width: 320px) {
5855
6009
  .excalidraw .welcome-screen-center {
@@ -5900,6 +6054,8 @@
5900
6054
  --button-gray-1: #e9ecef;
5901
6055
  --button-gray-2: #ced4da;
5902
6056
  --button-gray-3: #adb5bd;
6057
+ --mobile-action-button-bg: rgba(255, 255, 255, 0.35);
6058
+ --mobile-color-border: var(--default-border-color);
5903
6059
  --button-special-active-bg-color: #ebfbee;
5904
6060
  --dialog-border-color: var(--color-gray-20);
5905
6061
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -5933,6 +6089,7 @@
5933
6089
  --lg-button-size: 2.25rem;
5934
6090
  --lg-icon-size: 1rem;
5935
6091
  --editor-container-padding: 1rem;
6092
+ --mobile-action-button-size: 2rem;
5936
6093
  --scrollbar-thumb: var(--button-gray-2);
5937
6094
  --scrollbar-thumb-hover: var(--button-gray-3);
5938
6095
  --color-slider-track: hsl(240, 100%, 90%);
@@ -6032,6 +6189,9 @@
6032
6189
  --color-badge: #0b6513;
6033
6190
  --background-color-badge: #d3ffd2;
6034
6191
  }
6192
+ .excalidraw--mobile.excalidraw {
6193
+ --editor-container-padding: 0.75rem;
6194
+ }
6035
6195
  @media screen and (min-device-width: 1921px) {
6036
6196
  .excalidraw {
6037
6197
  --lg-button-size: 2.5rem;
@@ -6050,6 +6210,8 @@
6050
6210
  --button-gray-1: #363636;
6051
6211
  --button-gray-2: #272727;
6052
6212
  --button-gray-3: #222;
6213
+ --mobile-action-button-bg: var(--island-bg-color);
6214
+ --mobile-color-border: rgba(255, 255, 255, 0.85);
6053
6215
  --button-special-active-bg-color: #204624;
6054
6216
  --dialog-border-color: var(--color-gray-80);
6055
6217
  --dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');
@@ -6172,6 +6334,12 @@ body.excalidraw-cursor-resize * {
6172
6334
  width: 100%;
6173
6335
  user-select: none;
6174
6336
  }
6337
+ .excalidraw button,
6338
+ .excalidraw label {
6339
+ -webkit-tap-highlight-color: transparent;
6340
+ -webkit-touch-callout: none;
6341
+ user-select: none;
6342
+ }
6175
6343
  .excalidraw button {
6176
6344
  cursor: pointer;
6177
6345
  user-select: none;
@@ -6359,6 +6527,12 @@ body.excalidraw-cursor-resize * {
6359
6527
  .excalidraw .buttonList .zIndexButton.active svg {
6360
6528
  color: var(--button-color, var(--color-on-primary-container));
6361
6529
  }
6530
+ .excalidraw--mobile.excalidraw .buttonList label,
6531
+ .excalidraw .buttonList button,
6532
+ .excalidraw .buttonList .zIndexButton {
6533
+ width: var(--mobile-action-button-size, var(--default-button-size));
6534
+ height: var(--mobile-action-button-size, var(--default-button-size));
6535
+ }
6362
6536
  .excalidraw .buttonList label svg,
6363
6537
  .excalidraw .buttonList button svg,
6364
6538
  .excalidraw .buttonList .zIndexButton svg {
@@ -6369,32 +6543,35 @@ body.excalidraw-cursor-resize * {
6369
6543
  z-index: var(--zIndex-layerUI);
6370
6544
  display: flex;
6371
6545
  flex-direction: column;
6372
- align-items: center;
6546
+ }
6547
+ .excalidraw .App-welcome-screen {
6548
+ z-index: var(--zIndex-layerUI);
6373
6549
  }
6374
6550
  .excalidraw .App-bottom-bar {
6375
6551
  position: absolute;
6376
- top: 0;
6552
+ width: calc(100% - 28px);
6553
+ max-width: 450px;
6377
6554
  bottom: 0;
6378
- left: 0;
6379
- right: 0;
6555
+ left: 50%;
6556
+ transform: translateX(-50%);
6380
6557
  --bar-padding: calc(4 * var(--space-factor));
6381
- z-index: 4;
6558
+ z-index: var(--zIndex-layerUI);
6382
6559
  display: flex;
6383
- align-items: flex-end;
6560
+ flex-direction: column;
6384
6561
  pointer-events: none;
6562
+ justify-content: center;
6385
6563
  }
6386
6564
  .excalidraw .App-bottom-bar > .Island {
6387
- width: 100%;
6388
- max-width: 100%;
6389
- min-width: 100%;
6390
6565
  box-sizing: border-box;
6391
6566
  max-height: 100%;
6567
+ padding: 4px;
6392
6568
  display: flex;
6393
6569
  flex-direction: column;
6394
6570
  pointer-events: var(--ui-pointerEvents);
6395
6571
  }
6396
6572
  .excalidraw .App-toolbar {
6397
- width: 100%;
6573
+ display: flex;
6574
+ justify-content: center;
6398
6575
  }
6399
6576
  .excalidraw .App-toolbar .eraser.ToolIcon:hover {
6400
6577
  --icon-fill-color: #fff;
@@ -6403,15 +6580,14 @@ body.excalidraw-cursor-resize * {
6403
6580
  .excalidraw .App-toolbar .eraser.active {
6404
6581
  background-color: var(--color-primary);
6405
6582
  }
6406
- .excalidraw .App-toolbar-content {
6583
+ .excalidraw .excalidraw-ui-top-left {
6407
6584
  display: flex;
6408
6585
  align-items: center;
6409
- justify-content: space-between;
6410
- padding: 8px;
6586
+ gap: 0.5rem;
6411
6587
  }
6412
- .excalidraw .App-toolbar-content .dropdown-menu--mobile {
6413
- bottom: 55px;
6414
- top: auto;
6588
+ .excalidraw .App-toolbar-content {
6589
+ display: flex;
6590
+ flex-direction: column;
6415
6591
  }
6416
6592
  .excalidraw .App-mobile-menu {
6417
6593
  width: 100%;
@@ -6604,9 +6780,17 @@ body.excalidraw-cursor-resize * {
6604
6780
  .excalidraw .help-icon.active svg {
6605
6781
  color: var(--button-color, var(--color-on-primary-container));
6606
6782
  }
6783
+ .excalidraw--mobile.excalidraw .help-icon {
6784
+ width: var(--mobile-action-button-size, var(--default-button-size));
6785
+ height: var(--mobile-action-button-size, var(--default-button-size));
6786
+ }
6607
6787
  .excalidraw .help-icon:active {
6608
6788
  box-shadow: 0 0 0 1px var(--color-brand-active);
6609
6789
  }
6790
+ .excalidraw--mobile.excalidraw .help-icon {
6791
+ width: var(--mobile-action-button-size, 2rem);
6792
+ height: var(--mobile-action-button-size, 2rem);
6793
+ }
6610
6794
  .excalidraw .help-icon svg {
6611
6795
  width: var(--lg-icon-size);
6612
6796
  height: var(--lg-icon-size);
@@ -6634,7 +6818,7 @@ body.excalidraw-cursor-resize * {
6634
6818
  display: none;
6635
6819
  }
6636
6820
  .excalidraw--mobile.excalidraw .scroll-back-to-content {
6637
- bottom: calc(80px + var(--sab, 0));
6821
+ bottom: calc(100px + var(--sab, 0));
6638
6822
  z-index: -1;
6639
6823
  }
6640
6824
  :root[dir=rtl] .excalidraw .rtl-mirror {
@@ -6755,6 +6939,10 @@ body.excalidraw-cursor-resize * {
6755
6939
  .excalidraw .main-menu-trigger:active {
6756
6940
  box-shadow: 0 0 0 1px var(--color-brand-active);
6757
6941
  }
6942
+ .excalidraw--mobile.excalidraw .main-menu-trigger {
6943
+ width: var(--mobile-action-button-size, 2rem);
6944
+ height: var(--mobile-action-button-size, 2rem);
6945
+ }
6758
6946
  .excalidraw .App-mobile-menu,
6759
6947
  .excalidraw .App-menu__left {
6760
6948
  --button-border: transparent;