@tldraw/editor 4.6.0-next.20de11b7e238 → 4.6.0-next.241e87d4700a

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 (156) hide show
  1. package/dist-cjs/index.d.ts +668 -96
  2. package/dist-cjs/index.js +16 -3
  3. package/dist-cjs/index.js.map +3 -3
  4. package/dist-cjs/lib/TldrawEditor.js +55 -12
  5. package/dist-cjs/lib/TldrawEditor.js.map +3 -3
  6. package/dist-cjs/lib/components/MenuClickCapture.js +16 -1
  7. package/dist-cjs/lib/components/MenuClickCapture.js.map +2 -2
  8. package/dist-cjs/lib/components/default-components/CanvasShapeIndicators.js +3 -3
  9. package/dist-cjs/lib/components/default-components/CanvasShapeIndicators.js.map +2 -2
  10. package/dist-cjs/lib/config/createTLStore.js +7 -0
  11. package/dist-cjs/lib/config/createTLStore.js.map +2 -2
  12. package/dist-cjs/lib/config/defaultAssets.js +36 -0
  13. package/dist-cjs/lib/config/defaultAssets.js.map +7 -0
  14. package/dist-cjs/lib/editor/Editor.js +215 -5
  15. package/dist-cjs/lib/editor/Editor.js.map +2 -2
  16. package/dist-cjs/lib/editor/assets/AssetUtil.js +66 -0
  17. package/dist-cjs/lib/editor/assets/AssetUtil.js.map +7 -0
  18. package/dist-cjs/lib/editor/managers/FontManager/FontManager.js.map +2 -2
  19. package/dist-cjs/lib/editor/managers/PerformanceManager/PerformanceApiAdapter.js +80 -0
  20. package/dist-cjs/lib/editor/managers/PerformanceManager/PerformanceApiAdapter.js.map +7 -0
  21. package/dist-cjs/lib/editor/managers/PerformanceManager/PerformanceManager.js +466 -0
  22. package/dist-cjs/lib/editor/managers/PerformanceManager/PerformanceManager.js.map +7 -0
  23. package/dist-cjs/lib/editor/managers/PerformanceManager/perf-types.js +17 -0
  24. package/dist-cjs/lib/editor/managers/PerformanceManager/perf-types.js.map +7 -0
  25. package/dist-cjs/lib/editor/managers/ThemeManager/ThemeManager.js +106 -0
  26. package/dist-cjs/lib/editor/managers/ThemeManager/ThemeManager.js.map +7 -0
  27. package/dist-cjs/lib/editor/managers/ThemeManager/defaultThemes.js +586 -0
  28. package/dist-cjs/lib/editor/managers/ThemeManager/defaultThemes.js.map +7 -0
  29. package/dist-cjs/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.js +6 -4
  30. package/dist-cjs/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.js.map +2 -2
  31. package/dist-cjs/lib/editor/shapes/ShapeUtil.js +11 -2
  32. package/dist-cjs/lib/editor/shapes/ShapeUtil.js.map +2 -2
  33. package/dist-cjs/lib/editor/shapes/group/GroupShapeUtil.js +1 -1
  34. package/dist-cjs/lib/editor/shapes/group/GroupShapeUtil.js.map +2 -2
  35. package/dist-cjs/lib/editor/shapes/shared/getPerfectDashProps.js +6 -0
  36. package/dist-cjs/lib/editor/shapes/shared/getPerfectDashProps.js.map +2 -2
  37. package/dist-cjs/lib/editor/tools/StateNode.js +14 -17
  38. package/dist-cjs/lib/editor/tools/StateNode.js.map +2 -2
  39. package/dist-cjs/lib/editor/types/SvgExportContext.js.map +2 -2
  40. package/dist-cjs/lib/editor/types/external-content.js.map +1 -1
  41. package/dist-cjs/lib/exports/getSvgJsx.js +12 -7
  42. package/dist-cjs/lib/exports/getSvgJsx.js.map +2 -2
  43. package/dist-cjs/lib/globals/environment.js +18 -1
  44. package/dist-cjs/lib/globals/environment.js.map +2 -2
  45. package/dist-cjs/lib/hooks/{useIsDarkMode.js → useColorMode.js} +14 -10
  46. package/dist-cjs/lib/hooks/useColorMode.js.map +7 -0
  47. package/dist-cjs/lib/hooks/useCursor.js +3 -7
  48. package/dist-cjs/lib/hooks/useCursor.js.map +2 -2
  49. package/dist-cjs/lib/hooks/useDarkMode.js +4 -4
  50. package/dist-cjs/lib/hooks/useDarkMode.js.map +2 -2
  51. package/dist-cjs/lib/utils/reparenting.js +2 -1
  52. package/dist-cjs/lib/utils/reparenting.js.map +2 -2
  53. package/dist-cjs/lib/utils/richText.js.map +2 -2
  54. package/dist-cjs/lib/utils/runtime.js +2 -1
  55. package/dist-cjs/lib/utils/runtime.js.map +2 -2
  56. package/dist-cjs/lib/utils/sync/hardReset.js +0 -8
  57. package/dist-cjs/lib/utils/sync/hardReset.js.map +2 -2
  58. package/dist-cjs/version.js +3 -3
  59. package/dist-cjs/version.js.map +1 -1
  60. package/dist-esm/index.d.mts +668 -96
  61. package/dist-esm/index.mjs +17 -6
  62. package/dist-esm/index.mjs.map +2 -2
  63. package/dist-esm/lib/TldrawEditor.mjs +58 -12
  64. package/dist-esm/lib/TldrawEditor.mjs.map +3 -3
  65. package/dist-esm/lib/components/MenuClickCapture.mjs +16 -1
  66. package/dist-esm/lib/components/MenuClickCapture.mjs.map +2 -2
  67. package/dist-esm/lib/components/default-components/CanvasShapeIndicators.mjs +3 -3
  68. package/dist-esm/lib/components/default-components/CanvasShapeIndicators.mjs.map +2 -2
  69. package/dist-esm/lib/config/createTLStore.mjs +10 -1
  70. package/dist-esm/lib/config/createTLStore.mjs.map +2 -2
  71. package/dist-esm/lib/config/defaultAssets.mjs +16 -0
  72. package/dist-esm/lib/config/defaultAssets.mjs.map +7 -0
  73. package/dist-esm/lib/editor/Editor.mjs +215 -5
  74. package/dist-esm/lib/editor/Editor.mjs.map +2 -2
  75. package/dist-esm/lib/editor/assets/AssetUtil.mjs +46 -0
  76. package/dist-esm/lib/editor/assets/AssetUtil.mjs.map +7 -0
  77. package/dist-esm/lib/editor/managers/FontManager/FontManager.mjs.map +2 -2
  78. package/dist-esm/lib/editor/managers/PerformanceManager/PerformanceApiAdapter.mjs +60 -0
  79. package/dist-esm/lib/editor/managers/PerformanceManager/PerformanceApiAdapter.mjs.map +7 -0
  80. package/dist-esm/lib/editor/managers/PerformanceManager/PerformanceManager.mjs +438 -0
  81. package/dist-esm/lib/editor/managers/PerformanceManager/PerformanceManager.mjs.map +7 -0
  82. package/dist-esm/lib/editor/managers/PerformanceManager/perf-types.mjs +1 -0
  83. package/dist-esm/lib/editor/managers/PerformanceManager/perf-types.mjs.map +7 -0
  84. package/dist-esm/lib/editor/managers/ThemeManager/ThemeManager.mjs +88 -0
  85. package/dist-esm/lib/editor/managers/ThemeManager/ThemeManager.mjs.map +7 -0
  86. package/dist-esm/lib/editor/managers/ThemeManager/defaultThemes.mjs +568 -0
  87. package/dist-esm/lib/editor/managers/ThemeManager/defaultThemes.mjs.map +7 -0
  88. package/dist-esm/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.mjs +6 -4
  89. package/dist-esm/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.mjs.map +2 -2
  90. package/dist-esm/lib/editor/shapes/ShapeUtil.mjs +11 -2
  91. package/dist-esm/lib/editor/shapes/ShapeUtil.mjs.map +2 -2
  92. package/dist-esm/lib/editor/shapes/group/GroupShapeUtil.mjs +1 -1
  93. package/dist-esm/lib/editor/shapes/group/GroupShapeUtil.mjs.map +2 -2
  94. package/dist-esm/lib/editor/shapes/shared/getPerfectDashProps.mjs +6 -0
  95. package/dist-esm/lib/editor/shapes/shared/getPerfectDashProps.mjs.map +2 -2
  96. package/dist-esm/lib/editor/tools/StateNode.mjs +14 -17
  97. package/dist-esm/lib/editor/tools/StateNode.mjs.map +2 -2
  98. package/dist-esm/lib/editor/types/SvgExportContext.mjs.map +2 -2
  99. package/dist-esm/lib/exports/getSvgJsx.mjs +12 -10
  100. package/dist-esm/lib/exports/getSvgJsx.mjs.map +2 -2
  101. package/dist-esm/lib/globals/environment.mjs +18 -1
  102. package/dist-esm/lib/globals/environment.mjs.map +2 -2
  103. package/dist-esm/lib/hooks/useColorMode.mjs +19 -0
  104. package/dist-esm/lib/hooks/useColorMode.mjs.map +7 -0
  105. package/dist-esm/lib/hooks/useCursor.mjs +3 -7
  106. package/dist-esm/lib/hooks/useCursor.mjs.map +2 -2
  107. package/dist-esm/lib/hooks/useDarkMode.mjs +4 -4
  108. package/dist-esm/lib/hooks/useDarkMode.mjs.map +2 -2
  109. package/dist-esm/lib/utils/reparenting.mjs +2 -1
  110. package/dist-esm/lib/utils/reparenting.mjs.map +2 -2
  111. package/dist-esm/lib/utils/richText.mjs.map +2 -2
  112. package/dist-esm/lib/utils/runtime.mjs +2 -1
  113. package/dist-esm/lib/utils/runtime.mjs.map +2 -2
  114. package/dist-esm/lib/utils/sync/hardReset.mjs +0 -8
  115. package/dist-esm/lib/utils/sync/hardReset.mjs.map +2 -2
  116. package/dist-esm/version.mjs +3 -3
  117. package/dist-esm/version.mjs.map +1 -1
  118. package/editor.css +0 -33
  119. package/package.json +7 -7
  120. package/src/index.ts +23 -6
  121. package/src/lib/TldrawEditor.tsx +90 -13
  122. package/src/lib/components/MenuClickCapture.tsx +20 -0
  123. package/src/lib/components/default-components/CanvasShapeIndicators.tsx +3 -3
  124. package/src/lib/config/createTLStore.ts +22 -1
  125. package/src/lib/config/defaultAssets.ts +19 -0
  126. package/src/lib/editor/Editor.ts +301 -27
  127. package/src/lib/editor/assets/AssetUtil.ts +85 -0
  128. package/src/lib/editor/managers/FontManager/FontManager.test.ts +9 -2
  129. package/src/lib/editor/managers/FontManager/FontManager.ts +1 -67
  130. package/src/lib/editor/managers/PerformanceManager/PerformanceApiAdapter.ts +82 -0
  131. package/src/lib/editor/managers/PerformanceManager/PerformanceManager.test.ts +522 -0
  132. package/src/lib/editor/managers/PerformanceManager/PerformanceManager.ts +583 -0
  133. package/src/lib/editor/managers/PerformanceManager/perf-types.ts +196 -0
  134. package/src/lib/editor/managers/ThemeManager/ThemeManager.ts +116 -0
  135. package/src/lib/editor/managers/ThemeManager/defaultThemes.ts +605 -0
  136. package/src/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.test.ts +23 -29
  137. package/src/lib/editor/managers/UserPreferencesManager/UserPreferencesManager.ts +5 -3
  138. package/src/lib/editor/shapes/ShapeUtil.ts +28 -3
  139. package/src/lib/editor/shapes/group/GroupShapeUtil.tsx +1 -1
  140. package/src/lib/editor/shapes/shared/getPerfectDashProps.ts +7 -0
  141. package/src/lib/editor/tools/StateNode.ts +16 -18
  142. package/src/lib/editor/types/SvgExportContext.tsx +5 -0
  143. package/src/lib/editor/types/external-content.ts +1 -0
  144. package/src/lib/exports/getSvgJsx.tsx +21 -15
  145. package/src/lib/globals/environment.ts +18 -0
  146. package/src/lib/hooks/{useIsDarkMode.ts → useColorMode.ts} +9 -5
  147. package/src/lib/hooks/useCursor.ts +3 -7
  148. package/src/lib/hooks/useDarkMode.ts +4 -4
  149. package/src/lib/utils/reparenting.ts +6 -2
  150. package/src/lib/utils/richText.ts +1 -1
  151. package/src/lib/utils/runtime.ts +3 -1
  152. package/src/lib/utils/sync/hardReset.ts +0 -8
  153. package/src/version.ts +3 -3
  154. package/dist-cjs/lib/hooks/useIsDarkMode.js.map +0 -7
  155. package/dist-esm/lib/hooks/useIsDarkMode.mjs +0 -15
  156. package/dist-esm/lib/hooks/useIsDarkMode.mjs.map +0 -7
@@ -0,0 +1,568 @@
1
+ import {
2
+ DefaultFontFamilies
3
+ } from "@tldraw/tlschema";
4
+ const DEFAULT_THEME = {
5
+ id: "default",
6
+ fontSize: 16,
7
+ lineHeight: 1.35,
8
+ strokeWidth: 2,
9
+ fonts: {
10
+ draw: {
11
+ fontFamily: DefaultFontFamilies.draw,
12
+ faces: [
13
+ { family: "tldraw_draw", src: { url: "tldraw_draw", format: "woff2" }, weight: "normal" },
14
+ {
15
+ family: "tldraw_draw",
16
+ src: { url: "tldraw_draw_bold", format: "woff2" },
17
+ weight: "bold"
18
+ },
19
+ {
20
+ family: "tldraw_draw",
21
+ src: { url: "tldraw_draw_italic", format: "woff2" },
22
+ weight: "normal",
23
+ style: "italic"
24
+ },
25
+ {
26
+ family: "tldraw_draw",
27
+ src: { url: "tldraw_draw_italic_bold", format: "woff2" },
28
+ weight: "bold",
29
+ style: "italic"
30
+ }
31
+ ]
32
+ },
33
+ sans: {
34
+ fontFamily: DefaultFontFamilies.sans,
35
+ faces: [
36
+ {
37
+ family: "tldraw_sans",
38
+ src: { url: "tldraw_sans", format: "woff2" },
39
+ weight: "normal",
40
+ style: "normal"
41
+ },
42
+ {
43
+ family: "tldraw_sans",
44
+ src: { url: "tldraw_sans_bold", format: "woff2" },
45
+ weight: "bold",
46
+ style: "normal"
47
+ },
48
+ {
49
+ family: "tldraw_sans",
50
+ src: { url: "tldraw_sans_italic", format: "woff2" },
51
+ weight: "normal",
52
+ style: "italic"
53
+ },
54
+ {
55
+ family: "tldraw_sans",
56
+ src: { url: "tldraw_sans_italic_bold", format: "woff2" },
57
+ weight: "bold",
58
+ style: "italic"
59
+ }
60
+ ]
61
+ },
62
+ serif: {
63
+ fontFamily: DefaultFontFamilies.serif,
64
+ faces: [
65
+ {
66
+ family: "tldraw_serif",
67
+ src: { url: "tldraw_serif", format: "woff2" },
68
+ weight: "normal",
69
+ style: "normal"
70
+ },
71
+ {
72
+ family: "tldraw_serif",
73
+ src: { url: "tldraw_serif_bold", format: "woff2" },
74
+ weight: "bold",
75
+ style: "normal"
76
+ },
77
+ {
78
+ family: "tldraw_serif",
79
+ src: { url: "tldraw_serif_italic", format: "woff2" },
80
+ weight: "normal",
81
+ style: "italic"
82
+ },
83
+ {
84
+ family: "tldraw_serif",
85
+ src: { url: "tldraw_serif_italic_bold", format: "woff2" },
86
+ weight: "bold",
87
+ style: "italic"
88
+ }
89
+ ]
90
+ },
91
+ mono: {
92
+ fontFamily: DefaultFontFamilies.mono,
93
+ faces: [
94
+ {
95
+ family: "tldraw_mono",
96
+ src: { url: "tldraw_mono", format: "woff2" },
97
+ weight: "normal",
98
+ style: "normal"
99
+ },
100
+ {
101
+ family: "tldraw_mono",
102
+ src: { url: "tldraw_mono_bold", format: "woff2" },
103
+ weight: "bold",
104
+ style: "normal"
105
+ },
106
+ {
107
+ family: "tldraw_mono",
108
+ src: { url: "tldraw_mono_italic", format: "woff2" },
109
+ weight: "normal",
110
+ style: "italic"
111
+ },
112
+ {
113
+ family: "tldraw_mono",
114
+ src: { url: "tldraw_mono_italic_bold", format: "woff2" },
115
+ weight: "bold",
116
+ style: "italic"
117
+ }
118
+ ]
119
+ }
120
+ },
121
+ colors: {
122
+ light: {
123
+ text: "#000000",
124
+ background: "#f9fafb",
125
+ negativeSpace: "#f9fafb",
126
+ solid: "#fcfffe",
127
+ cursor: "black",
128
+ noteBorder: "rgb(144, 144, 144)",
129
+ black: {
130
+ solid: "#1d1d1d",
131
+ fill: "#1d1d1d",
132
+ linedFill: "#363636",
133
+ frameHeadingStroke: "#717171",
134
+ frameHeadingFill: "#ffffff",
135
+ frameStroke: "#717171",
136
+ frameFill: "#ffffff",
137
+ frameText: "#000000",
138
+ noteFill: "#FCE19C",
139
+ noteText: "#000000",
140
+ semi: "#e8e8e8",
141
+ pattern: "#494949",
142
+ highlightSrgb: "#fddd00",
143
+ highlightP3: "color(display-p3 0.972 0.8205 0.05)"
144
+ },
145
+ blue: {
146
+ solid: "#4465e9",
147
+ fill: "#4465e9",
148
+ linedFill: "#6580ec",
149
+ frameHeadingStroke: "#6681ec",
150
+ frameHeadingFill: "#f9fafe",
151
+ frameStroke: "#6681ec",
152
+ frameFill: "#f9fafe",
153
+ frameText: "#000000",
154
+ noteFill: "#8AA3FF",
155
+ noteText: "#000000",
156
+ semi: "#dce1f8",
157
+ pattern: "#6681ee",
158
+ highlightSrgb: "#10acff",
159
+ highlightP3: "color(display-p3 0.308 0.6632 0.9996)"
160
+ },
161
+ green: {
162
+ solid: "#099268",
163
+ fill: "#099268",
164
+ linedFill: "#0bad7c",
165
+ frameHeadingStroke: "#37a684",
166
+ frameHeadingFill: "#f8fcfa",
167
+ frameStroke: "#37a684",
168
+ frameFill: "#f8fcfa",
169
+ frameText: "#000000",
170
+ noteFill: "#6FC896",
171
+ noteText: "#000000",
172
+ semi: "#d3e9e3",
173
+ pattern: "#39a785",
174
+ highlightSrgb: "#00ffc8",
175
+ highlightP3: "color(display-p3 0.2536 0.984 0.7981)"
176
+ },
177
+ grey: {
178
+ solid: "#9fa8b2",
179
+ fill: "#9fa8b2",
180
+ linedFill: "#bbc1c9",
181
+ frameHeadingStroke: "#aaaaab",
182
+ frameHeadingFill: "#fbfcfc",
183
+ frameStroke: "#aaaaab",
184
+ frameFill: "#fcfcfd",
185
+ frameText: "#000000",
186
+ noteFill: "#C0CAD3",
187
+ noteText: "#000000",
188
+ semi: "#eceef0",
189
+ pattern: "#bcc3c9",
190
+ highlightSrgb: "#cbe7f1",
191
+ highlightP3: "color(display-p3 0.8163 0.9023 0.9416)"
192
+ },
193
+ "light-blue": {
194
+ solid: "#4ba1f1",
195
+ fill: "#4ba1f1",
196
+ linedFill: "#7abaf5",
197
+ frameHeadingStroke: "#6cb2f3",
198
+ frameHeadingFill: "#f8fbfe",
199
+ frameStroke: "#6cb2f3",
200
+ frameFill: "#fafcff",
201
+ frameText: "#000000",
202
+ noteFill: "#9BC4FD",
203
+ noteText: "#000000",
204
+ semi: "#ddedfa",
205
+ pattern: "#6fbbf8",
206
+ highlightSrgb: "#00f4ff",
207
+ highlightP3: "color(display-p3 0.1512 0.9414 0.9996)"
208
+ },
209
+ "light-green": {
210
+ solid: "#4cb05e",
211
+ fill: "#4cb05e",
212
+ linedFill: "#7ec88c",
213
+ frameHeadingStroke: "#6dbe7c",
214
+ frameHeadingFill: "#f8fcf9",
215
+ frameStroke: "#6dbe7c",
216
+ frameFill: "#fafdfa",
217
+ frameText: "#000000",
218
+ noteFill: "#98D08A",
219
+ noteText: "#000000",
220
+ semi: "#dbf0e0",
221
+ pattern: "#65cb78",
222
+ highlightSrgb: "#65f641",
223
+ highlightP3: "color(display-p3 0.563 0.9495 0.3857)"
224
+ },
225
+ "light-red": {
226
+ solid: "#f87777",
227
+ fill: "#f87777",
228
+ linedFill: "#f99a9a",
229
+ frameHeadingStroke: "#f89090",
230
+ frameHeadingFill: "#fffafa",
231
+ frameStroke: "#f89090",
232
+ frameFill: "#fffbfb",
233
+ frameText: "#000000",
234
+ noteFill: "#F7A5A1",
235
+ noteText: "#000000",
236
+ semi: "#f4dadb",
237
+ pattern: "#fe9e9e",
238
+ highlightSrgb: "#ff7fa3",
239
+ highlightP3: "color(display-p3 0.9988 0.5301 0.6397)"
240
+ },
241
+ "light-violet": {
242
+ solid: "#e085f4",
243
+ fill: "#e085f4",
244
+ linedFill: "#e9abf7",
245
+ frameHeadingStroke: "#e59bf5",
246
+ frameHeadingFill: "#fefaff",
247
+ frameStroke: "#e59bf5",
248
+ frameFill: "#fefbff",
249
+ frameText: "#000000",
250
+ noteFill: "#DFB0F9",
251
+ noteText: "#000000",
252
+ semi: "#f5eafa",
253
+ pattern: "#e9acf8",
254
+ highlightSrgb: "#ff88ff",
255
+ highlightP3: "color(display-p3 0.9676 0.5652 0.9999)"
256
+ },
257
+ orange: {
258
+ solid: "#e16919",
259
+ fill: "#e16919",
260
+ linedFill: "#ea8643",
261
+ frameHeadingStroke: "#e68544",
262
+ frameHeadingFill: "#fef9f6",
263
+ frameStroke: "#e68544",
264
+ frameFill: "#fef9f6",
265
+ frameText: "#000000",
266
+ noteFill: "#FAA475",
267
+ noteText: "#000000",
268
+ semi: "#f8e2d4",
269
+ pattern: "#f78438",
270
+ highlightSrgb: "#ffa500",
271
+ highlightP3: "color(display-p3 0.9988 0.6905 0.266)"
272
+ },
273
+ red: {
274
+ solid: "#e03131",
275
+ fill: "#e03131",
276
+ linedFill: "#e75f5f",
277
+ frameHeadingStroke: "#e55757",
278
+ frameHeadingFill: "#fef7f7",
279
+ frameStroke: "#e55757",
280
+ frameFill: "#fef9f9",
281
+ frameText: "#000000",
282
+ noteFill: "#FC8282",
283
+ noteText: "#000000",
284
+ semi: "#f4dadb",
285
+ pattern: "#e55959",
286
+ highlightSrgb: "#ff636e",
287
+ highlightP3: "color(display-p3 0.9992 0.4376 0.45)"
288
+ },
289
+ violet: {
290
+ solid: "#ae3ec9",
291
+ fill: "#ae3ec9",
292
+ linedFill: "#be68d4",
293
+ frameHeadingStroke: "#bc62d3",
294
+ frameHeadingFill: "#fcf7fd",
295
+ frameStroke: "#bc62d3",
296
+ frameFill: "#fdf9fd",
297
+ frameText: "#000000",
298
+ noteFill: "#DB91FD",
299
+ noteText: "#000000",
300
+ semi: "#ecdcf2",
301
+ pattern: "#bd63d3",
302
+ highlightSrgb: "#c77cff",
303
+ highlightP3: "color(display-p3 0.7469 0.5089 0.9995)"
304
+ },
305
+ yellow: {
306
+ solid: "#f1ac4b",
307
+ fill: "#f1ac4b",
308
+ linedFill: "#f5c27a",
309
+ frameHeadingStroke: "#f3bb6c",
310
+ frameHeadingFill: "#fefcf8",
311
+ frameStroke: "#f3bb6c",
312
+ frameFill: "#fffdfa",
313
+ frameText: "#000000",
314
+ noteFill: "#FED49A",
315
+ noteText: "#000000",
316
+ semi: "#f9f0e6",
317
+ pattern: "#fecb92",
318
+ highlightSrgb: "#fddd00",
319
+ highlightP3: "color(display-p3 0.972 0.8705 0.05)"
320
+ },
321
+ white: {
322
+ solid: "#FFFFFF",
323
+ fill: "#FFFFFF",
324
+ linedFill: "#ffffff",
325
+ semi: "#f5f5f5",
326
+ pattern: "#f9f9f9",
327
+ frameHeadingStroke: "#7d7d7d",
328
+ frameHeadingFill: "#ffffff",
329
+ frameStroke: "#7d7d7d",
330
+ frameFill: "#ffffff",
331
+ frameText: "#000000",
332
+ noteFill: "#FFFFFF",
333
+ noteText: "#000000",
334
+ highlightSrgb: "#ffffff",
335
+ highlightP3: "color(display-p3 1 1 1)"
336
+ }
337
+ },
338
+ dark: {
339
+ text: "hsl(210, 17%, 98%)",
340
+ background: "hsl(240, 5%, 6.5%)",
341
+ negativeSpace: "hsl(240, 5%, 6.5%)",
342
+ solid: "#010403",
343
+ cursor: "white",
344
+ noteBorder: "rgb(20, 20, 20)",
345
+ black: {
346
+ solid: "#f2f2f2",
347
+ fill: "#f2f2f2",
348
+ linedFill: "#ffffff",
349
+ frameHeadingStroke: "#5c5c5c",
350
+ frameHeadingFill: "#252525",
351
+ frameStroke: "#5c5c5c",
352
+ frameFill: "#0c0c0c",
353
+ frameText: "#f2f2f2",
354
+ noteFill: "#2c2c2c",
355
+ noteText: "#f2f2f2",
356
+ semi: "#2c3036",
357
+ pattern: "#989898",
358
+ highlightSrgb: "#d2b700",
359
+ highlightP3: "color(display-p3 0.8078 0.6225 0.0312)"
360
+ },
361
+ blue: {
362
+ solid: "#4f72fc",
363
+ // 3c60f0
364
+ fill: "#4f72fc",
365
+ linedFill: "#3c5cdd",
366
+ frameHeadingStroke: "#384994",
367
+ frameHeadingFill: "#1C2036",
368
+ frameStroke: "#384994",
369
+ frameFill: "#11141f",
370
+ frameText: "#f2f2f2",
371
+ noteFill: "#2A3F98",
372
+ noteText: "#f2f2f2",
373
+ semi: "#262d40",
374
+ pattern: "#3a4b9e",
375
+ highlightSrgb: "#0079d2",
376
+ highlightP3: "color(display-p3 0.0032 0.4655 0.7991)"
377
+ },
378
+ green: {
379
+ solid: "#099268",
380
+ fill: "#099268",
381
+ linedFill: "#087856",
382
+ frameHeadingStroke: "#10513C",
383
+ frameHeadingFill: "#14241f",
384
+ frameStroke: "#10513C",
385
+ frameFill: "#0E1614",
386
+ frameText: "#f2f2f2",
387
+ noteFill: "#014429",
388
+ noteText: "#f2f2f2",
389
+ semi: "#253231",
390
+ pattern: "#366a53",
391
+ highlightSrgb: "#009774",
392
+ highlightP3: "color(display-p3 0.0085 0.582 0.4604)"
393
+ },
394
+ grey: {
395
+ solid: "#9398b0",
396
+ fill: "#9398b0",
397
+ linedFill: "#8388a5",
398
+ frameHeadingStroke: "#42474D",
399
+ frameHeadingFill: "#23262A",
400
+ frameStroke: "#42474D",
401
+ frameFill: "#151719",
402
+ frameText: "#f2f2f2",
403
+ noteFill: "#56595F",
404
+ noteText: "#f2f2f2",
405
+ semi: "#33373c",
406
+ pattern: "#7c8187",
407
+ highlightSrgb: "#9cb4cb",
408
+ highlightP3: "color(display-p3 0.6299 0.7012 0.7856)"
409
+ },
410
+ "light-blue": {
411
+ solid: "#4dabf7",
412
+ fill: "#4dabf7",
413
+ linedFill: "#2793ec",
414
+ frameHeadingStroke: "#075797",
415
+ frameHeadingFill: "#142839",
416
+ frameStroke: "#075797",
417
+ frameFill: "#0B1823",
418
+ frameText: "#f2f2f2",
419
+ noteFill: "#1F5495",
420
+ noteText: "#f2f2f2",
421
+ semi: "#2a3642",
422
+ pattern: "#4d7aa9",
423
+ highlightSrgb: "#00bdc8",
424
+ highlightP3: "color(display-p3 0.0023 0.7259 0.7735)"
425
+ },
426
+ "light-green": {
427
+ solid: "#40c057",
428
+ fill: "#40c057",
429
+ linedFill: "#37a44b",
430
+ frameHeadingStroke: "#1C5427",
431
+ frameHeadingFill: "#18251A",
432
+ frameStroke: "#1C5427",
433
+ frameFill: "#0F1911",
434
+ frameText: "#f2f2f2",
435
+ noteFill: "#21581D",
436
+ noteText: "#f2f2f2",
437
+ semi: "#2a3830",
438
+ pattern: "#4e874e",
439
+ highlightSrgb: "#00a000",
440
+ highlightP3: "color(display-p3 0.2711 0.6172 0.0195)"
441
+ },
442
+ "light-red": {
443
+ solid: "#ff8787",
444
+ fill: "#ff8787",
445
+ linedFill: "#ff6666",
446
+ frameHeadingStroke: "#6f3232",
447
+ frameHeadingFill: "#341818",
448
+ frameStroke: "#6f3232",
449
+ frameFill: "#181212",
450
+ frameText: "#f2f2f2",
451
+ noteFill: "#7a3333",
452
+ noteText: "#f2f2f2",
453
+ semi: "#3c2b2b",
454
+ pattern: "#a56767",
455
+ highlightSrgb: "#db005b",
456
+ highlightP3: "color(display-p3 0.7849 0.0585 0.3589)"
457
+ },
458
+ "light-violet": {
459
+ solid: "#e599f7",
460
+ fill: "#e599f7",
461
+ linedFill: "#dc71f4",
462
+ frameHeadingStroke: "#6c367a",
463
+ frameHeadingFill: "#2D2230",
464
+ frameStroke: "#6c367a",
465
+ frameFill: "#1C151E",
466
+ frameText: "#f2f2f2",
467
+ noteFill: "#762F8E",
468
+ noteText: "#f2f2f2",
469
+ semi: "#383442",
470
+ pattern: "#9770a9",
471
+ highlightSrgb: "#c400c7",
472
+ highlightP3: "color(display-p3 0.7024 0.0403 0.753)"
473
+ },
474
+ orange: {
475
+ solid: "#f76707",
476
+ fill: "#f76707",
477
+ linedFill: "#f54900",
478
+ frameHeadingStroke: "#773a0e",
479
+ frameHeadingFill: "#2f1d13",
480
+ frameStroke: "#773a0e",
481
+ frameFill: "#1c1512",
482
+ frameText: "#f2f2f2",
483
+ noteFill: "#7c3905",
484
+ noteText: "#f2f2f2",
485
+ semi: "#3b2e27",
486
+ pattern: "#9f552d",
487
+ highlightSrgb: "#d07a00",
488
+ highlightP3: "color(display-p3 0.7699 0.4937 0.0085)"
489
+ },
490
+ red: {
491
+ solid: "#e03131",
492
+ fill: "#e03131",
493
+ linedFill: "#c31d1d",
494
+ frameHeadingStroke: "#701e1e",
495
+ frameHeadingFill: "#301616",
496
+ frameStroke: "#701e1e",
497
+ frameFill: "#1b1313",
498
+ frameText: "#f2f2f2",
499
+ noteFill: "#7e201f",
500
+ noteText: "#f2f2f2",
501
+ semi: "#382726",
502
+ pattern: "#8f3734",
503
+ highlightSrgb: "#de002c",
504
+ highlightP3: "color(display-p3 0.7978 0.0509 0.2035)"
505
+ },
506
+ violet: {
507
+ solid: "#ae3ec9",
508
+ fill: "#ae3ec9",
509
+ linedFill: "#8f2fa7",
510
+ frameHeadingStroke: "#6d1583",
511
+ frameHeadingFill: "#27152e",
512
+ frameStroke: "#6d1583",
513
+ frameFill: "#1b0f21",
514
+ frameText: "#f2f2f2",
515
+ noteFill: "#5f1c70",
516
+ noteText: "#f2f2f2",
517
+ semi: "#342938",
518
+ pattern: "#763a8b",
519
+ highlightSrgb: "#9e00ee",
520
+ highlightP3: "color(display-p3 0.5651 0.0079 0.8986)"
521
+ },
522
+ yellow: {
523
+ solid: "#ffc034",
524
+ fill: "#ffc034",
525
+ linedFill: "#ffae00",
526
+ frameHeadingStroke: "#684e12",
527
+ frameHeadingFill: "#2a2113",
528
+ frameStroke: "#684e12",
529
+ frameFill: "#1e1911",
530
+ frameText: "#f2f2f2",
531
+ noteFill: "#8a5e1c",
532
+ noteText: "#f2f2f2",
533
+ semi: "#3b352b",
534
+ pattern: "#fecb92",
535
+ highlightSrgb: "#d2b700",
536
+ highlightP3: "color(display-p3 0.8078 0.7225 0.0312)"
537
+ },
538
+ white: {
539
+ solid: "#f3f3f3",
540
+ fill: "#f3f3f3",
541
+ linedFill: "#f3f3f3",
542
+ semi: "#f5f5f5",
543
+ pattern: "#f9f9f9",
544
+ frameHeadingStroke: "#ffffff",
545
+ frameHeadingFill: "#ffffff",
546
+ frameStroke: "#ffffff",
547
+ frameFill: "#ffffff",
548
+ frameText: "#000000",
549
+ noteFill: "#eaeaea",
550
+ noteText: "#1d1d1d",
551
+ highlightSrgb: "#ffffff",
552
+ highlightP3: "color(display-p3 1 1 1)"
553
+ }
554
+ }
555
+ }
556
+ };
557
+ function getColorValue(colors, color, variant) {
558
+ const colorEntry = colors[color];
559
+ if (!colorEntry || typeof colorEntry === "string") {
560
+ return color;
561
+ }
562
+ return colorEntry[variant];
563
+ }
564
+ export {
565
+ DEFAULT_THEME,
566
+ getColorValue
567
+ };
568
+ //# sourceMappingURL=defaultThemes.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/lib/editor/managers/ThemeManager/defaultThemes.ts"],
4
+ "sourcesContent": ["import {\n\tDefaultFontFamilies,\n\tTLDefaultColor,\n\tTLDefaultColorStyle,\n\tTLTheme,\n\tTLThemeColors,\n} from '@tldraw/tlschema'\n\n/**\n * The default theme definition containing color palettes for both light and dark modes.\n *\n * @public\n */\nexport const DEFAULT_THEME: TLTheme = {\n\tid: 'default',\n\tfontSize: 16,\n\tlineHeight: 1.35,\n\tstrokeWidth: 2,\n\tfonts: {\n\t\tdraw: {\n\t\t\tfontFamily: DefaultFontFamilies.draw,\n\t\t\tfaces: [\n\t\t\t\t{ family: 'tldraw_draw', src: { url: 'tldraw_draw', format: 'woff2' }, weight: 'normal' },\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_draw',\n\t\t\t\t\tsrc: { url: 'tldraw_draw_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_draw',\n\t\t\t\t\tsrc: { url: 'tldraw_draw_italic', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_draw',\n\t\t\t\t\tsrc: { url: 'tldraw_draw_italic_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tsans: {\n\t\t\tfontFamily: DefaultFontFamilies.sans,\n\t\t\tfaces: [\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_sans',\n\t\t\t\t\tsrc: { url: 'tldraw_sans', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_sans',\n\t\t\t\t\tsrc: { url: 'tldraw_sans_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_sans',\n\t\t\t\t\tsrc: { url: 'tldraw_sans_italic', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_sans',\n\t\t\t\t\tsrc: { url: 'tldraw_sans_italic_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tserif: {\n\t\t\tfontFamily: DefaultFontFamilies.serif,\n\t\t\tfaces: [\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_serif',\n\t\t\t\t\tsrc: { url: 'tldraw_serif', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_serif',\n\t\t\t\t\tsrc: { url: 'tldraw_serif_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_serif',\n\t\t\t\t\tsrc: { url: 'tldraw_serif_italic', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_serif',\n\t\t\t\t\tsrc: { url: 'tldraw_serif_italic_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tmono: {\n\t\t\tfontFamily: DefaultFontFamilies.mono,\n\t\t\tfaces: [\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_mono',\n\t\t\t\t\tsrc: { url: 'tldraw_mono', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_mono',\n\t\t\t\t\tsrc: { url: 'tldraw_mono_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'normal',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_mono',\n\t\t\t\t\tsrc: { url: 'tldraw_mono_italic', format: 'woff2' },\n\t\t\t\t\tweight: 'normal',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfamily: 'tldraw_mono',\n\t\t\t\t\tsrc: { url: 'tldraw_mono_italic_bold', format: 'woff2' },\n\t\t\t\t\tweight: 'bold',\n\t\t\t\t\tstyle: 'italic',\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t},\n\tcolors: {\n\t\tlight: {\n\t\t\ttext: '#000000',\n\t\t\tbackground: '#f9fafb',\n\t\t\tnegativeSpace: '#f9fafb',\n\t\t\tsolid: '#fcfffe',\n\t\t\tcursor: 'black',\n\t\t\tnoteBorder: 'rgb(144, 144, 144)',\n\t\t\tblack: {\n\t\t\t\tsolid: '#1d1d1d',\n\t\t\t\tfill: '#1d1d1d',\n\t\t\t\tlinedFill: '#363636',\n\t\t\t\tframeHeadingStroke: '#717171',\n\t\t\t\tframeHeadingFill: '#ffffff',\n\t\t\t\tframeStroke: '#717171',\n\t\t\t\tframeFill: '#ffffff',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#FCE19C',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#e8e8e8',\n\t\t\t\tpattern: '#494949',\n\t\t\t\thighlightSrgb: '#fddd00',\n\t\t\t\thighlightP3: 'color(display-p3 0.972 0.8205 0.05)',\n\t\t\t},\n\t\t\tblue: {\n\t\t\t\tsolid: '#4465e9',\n\t\t\t\tfill: '#4465e9',\n\t\t\t\tlinedFill: '#6580ec',\n\t\t\t\tframeHeadingStroke: '#6681ec',\n\t\t\t\tframeHeadingFill: '#f9fafe',\n\t\t\t\tframeStroke: '#6681ec',\n\t\t\t\tframeFill: '#f9fafe',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#8AA3FF',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#dce1f8',\n\t\t\t\tpattern: '#6681ee',\n\t\t\t\thighlightSrgb: '#10acff',\n\t\t\t\thighlightP3: 'color(display-p3 0.308 0.6632 0.9996)',\n\t\t\t},\n\t\t\tgreen: {\n\t\t\t\tsolid: '#099268',\n\t\t\t\tfill: '#099268',\n\t\t\t\tlinedFill: '#0bad7c',\n\t\t\t\tframeHeadingStroke: '#37a684',\n\t\t\t\tframeHeadingFill: '#f8fcfa',\n\t\t\t\tframeStroke: '#37a684',\n\t\t\t\tframeFill: '#f8fcfa',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#6FC896',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#d3e9e3',\n\t\t\t\tpattern: '#39a785',\n\t\t\t\thighlightSrgb: '#00ffc8',\n\t\t\t\thighlightP3: 'color(display-p3 0.2536 0.984 0.7981)',\n\t\t\t},\n\t\t\tgrey: {\n\t\t\t\tsolid: '#9fa8b2',\n\t\t\t\tfill: '#9fa8b2',\n\t\t\t\tlinedFill: '#bbc1c9',\n\t\t\t\tframeHeadingStroke: '#aaaaab',\n\t\t\t\tframeHeadingFill: '#fbfcfc',\n\t\t\t\tframeStroke: '#aaaaab',\n\t\t\t\tframeFill: '#fcfcfd',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#C0CAD3',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#eceef0',\n\t\t\t\tpattern: '#bcc3c9',\n\t\t\t\thighlightSrgb: '#cbe7f1',\n\t\t\t\thighlightP3: 'color(display-p3 0.8163 0.9023 0.9416)',\n\t\t\t},\n\t\t\t'light-blue': {\n\t\t\t\tsolid: '#4ba1f1',\n\t\t\t\tfill: '#4ba1f1',\n\t\t\t\tlinedFill: '#7abaf5',\n\t\t\t\tframeHeadingStroke: '#6cb2f3',\n\t\t\t\tframeHeadingFill: '#f8fbfe',\n\t\t\t\tframeStroke: '#6cb2f3',\n\t\t\t\tframeFill: '#fafcff',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#9BC4FD',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#ddedfa',\n\t\t\t\tpattern: '#6fbbf8',\n\t\t\t\thighlightSrgb: '#00f4ff',\n\t\t\t\thighlightP3: 'color(display-p3 0.1512 0.9414 0.9996)',\n\t\t\t},\n\t\t\t'light-green': {\n\t\t\t\tsolid: '#4cb05e',\n\t\t\t\tfill: '#4cb05e',\n\t\t\t\tlinedFill: '#7ec88c',\n\t\t\t\tframeHeadingStroke: '#6dbe7c',\n\t\t\t\tframeHeadingFill: '#f8fcf9',\n\t\t\t\tframeStroke: '#6dbe7c',\n\t\t\t\tframeFill: '#fafdfa',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#98D08A',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#dbf0e0',\n\t\t\t\tpattern: '#65cb78',\n\t\t\t\thighlightSrgb: '#65f641',\n\t\t\t\thighlightP3: 'color(display-p3 0.563 0.9495 0.3857)',\n\t\t\t},\n\t\t\t'light-red': {\n\t\t\t\tsolid: '#f87777',\n\t\t\t\tfill: '#f87777',\n\t\t\t\tlinedFill: '#f99a9a',\n\t\t\t\tframeHeadingStroke: '#f89090',\n\t\t\t\tframeHeadingFill: '#fffafa',\n\t\t\t\tframeStroke: '#f89090',\n\t\t\t\tframeFill: '#fffbfb',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#F7A5A1',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#f4dadb',\n\t\t\t\tpattern: '#fe9e9e',\n\t\t\t\thighlightSrgb: '#ff7fa3',\n\t\t\t\thighlightP3: 'color(display-p3 0.9988 0.5301 0.6397)',\n\t\t\t},\n\t\t\t'light-violet': {\n\t\t\t\tsolid: '#e085f4',\n\t\t\t\tfill: '#e085f4',\n\t\t\t\tlinedFill: '#e9abf7',\n\t\t\t\tframeHeadingStroke: '#e59bf5',\n\t\t\t\tframeHeadingFill: '#fefaff',\n\t\t\t\tframeStroke: '#e59bf5',\n\t\t\t\tframeFill: '#fefbff',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#DFB0F9',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#f5eafa',\n\t\t\t\tpattern: '#e9acf8',\n\t\t\t\thighlightSrgb: '#ff88ff',\n\t\t\t\thighlightP3: 'color(display-p3 0.9676 0.5652 0.9999)',\n\t\t\t},\n\t\t\torange: {\n\t\t\t\tsolid: '#e16919',\n\t\t\t\tfill: '#e16919',\n\t\t\t\tlinedFill: '#ea8643',\n\t\t\t\tframeHeadingStroke: '#e68544',\n\t\t\t\tframeHeadingFill: '#fef9f6',\n\t\t\t\tframeStroke: '#e68544',\n\t\t\t\tframeFill: '#fef9f6',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#FAA475',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#f8e2d4',\n\t\t\t\tpattern: '#f78438',\n\t\t\t\thighlightSrgb: '#ffa500',\n\t\t\t\thighlightP3: 'color(display-p3 0.9988 0.6905 0.266)',\n\t\t\t},\n\t\t\tred: {\n\t\t\t\tsolid: '#e03131',\n\t\t\t\tfill: '#e03131',\n\t\t\t\tlinedFill: '#e75f5f',\n\t\t\t\tframeHeadingStroke: '#e55757',\n\t\t\t\tframeHeadingFill: '#fef7f7',\n\t\t\t\tframeStroke: '#e55757',\n\t\t\t\tframeFill: '#fef9f9',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#FC8282',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#f4dadb',\n\t\t\t\tpattern: '#e55959',\n\t\t\t\thighlightSrgb: '#ff636e',\n\t\t\t\thighlightP3: 'color(display-p3 0.9992 0.4376 0.45)',\n\t\t\t},\n\t\t\tviolet: {\n\t\t\t\tsolid: '#ae3ec9',\n\t\t\t\tfill: '#ae3ec9',\n\t\t\t\tlinedFill: '#be68d4',\n\t\t\t\tframeHeadingStroke: '#bc62d3',\n\t\t\t\tframeHeadingFill: '#fcf7fd',\n\t\t\t\tframeStroke: '#bc62d3',\n\t\t\t\tframeFill: '#fdf9fd',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#DB91FD',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#ecdcf2',\n\t\t\t\tpattern: '#bd63d3',\n\t\t\t\thighlightSrgb: '#c77cff',\n\t\t\t\thighlightP3: 'color(display-p3 0.7469 0.5089 0.9995)',\n\t\t\t},\n\t\t\tyellow: {\n\t\t\t\tsolid: '#f1ac4b',\n\t\t\t\tfill: '#f1ac4b',\n\t\t\t\tlinedFill: '#f5c27a',\n\t\t\t\tframeHeadingStroke: '#f3bb6c',\n\t\t\t\tframeHeadingFill: '#fefcf8',\n\t\t\t\tframeStroke: '#f3bb6c',\n\t\t\t\tframeFill: '#fffdfa',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#FED49A',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\tsemi: '#f9f0e6',\n\t\t\t\tpattern: '#fecb92',\n\t\t\t\thighlightSrgb: '#fddd00',\n\t\t\t\thighlightP3: 'color(display-p3 0.972 0.8705 0.05)',\n\t\t\t},\n\t\t\twhite: {\n\t\t\t\tsolid: '#FFFFFF',\n\t\t\t\tfill: '#FFFFFF',\n\t\t\t\tlinedFill: '#ffffff',\n\t\t\t\tsemi: '#f5f5f5',\n\t\t\t\tpattern: '#f9f9f9',\n\t\t\t\tframeHeadingStroke: '#7d7d7d',\n\t\t\t\tframeHeadingFill: '#ffffff',\n\t\t\t\tframeStroke: '#7d7d7d',\n\t\t\t\tframeFill: '#ffffff',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#FFFFFF',\n\t\t\t\tnoteText: '#000000',\n\t\t\t\thighlightSrgb: '#ffffff',\n\t\t\t\thighlightP3: 'color(display-p3 1 1 1)',\n\t\t\t},\n\t\t},\n\t\tdark: {\n\t\t\ttext: 'hsl(210, 17%, 98%)',\n\t\t\tbackground: 'hsl(240, 5%, 6.5%)',\n\t\t\tnegativeSpace: 'hsl(240, 5%, 6.5%)',\n\t\t\tsolid: '#010403',\n\t\t\tcursor: 'white',\n\t\t\tnoteBorder: 'rgb(20, 20, 20)',\n\n\t\t\tblack: {\n\t\t\t\tsolid: '#f2f2f2',\n\t\t\t\tfill: '#f2f2f2',\n\t\t\t\tlinedFill: '#ffffff',\n\t\t\t\tframeHeadingStroke: '#5c5c5c',\n\t\t\t\tframeHeadingFill: '#252525',\n\t\t\t\tframeStroke: '#5c5c5c',\n\t\t\t\tframeFill: '#0c0c0c',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#2c2c2c',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#2c3036',\n\t\t\t\tpattern: '#989898',\n\t\t\t\thighlightSrgb: '#d2b700',\n\t\t\t\thighlightP3: 'color(display-p3 0.8078 0.6225 0.0312)',\n\t\t\t},\n\t\t\tblue: {\n\t\t\t\tsolid: '#4f72fc', // 3c60f0\n\t\t\t\tfill: '#4f72fc',\n\t\t\t\tlinedFill: '#3c5cdd',\n\t\t\t\tframeHeadingStroke: '#384994',\n\t\t\t\tframeHeadingFill: '#1C2036',\n\t\t\t\tframeStroke: '#384994',\n\t\t\t\tframeFill: '#11141f',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#2A3F98',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#262d40',\n\t\t\t\tpattern: '#3a4b9e',\n\t\t\t\thighlightSrgb: '#0079d2',\n\t\t\t\thighlightP3: 'color(display-p3 0.0032 0.4655 0.7991)',\n\t\t\t},\n\t\t\tgreen: {\n\t\t\t\tsolid: '#099268',\n\t\t\t\tfill: '#099268',\n\t\t\t\tlinedFill: '#087856',\n\t\t\t\tframeHeadingStroke: '#10513C',\n\t\t\t\tframeHeadingFill: '#14241f',\n\t\t\t\tframeStroke: '#10513C',\n\t\t\t\tframeFill: '#0E1614',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#014429',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#253231',\n\t\t\t\tpattern: '#366a53',\n\t\t\t\thighlightSrgb: '#009774',\n\t\t\t\thighlightP3: 'color(display-p3 0.0085 0.582 0.4604)',\n\t\t\t},\n\t\t\tgrey: {\n\t\t\t\tsolid: '#9398b0',\n\t\t\t\tfill: '#9398b0',\n\t\t\t\tlinedFill: '#8388a5',\n\t\t\t\tframeHeadingStroke: '#42474D',\n\t\t\t\tframeHeadingFill: '#23262A',\n\t\t\t\tframeStroke: '#42474D',\n\t\t\t\tframeFill: '#151719',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#56595F',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#33373c',\n\t\t\t\tpattern: '#7c8187',\n\t\t\t\thighlightSrgb: '#9cb4cb',\n\t\t\t\thighlightP3: 'color(display-p3 0.6299 0.7012 0.7856)',\n\t\t\t},\n\t\t\t'light-blue': {\n\t\t\t\tsolid: '#4dabf7',\n\t\t\t\tfill: '#4dabf7',\n\t\t\t\tlinedFill: '#2793ec',\n\t\t\t\tframeHeadingStroke: '#075797',\n\t\t\t\tframeHeadingFill: '#142839',\n\t\t\t\tframeStroke: '#075797',\n\t\t\t\tframeFill: '#0B1823',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#1F5495',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#2a3642',\n\t\t\t\tpattern: '#4d7aa9',\n\t\t\t\thighlightSrgb: '#00bdc8',\n\t\t\t\thighlightP3: 'color(display-p3 0.0023 0.7259 0.7735)',\n\t\t\t},\n\t\t\t'light-green': {\n\t\t\t\tsolid: '#40c057',\n\t\t\t\tfill: '#40c057',\n\t\t\t\tlinedFill: '#37a44b',\n\t\t\t\tframeHeadingStroke: '#1C5427',\n\t\t\t\tframeHeadingFill: '#18251A',\n\t\t\t\tframeStroke: '#1C5427',\n\t\t\t\tframeFill: '#0F1911',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#21581D',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#2a3830',\n\t\t\t\tpattern: '#4e874e',\n\t\t\t\thighlightSrgb: '#00a000',\n\t\t\t\thighlightP3: 'color(display-p3 0.2711 0.6172 0.0195)',\n\t\t\t},\n\t\t\t'light-red': {\n\t\t\t\tsolid: '#ff8787',\n\t\t\t\tfill: '#ff8787',\n\t\t\t\tlinedFill: '#ff6666',\n\t\t\t\tframeHeadingStroke: '#6f3232',\n\t\t\t\tframeHeadingFill: '#341818',\n\t\t\t\tframeStroke: '#6f3232',\n\t\t\t\tframeFill: '#181212',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#7a3333',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#3c2b2b',\n\t\t\t\tpattern: '#a56767',\n\t\t\t\thighlightSrgb: '#db005b',\n\t\t\t\thighlightP3: 'color(display-p3 0.7849 0.0585 0.3589)',\n\t\t\t},\n\t\t\t'light-violet': {\n\t\t\t\tsolid: '#e599f7',\n\t\t\t\tfill: '#e599f7',\n\t\t\t\tlinedFill: '#dc71f4',\n\t\t\t\tframeHeadingStroke: '#6c367a',\n\t\t\t\tframeHeadingFill: '#2D2230',\n\t\t\t\tframeStroke: '#6c367a',\n\t\t\t\tframeFill: '#1C151E',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#762F8E',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#383442',\n\t\t\t\tpattern: '#9770a9',\n\t\t\t\thighlightSrgb: '#c400c7',\n\t\t\t\thighlightP3: 'color(display-p3 0.7024 0.0403 0.753)',\n\t\t\t},\n\t\t\torange: {\n\t\t\t\tsolid: '#f76707',\n\t\t\t\tfill: '#f76707',\n\t\t\t\tlinedFill: '#f54900',\n\t\t\t\tframeHeadingStroke: '#773a0e',\n\t\t\t\tframeHeadingFill: '#2f1d13',\n\t\t\t\tframeStroke: '#773a0e',\n\t\t\t\tframeFill: '#1c1512',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#7c3905',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#3b2e27',\n\t\t\t\tpattern: '#9f552d',\n\t\t\t\thighlightSrgb: '#d07a00',\n\t\t\t\thighlightP3: 'color(display-p3 0.7699 0.4937 0.0085)',\n\t\t\t},\n\t\t\tred: {\n\t\t\t\tsolid: '#e03131',\n\t\t\t\tfill: '#e03131',\n\t\t\t\tlinedFill: '#c31d1d',\n\t\t\t\tframeHeadingStroke: '#701e1e',\n\t\t\t\tframeHeadingFill: '#301616',\n\t\t\t\tframeStroke: '#701e1e',\n\t\t\t\tframeFill: '#1b1313',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#7e201f',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#382726',\n\t\t\t\tpattern: '#8f3734',\n\t\t\t\thighlightSrgb: '#de002c',\n\t\t\t\thighlightP3: 'color(display-p3 0.7978 0.0509 0.2035)',\n\t\t\t},\n\t\t\tviolet: {\n\t\t\t\tsolid: '#ae3ec9',\n\t\t\t\tfill: '#ae3ec9',\n\t\t\t\tlinedFill: '#8f2fa7',\n\t\t\t\tframeHeadingStroke: '#6d1583',\n\t\t\t\tframeHeadingFill: '#27152e',\n\t\t\t\tframeStroke: '#6d1583',\n\t\t\t\tframeFill: '#1b0f21',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#5f1c70',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#342938',\n\t\t\t\tpattern: '#763a8b',\n\t\t\t\thighlightSrgb: '#9e00ee',\n\t\t\t\thighlightP3: 'color(display-p3 0.5651 0.0079 0.8986)',\n\t\t\t},\n\t\t\tyellow: {\n\t\t\t\tsolid: '#ffc034',\n\t\t\t\tfill: '#ffc034',\n\t\t\t\tlinedFill: '#ffae00',\n\t\t\t\tframeHeadingStroke: '#684e12',\n\t\t\t\tframeHeadingFill: '#2a2113',\n\t\t\t\tframeStroke: '#684e12',\n\t\t\t\tframeFill: '#1e1911',\n\t\t\t\tframeText: '#f2f2f2',\n\t\t\t\tnoteFill: '#8a5e1c',\n\t\t\t\tnoteText: '#f2f2f2',\n\t\t\t\tsemi: '#3b352b',\n\t\t\t\tpattern: '#fecb92',\n\t\t\t\thighlightSrgb: '#d2b700',\n\t\t\t\thighlightP3: 'color(display-p3 0.8078 0.7225 0.0312)',\n\t\t\t},\n\t\t\twhite: {\n\t\t\t\tsolid: '#f3f3f3',\n\t\t\t\tfill: '#f3f3f3',\n\t\t\t\tlinedFill: '#f3f3f3',\n\t\t\t\tsemi: '#f5f5f5',\n\t\t\t\tpattern: '#f9f9f9',\n\t\t\t\tframeHeadingStroke: '#ffffff',\n\t\t\t\tframeHeadingFill: '#ffffff',\n\t\t\t\tframeStroke: '#ffffff',\n\t\t\t\tframeFill: '#ffffff',\n\t\t\t\tframeText: '#000000',\n\t\t\t\tnoteFill: '#eaeaea',\n\t\t\t\tnoteText: '#1d1d1d',\n\t\t\t\thighlightSrgb: '#ffffff',\n\t\t\t\thighlightP3: 'color(display-p3 1 1 1)',\n\t\t\t},\n\t\t},\n\t},\n}\n\n/**\n * Resolves a color style value to its actual CSS color string for a given theme and variant.\n * If the color is not a default theme color, returns the color value as-is.\n *\n * @param colors - The color palette for the current color mode (e.g. `theme.colors[colorMode]`)\n * @param color - The color style value to resolve\n * @param variant - Which variant of the color to return (solid, fill, pattern, etc.)\n * @returns The CSS color string for the specified color and variant\n *\n * @example\n * ```ts\n * import { getColorValue } from 'tldraw'\n *\n * const colors = editor.getCurrentTheme().colors[editor.getColorMode()]\n *\n * // Get the solid variant of red\n * const redSolid = getColorValue(colors, 'red', 'solid') // '#e03131'\n *\n * // Get the fill variant of blue\n * const blueFill = getColorValue(colors, 'blue', 'fill') // '#4465e9'\n *\n * // Custom color passes through unchanged\n * const customColor = getColorValue(colors, '#ff0000', 'solid') // '#ff0000'\n * ```\n *\n * @public\n */\nexport function getColorValue(\n\tcolors: TLThemeColors,\n\tcolor: TLDefaultColorStyle | string,\n\tvariant: keyof TLDefaultColor\n): string {\n\tconst colorEntry = colors[color as TLDefaultColorStyle]\n\tif (!colorEntry || typeof colorEntry === 'string') {\n\t\treturn color\n\t}\n\treturn colorEntry[variant]\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -12,9 +12,9 @@ import { atom, computed } from "@tldraw/state";
12
12
  import { defaultUserPreferences } from "../../../config/TLUserPreferences.mjs";
13
13
  import { getGlobalWindow } from "../../../utils/dom.mjs";
14
14
  class UserPreferencesManager {
15
- constructor(user, inferDarkMode) {
15
+ constructor(user, colorScheme) {
16
16
  this.user = user;
17
- this.inferDarkMode = inferDarkMode;
17
+ this.colorScheme = colorScheme;
18
18
  if (typeof window === "undefined" || !getGlobalWindow().matchMedia) return;
19
19
  const darkModeMediaQuery = getGlobalWindow().matchMedia("(prefers-color-scheme: dark)");
20
20
  if (darkModeMediaQuery?.matches) {
@@ -60,7 +60,9 @@ class UserPreferencesManager {
60
60
  };
61
61
  }
62
62
  getIsDarkMode() {
63
- switch (this.user.userPreferences.get().colorScheme) {
63
+ const userColorScheme = this.user.userPreferences.get().colorScheme;
64
+ const scheme = userColorScheme ?? this.colorScheme;
65
+ switch (scheme) {
64
66
  case "dark":
65
67
  return true;
66
68
  case "light":
@@ -68,7 +70,7 @@ class UserPreferencesManager {
68
70
  case "system":
69
71
  return this.systemColorScheme.get() === "dark";
70
72
  default:
71
- return this.inferDarkMode ? this.systemColorScheme.get() === "dark" : false;
73
+ return false;
72
74
  }
73
75
  }
74
76
  getEdgeScrollSpeed() {