timvir 0.2.46 → 0.2.47

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # timvir
2
2
 
3
+ ## 0.2.47
4
+
5
+ ### Patch Changes
6
+
7
+ - **Honor prefers-color-scheme media feature** ([#3635](https://github.com/timvir/timvir/pull/3635)) - Timvir now honors the prefers-color-scheme media feature. Previously, Timvir would only appear in light mode, unless the theme detector script was injected into the page. For cases where you have a component in an Exhibit that requires a light or dark background, you can override that globally (Page blocks configuration) or locally (theme prop on Exhibit). The theme detector module remains present to not break builds, but became obsolete. It will print a warning into the console when used. We will completely remove it in a future version.
8
+
3
9
  ## 0.2.46
4
10
 
5
11
  ## 0.2.45
@@ -280,7 +280,7 @@ function Arbitrary(props$1, ref) {
280
280
  children: [/*#__PURE__*/jsxs("div", {
281
281
  className: "timvir-s-rvj5dj timvir-s-d3ue5d timvir-s-9flyx0 timvir-s-1e56ztr",
282
282
  children: [/*#__PURE__*/jsxs("div", {
283
- className: "timvir-s-78zum5 timvir-s-6s0dn4 timvir-s-qtkp2c timvir-s-u0aao5 timvir-s-1n2onr6 timvir-s-1d0dlzq timvir-s-1tcdsnd timvir-s-ieozyd timvir-s-1x824oc timvir-s-5l10my timvir-s-1op5qub timvir-s-1kx6eu5 timvir-s-hlrplc timvir-s-1dzvx6z timvir-s-lzy7x8 timvir-s-1edtgf2 timvir-s-18wp92t timvir-s-rlfy00",
283
+ className: "timvir-s-78zum5 timvir-s-6s0dn4 timvir-s-qtkp2c timvir-s-u0aao5 timvir-s-1n2onr6 timvir-s-1d0dlzq timvir-s-1tcdsnd timvir-s-hkezso timvir-s-1j6awrg timvir-s-1s928wv timvir-s-arstr8 timvir-s-2q1x1w timvir-s-5hscyn timvir-s-86avzo timvir-s-1mbvx0 timvir-s-2l4bqv timvir-s-hqgf4x timvir-s-1o0ppuw",
284
284
  children: [/*#__PURE__*/jsx("span", {
285
285
  className: "timvir-s-1rg5ohu timvir-s-vgvpxu timvir-s-15ku74s",
286
286
  children: "Seed:"
@@ -34,10 +34,6 @@
34
34
  .timvir-s-1717udv {
35
35
  padding: 0;
36
36
  }
37
-
38
- .timvir-s-1op5qub:after {
39
- inset: 0;
40
- }
41
37
  }
42
38
 
43
39
  @layer priority3 {
@@ -81,27 +77,7 @@
81
77
  outline: none;
82
78
  }
83
79
 
84
- .timvir-s-lzy7x8:after {
85
- border-color: var(--timvir-border-color);
86
- }
87
-
88
- .timvir-s-18wp92t:hover:after, .timvir-s-rlfy00:focus-within:after {
89
- border-color: var(--timvir-text-color);
90
- }
91
-
92
- .timvir-s-1edtgf2:after {
93
- border-radius: 2px;
94
- }
95
-
96
- .timvir-s-1dzvx6z:after {
97
- border-style: solid;
98
- }
99
-
100
- .timvir-s-hlrplc:after {
101
- border-width: 1px;
102
- }
103
-
104
- .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
80
+ .timvir-s-hqgf4x:hover:after, .timvir-s-1o0ppuw:focus-within:after, .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
105
81
  border-color: var(--timvir-text-color);
106
82
  }
107
83
  }
@@ -167,22 +143,6 @@
167
143
  word-break: initial;
168
144
  }
169
145
 
170
- .timvir-s-5l10my:after {
171
- content: "";
172
- }
173
-
174
- .timvir-s-ieozyd:after {
175
- display: block;
176
- }
177
-
178
- .timvir-s-1kx6eu5:after {
179
- pointer-events: none;
180
- }
181
-
182
- .timvir-s-1x824oc:after {
183
- position: absolute;
184
- }
185
-
186
146
  .timvir-s-1dc5b4e:hover, .timvir-s-1bx2y69:active {
187
147
  background-color: var(--timvir-sidebar-highlight-color);
188
148
  }
@@ -221,3 +181,45 @@
221
181
  width: 100%;
222
182
  }
223
183
  }
184
+
185
+ @layer priority6 {
186
+ .timvir-s-arstr8:after {
187
+ inset: 0;
188
+ }
189
+ }
190
+
191
+ @layer priority7 {
192
+ .timvir-s-1mbvx0:after {
193
+ border-color: var(--timvir-border-color);
194
+ }
195
+
196
+ .timvir-s-2l4bqv:after {
197
+ border-radius: 2px;
198
+ }
199
+
200
+ .timvir-s-86avzo:after {
201
+ border-style: solid;
202
+ }
203
+
204
+ .timvir-s-5hscyn:after {
205
+ border-width: 1px;
206
+ }
207
+ }
208
+
209
+ @layer priority8 {
210
+ .timvir-s-1s928wv:after {
211
+ content: "";
212
+ }
213
+
214
+ .timvir-s-hkezso:after {
215
+ display: block;
216
+ }
217
+
218
+ .timvir-s-2q1x1w:after {
219
+ pointer-events: none;
220
+ }
221
+
222
+ .timvir-s-1j6awrg:after {
223
+ position: absolute;
224
+ }
225
+ }
@@ -180,7 +180,7 @@ const Root = "div";
180
180
  function Cover(props$1, ref) {
181
181
  const {
182
182
  metadata,
183
- img,
183
+ img: img1,
184
184
  sources,
185
185
  ...rest
186
186
  } = props$1;
@@ -195,7 +195,7 @@ function Cover(props$1, ref) {
195
195
  ...p
196
196
  }, i)), /*#__PURE__*/jsx("img", {
197
197
  ...metadata,
198
- ...img,
198
+ ...img1,
199
199
  className: "timvir-s-1lliihq timvir-s-193iq5w timvir-s-5i6pxz timvir-s-l1xv1r"
200
200
  })]
201
201
  })
@@ -12,6 +12,12 @@ interface Props extends React.ComponentProps<typeof Root> {
12
12
  */
13
13
  bleed?: string | number;
14
14
  BackdropProps?: React.ComponentPropsWithoutRef<"div">;
15
+ /**
16
+ * Override the theme used for the background pattern. If not provided, the
17
+ * Exhibit component will use the default from the context. If that is also
18
+ * not provided, it will honor the prefers-color-scheme media feature.
19
+ */
20
+ theme?: "system" | "light" | "dark";
15
21
  }
16
22
  declare const _default: React.ForwardRefExoticComponent<Omit<Props, "ref"> & React.RefAttributes<HTMLDivElement>>;
17
23
  export default _default;
@@ -1,4 +1,4 @@
1
- import { Code } from "timvir/blocks";
1
+ import { Code, Grid } from "timvir/blocks";
2
2
 
3
3
  # Exhibit
4
4
 
@@ -39,3 +39,19 @@ To entirely remove any bleed and checkered background, render your element direc
39
39
  <Sample variant="bleed" props={{ bleed: 8 }} />
40
40
  <Sample variant="bleed" props={{ bleed: 16 }} />
41
41
  <Sample variant="bleed" />
42
+
43
+ ## Theme
44
+
45
+ Timvir itself respects the `prefers-color-scheme` media feature.
46
+ Its UI automatically adjusts based on that user preference.
47
+ However, sometimes the elements shown in an `<Exhibit>` need to be shown on a light or dark background.
48
+ In those cases, you can force a light or dark theme with the `theme` prop.
49
+
50
+ <Grid>
51
+ <div>
52
+ <Sample variant="theme" props={{ theme: "light" }} />
53
+ </div>
54
+ <div>
55
+ <Sample variant="theme" props={{ theme: "dark" }} />
56
+ </div>
57
+ </Grid>
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { useBlock } from 'timvir/core';
2
+ import { useContext, useBlock } from 'timvir/core';
3
3
  import * as React from 'react';
4
4
  import { jsxs, jsx } from 'react/jsx-runtime';
5
5
 
@@ -175,25 +175,25 @@ const layoutStyles = {
175
175
 
176
176
  const Root = "div";
177
177
  function Exhibit(props$1, ref) {
178
- const block = useBlock(props$1);
178
+ const {
179
+ theme: defaultTheme
180
+ } = useContext().blocks?.Exhibit ?? {};
181
+ const block = useBlock({
182
+ ...props$1,
183
+ theme: props$1.theme ?? defaultTheme
184
+ });
179
185
  const {
180
186
  caption,
181
187
  bleed,
182
188
  BackdropProps,
189
+ theme = "system",
183
190
  children,
184
191
  className,
185
192
  style,
186
193
  ...rest
187
194
  } = block.props;
188
195
  const rootStyleProps = props(layoutStyles.block, styles.root);
189
- const containerStyleProps = {
190
- 0: {
191
- className: "timvir-s-ufnvkl timvir-s-7zdco timvir-s-zqqpyx timvir-s-1htuw1x timvir-s-1sxf85j timvir-s-mkeg23 timvir-s-1y0btm7 timvir-s-1tffoc1"
192
- },
193
- 1: {
194
- className: "timvir-s-ufnvkl timvir-s-7zdco timvir-s-1sxf85j timvir-s-mkeg23 timvir-s-1tffoc1 timvir-s-ng3xce timvir-s-rxpjvj timvir-s-1717udv"
195
- }
196
- }[!!(bleed === 0) << 0];
196
+ const containerStyleProps = props(styles.container, bleed === 0 && styles.bleedZero, styles[`${theme}Theme`]);
197
197
  return /*#__PURE__*/jsxs(Root, {
198
198
  ref: ref,
199
199
  "data-timvir-b-exhibit": true,
@@ -234,6 +234,42 @@ const cssVariables = {
234
234
  const styles = {
235
235
  root: {
236
236
  $$css: true
237
+ },
238
+ container: {
239
+ k1xSpc: "timvir-s-ufnvkl",
240
+ kKwaWg: "timvir-s-7zdco",
241
+ kUOVxO: "timvir-s-zqqpyx",
242
+ kmVPX3: "timvir-s-1htuw1x",
243
+ kaIpWk: "timvir-s-1sxf85j",
244
+ kMzoRj: "timvir-s-mkeg23",
245
+ ksu8eU: "timvir-s-1y0btm7",
246
+ kVAM5u: "timvir-s-1tffoc1",
247
+ $$css: true
248
+ },
249
+ bleedZero: {
250
+ ksu8eU: "timvir-s-ng3xce",
251
+ kUOVxO: "timvir-s-rxpjvj",
252
+ kmVPX3: "timvir-s-1717udv",
253
+ $$css: true
254
+ },
255
+ systemTheme: {
256
+ kKwaWg: "timvir-s-7zdco",
257
+ $$css: true
258
+ },
259
+ lightTheme: {
260
+ kKwaWg: "timvir-s-7ns93p",
261
+ $$css: true
262
+ },
263
+ darkTheme: {
264
+ kKwaWg: "timvir-s-kt43kk",
265
+ $$css: true
266
+ },
267
+ caption: {
268
+ kGuDYH: "timvir-s-1dcheo9",
269
+ kLWn49: "timvir-s-jkpybl",
270
+ kMwMTN: "timvir-s-vgvpxu",
271
+ keoZOQ: "timvir-s-lwy1ot",
272
+ $$css: true
237
273
  }
238
274
  };
239
275
 
@@ -1 +1,4 @@
1
- export default function Sample(): import("react/jsx-runtime").JSX.Element;
1
+ import { Exhibit } from "..";
2
+ type Props = Partial<React.ComponentPropsWithoutRef<typeof Exhibit>>;
3
+ export default function Sample(props: Props): import("react/jsx-runtime").JSX.Element;
4
+ export {};
@@ -0,0 +1,4 @@
1
+ import { Exhibit } from "..";
2
+ type Props = Partial<React.ComponentPropsWithoutRef<typeof Exhibit>>;
3
+ export default function Sample(props: Props): import("react/jsx-runtime").JSX.Element;
4
+ export {};
@@ -71,6 +71,14 @@
71
71
  }
72
72
 
73
73
  @layer priority4 {
74
+ .timvir-s-kt43kk {
75
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==");
76
+ }
77
+
78
+ .timvir-s-7ns93p {
79
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==");
80
+ }
81
+
74
82
  .timvir-s-7zdco {
75
83
  background-image: var(--timvir-b-Exhibit-background);
76
84
  }
@@ -225,13 +225,13 @@ function Message(props$1, ref) {
225
225
  ...rest,
226
226
  children: [variant && {
227
227
  info: /*#__PURE__*/jsx(SvgChevronsRight, {
228
- className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-1h1xus1"
228
+ className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-kggzb5"
229
229
  }),
230
230
  warning: /*#__PURE__*/jsx(SvgAlertCircle, {
231
- className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-4u77bm"
231
+ className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-1hw0bdt"
232
232
  }),
233
233
  alert: /*#__PURE__*/jsx(SvgXOctagon, {
234
- className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-1mz1spe"
234
+ className: "timvir-s-3psx0u timvir-s-1lliihq timvir-s-1n2onr6 timvir-s-xk6nc9 timvir-s-jvto2c timvir-s-dpf0h8 timvir-s-ozkzq6 timvir-s-1co8gj4"
235
235
  })
236
236
  }[variant], /*#__PURE__*/jsx("div", {
237
237
  className: "timvir-s-1iyjqo2 timvir-s-euugli",
@@ -261,11 +261,11 @@ var Message_default = /*#__PURE__*/React.forwardRef(Message);
261
261
  const styles = {
262
262
  root: {
263
263
  kVAEAm: "timvir-s-1n2onr6",
264
- kWkggS: "timvir-s-m75j3u",
265
- kMwMTN: "timvir-s-1mqxbix",
264
+ kWkggS: "timvir-s-8wt6bl",
265
+ kMwMTN: "timvir-s-fs82qe",
266
266
  kaIpWk: "timvir-s-18zih8k",
267
267
  kmVPX3: "timvir-s-qb5aye",
268
- kGVxlE: "timvir-s-1w911z",
268
+ kGVxlE: "timvir-s-spnz74",
269
269
  k1xSpc: "timvir-s-78zum5",
270
270
  kGNEyG: "timvir-s-1cy8zhl",
271
271
  kGuDYH: "timvir-s-kpwil5",
@@ -283,30 +283,30 @@ const styles = {
283
283
  $$css: true
284
284
  },
285
285
  info: {
286
- kWkggS: "timvir-s-1a1mm2c",
287
- kMwMTN: "timvir-s-1mqxbix",
286
+ kWkggS: "timvir-s-s9vwj2",
287
+ kMwMTN: "timvir-s-oz4c4x",
288
288
  $$css: true
289
289
  },
290
290
  warning: {
291
- kWkggS: "timvir-s-1nd4xj2",
292
- kMwMTN: "timvir-s-1mqxbix",
291
+ kWkggS: "timvir-s-lu7zl4",
292
+ kMwMTN: "timvir-s-chvu57",
293
293
  $$css: true
294
294
  },
295
295
  alert: {
296
- kWkggS: "timvir-s-18vcsbs",
297
- kMwMTN: "timvir-s-1mqxbix",
296
+ kWkggS: "timvir-s-irir1e",
297
+ kMwMTN: "timvir-s-qjx7hj",
298
298
  $$css: true
299
299
  },
300
300
  iconInfo: {
301
- kMwMTN: "timvir-s-1h1xus1",
301
+ kMwMTN: "timvir-s-kggzb5",
302
302
  $$css: true
303
303
  },
304
304
  iconWarning: {
305
- kMwMTN: "timvir-s-4u77bm",
305
+ kMwMTN: "timvir-s-1hw0bdt",
306
306
  $$css: true
307
307
  },
308
308
  iconAlert: {
309
- kMwMTN: "timvir-s-1mz1spe",
309
+ kMwMTN: "timvir-s-1co8gj4",
310
310
  $$css: true
311
311
  },
312
312
  content: {
@@ -55,40 +55,52 @@
55
55
  align-items: flex-start;
56
56
  }
57
57
 
58
- .timvir-s-1a1mm2c {
59
- background-color: #f0f2fc;
58
+ .timvir-s-irir1e {
59
+ background-color: var(--timvir-message-alert-bg);
60
60
  }
61
61
 
62
- .timvir-s-18vcsbs {
63
- background-color: #fcf0f0;
62
+ .timvir-s-8wt6bl {
63
+ background-color: var(--timvir-message-bg-color);
64
64
  }
65
65
 
66
- .timvir-s-1nd4xj2 {
67
- background-color: #fcf9f0;
66
+ .timvir-s-s9vwj2 {
67
+ background-color: var(--timvir-message-info-bg);
68
68
  }
69
69
 
70
- .timvir-s-m75j3u {
71
- background-color: var(--c-p-0);
70
+ .timvir-s-lu7zl4 {
71
+ background-color: var(--timvir-message-warning-bg);
72
72
  }
73
73
 
74
- .timvir-s-1w911z {
75
- box-shadow: inset 0 0 0 1px #10161a33;
74
+ .timvir-s-spnz74 {
75
+ box-shadow: inset 0 0 0 1px var(--timvir-message-border-color);
76
76
  }
77
77
 
78
- .timvir-s-1h1xus1 {
79
- color: #2a47d5;
78
+ .timvir-s-1co8gj4 {
79
+ color: var(--timvir-message-alert-icon);
80
80
  }
81
81
 
82
- .timvir-s-4u77bm {
83
- color: #a68521;
82
+ .timvir-s-qjx7hj {
83
+ color: var(--timvir-message-alert-text);
84
84
  }
85
85
 
86
- .timvir-s-1mz1spe {
87
- color: #da4444;
86
+ .timvir-s-kggzb5 {
87
+ color: var(--timvir-message-info-icon);
88
88
  }
89
89
 
90
- .timvir-s-1mqxbix {
91
- color: #000;
90
+ .timvir-s-oz4c4x {
91
+ color: var(--timvir-message-info-text);
92
+ }
93
+
94
+ .timvir-s-fs82qe {
95
+ color: var(--timvir-message-text-color);
96
+ }
97
+
98
+ .timvir-s-1hw0bdt {
99
+ color: var(--timvir-message-warning-icon);
100
+ }
101
+
102
+ .timvir-s-chvu57 {
103
+ color: var(--timvir-message-warning-text);
92
104
  }
93
105
 
94
106
  .timvir-s-1lliihq {
package/blocks/styles.css CHANGED
@@ -34,10 +34,6 @@
34
34
  .timvir-s-1717udv {
35
35
  padding: 0;
36
36
  }
37
-
38
- .timvir-s-1op5qub:after {
39
- inset: 0;
40
- }
41
37
  }
42
38
 
43
39
  @layer priority3 {
@@ -81,27 +77,7 @@
81
77
  outline: none;
82
78
  }
83
79
 
84
- .timvir-s-lzy7x8:after {
85
- border-color: var(--timvir-border-color);
86
- }
87
-
88
- .timvir-s-18wp92t:hover:after, .timvir-s-rlfy00:focus-within:after {
89
- border-color: var(--timvir-text-color);
90
- }
91
-
92
- .timvir-s-1edtgf2:after {
93
- border-radius: 2px;
94
- }
95
-
96
- .timvir-s-1dzvx6z:after {
97
- border-style: solid;
98
- }
99
-
100
- .timvir-s-hlrplc:after {
101
- border-width: 1px;
102
- }
103
-
104
- .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
80
+ .timvir-s-hqgf4x:hover:after, .timvir-s-1o0ppuw:focus-within:after, .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
105
81
  border-color: var(--timvir-text-color);
106
82
  }
107
83
  }
@@ -167,22 +143,6 @@
167
143
  word-break: initial;
168
144
  }
169
145
 
170
- .timvir-s-5l10my:after {
171
- content: "";
172
- }
173
-
174
- .timvir-s-ieozyd:after {
175
- display: block;
176
- }
177
-
178
- .timvir-s-1kx6eu5:after {
179
- pointer-events: none;
180
- }
181
-
182
- .timvir-s-1x824oc:after {
183
- position: absolute;
184
- }
185
-
186
146
  .timvir-s-1dc5b4e:hover, .timvir-s-1bx2y69:active {
187
147
  background-color: var(--timvir-sidebar-highlight-color);
188
148
  }
@@ -221,6 +181,48 @@
221
181
  width: 100%;
222
182
  }
223
183
  }
184
+
185
+ @layer priority6 {
186
+ .timvir-s-arstr8:after {
187
+ inset: 0;
188
+ }
189
+ }
190
+
191
+ @layer priority7 {
192
+ .timvir-s-1mbvx0:after {
193
+ border-color: var(--timvir-border-color);
194
+ }
195
+
196
+ .timvir-s-2l4bqv:after {
197
+ border-radius: 2px;
198
+ }
199
+
200
+ .timvir-s-86avzo:after {
201
+ border-style: solid;
202
+ }
203
+
204
+ .timvir-s-5hscyn:after {
205
+ border-width: 1px;
206
+ }
207
+ }
208
+
209
+ @layer priority8 {
210
+ .timvir-s-1s928wv:after {
211
+ content: "";
212
+ }
213
+
214
+ .timvir-s-hkezso:after {
215
+ display: block;
216
+ }
217
+
218
+ .timvir-s-2q1x1w:after {
219
+ pointer-events: none;
220
+ }
221
+
222
+ .timvir-s-1j6awrg:after {
223
+ position: absolute;
224
+ }
225
+ }
224
226
  @layer priority1 {
225
227
  .timvir-s-i27niw {
226
228
  --timvir-b-Code-bleed: calc(var(--timvir-margin, 0px) * .6666);
@@ -920,6 +922,14 @@
920
922
  }
921
923
 
922
924
  @layer priority4 {
925
+ .timvir-s-kt43kk {
926
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==");
927
+ }
928
+
929
+ .timvir-s-7ns93p {
930
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==");
931
+ }
932
+
923
933
  .timvir-s-7zdco {
924
934
  background-image: var(--timvir-b-Exhibit-background);
925
935
  }
@@ -1372,40 +1382,52 @@
1372
1382
  align-items: flex-start;
1373
1383
  }
1374
1384
 
1375
- .timvir-s-1a1mm2c {
1376
- background-color: #f0f2fc;
1385
+ .timvir-s-irir1e {
1386
+ background-color: var(--timvir-message-alert-bg);
1377
1387
  }
1378
1388
 
1379
- .timvir-s-18vcsbs {
1380
- background-color: #fcf0f0;
1389
+ .timvir-s-8wt6bl {
1390
+ background-color: var(--timvir-message-bg-color);
1381
1391
  }
1382
1392
 
1383
- .timvir-s-1nd4xj2 {
1384
- background-color: #fcf9f0;
1393
+ .timvir-s-s9vwj2 {
1394
+ background-color: var(--timvir-message-info-bg);
1385
1395
  }
1386
1396
 
1387
- .timvir-s-m75j3u {
1388
- background-color: var(--c-p-0);
1397
+ .timvir-s-lu7zl4 {
1398
+ background-color: var(--timvir-message-warning-bg);
1389
1399
  }
1390
1400
 
1391
- .timvir-s-1w911z {
1392
- box-shadow: inset 0 0 0 1px #10161a33;
1401
+ .timvir-s-spnz74 {
1402
+ box-shadow: inset 0 0 0 1px var(--timvir-message-border-color);
1403
+ }
1404
+
1405
+ .timvir-s-1co8gj4 {
1406
+ color: var(--timvir-message-alert-icon);
1407
+ }
1408
+
1409
+ .timvir-s-qjx7hj {
1410
+ color: var(--timvir-message-alert-text);
1411
+ }
1412
+
1413
+ .timvir-s-kggzb5 {
1414
+ color: var(--timvir-message-info-icon);
1393
1415
  }
1394
1416
 
1395
- .timvir-s-1h1xus1 {
1396
- color: #2a47d5;
1417
+ .timvir-s-oz4c4x {
1418
+ color: var(--timvir-message-info-text);
1397
1419
  }
1398
1420
 
1399
- .timvir-s-4u77bm {
1400
- color: #a68521;
1421
+ .timvir-s-fs82qe {
1422
+ color: var(--timvir-message-text-color);
1401
1423
  }
1402
1424
 
1403
- .timvir-s-1mz1spe {
1404
- color: #da4444;
1425
+ .timvir-s-1hw0bdt {
1426
+ color: var(--timvir-message-warning-icon);
1405
1427
  }
1406
1428
 
1407
- .timvir-s-1mqxbix {
1408
- color: #000;
1429
+ .timvir-s-chvu57 {
1430
+ color: var(--timvir-message-warning-text);
1409
1431
  }
1410
1432
 
1411
1433
  .timvir-s-1lliihq {
package/builtins/index.js CHANGED
@@ -205,23 +205,23 @@ function Heading(Component) {
205
205
  });
206
206
  };
207
207
  }
208
- const h1 = props$1 => /*#__PURE__*/jsx("h1", {
208
+ const h11 = props$1 => /*#__PURE__*/jsx("h1", {
209
209
  ...props(layoutStyles.block, styles.h1),
210
210
  ...props$1
211
211
  });
212
- const h2 = Heading(props$1 => /*#__PURE__*/jsx("h2", {
212
+ const h21 = Heading(props$1 => /*#__PURE__*/jsx("h2", {
213
213
  ...props(layoutStyles.block, styles.h2),
214
214
  ...props$1
215
215
  }));
216
- const h3 = Heading(props$1 => /*#__PURE__*/jsx("h3", {
216
+ const h31 = Heading(props$1 => /*#__PURE__*/jsx("h3", {
217
217
  ...props(layoutStyles.block, styles.h3),
218
218
  ...props$1
219
219
  }));
220
- const h4 = Heading(props$1 => /*#__PURE__*/jsx("h4", {
220
+ const h41 = Heading(props$1 => /*#__PURE__*/jsx("h4", {
221
221
  ...props(layoutStyles.block, styles.h4),
222
222
  ...props$1
223
223
  }));
224
- const blockquote = props$1 => {
224
+ const blockquote1 = props$1 => {
225
225
  const {
226
226
  children,
227
227
  ...rest
@@ -243,25 +243,25 @@ const blockquote = props$1 => {
243
243
  })
244
244
  });
245
245
  };
246
- const hr = props$1 => /*#__PURE__*/jsx("hr", {
246
+ const hr1 = props$1 => /*#__PURE__*/jsx("hr", {
247
247
  ...props(layoutStyles.block, styles.hr),
248
248
  ...props$1
249
249
  });
250
- const table = props$1 => /*#__PURE__*/jsx("table", {
250
+ const table1 = props$1 => /*#__PURE__*/jsx("table", {
251
251
  ...props(layoutStyles.block, styles.table),
252
252
  ...props$1
253
253
  });
254
- const thead = props => /*#__PURE__*/jsx("thead", {
254
+ const thead1 = props => /*#__PURE__*/jsx("thead", {
255
255
  ...props
256
256
  });
257
- const tbody = props => /*#__PURE__*/jsx("tbody", {
257
+ const tbody1 = props => /*#__PURE__*/jsx("tbody", {
258
258
  ...props
259
259
  });
260
- const tr = props => /*#__PURE__*/jsx("tr", {
260
+ const tr1 = props => /*#__PURE__*/jsx("tr", {
261
261
  className: "timvir-s-83z2og timvir-s-178xt8z timvir-s-13fuv20 timvir-s-1r4gg6b timvir-s-7kswos",
262
262
  ...props
263
263
  });
264
- const th = props => {
264
+ const th1 = props => {
265
265
  const {
266
266
  align,
267
267
  ...rest
@@ -275,7 +275,7 @@ const th = props => {
275
275
  ...rest
276
276
  });
277
277
  };
278
- const td = props => {
278
+ const td1 = props => {
279
279
  const {
280
280
  align,
281
281
  ...rest
@@ -289,23 +289,23 @@ const td = props => {
289
289
  ...rest
290
290
  });
291
291
  };
292
- const code = props => /*#__PURE__*/jsx("code", {
292
+ const code1 = props => /*#__PURE__*/jsx("code", {
293
293
  className: "timvir-s-1sxf85j timvir-s-1jnxms5 timvir-s-sfzzmd timvir-s-bspb1j timvir-s-mkeg23 timvir-s-1y0btm7 timvir-s-j7gikm timvir-s-1vhptj2",
294
294
  ...props
295
295
  });
296
- const a = props => /*#__PURE__*/jsx("a", {
296
+ const a1 = props => /*#__PURE__*/jsx("a", {
297
297
  className: "timvir-s-15rks2t timvir-s-1hl2dhg timvir-s-1dlxito timvir-s-1j43nte timvir-s-odwsf6 timvir-s-1w3jsh0 timvir-s-g7t5vw timvir-s-1v02d47 timvir-s-ene6ev timvir-s-15m0p1m timvir-s-1bezv82",
298
298
  ...props
299
299
  });
300
- const p = props$1 => /*#__PURE__*/jsx("p", {
300
+ const p1 = props$1 => /*#__PURE__*/jsx("p", {
301
301
  ...props(layoutStyles.block),
302
302
  ...props$1
303
303
  });
304
- const ul = props$1 => /*#__PURE__*/jsx("ul", {
304
+ const ul1 = props$1 => /*#__PURE__*/jsx("ul", {
305
305
  ...props(layoutStyles.block),
306
306
  ...props$1
307
307
  });
308
- const ol = props$1 => /*#__PURE__*/jsx("ol", {
308
+ const ol1 = props$1 => /*#__PURE__*/jsx("ol", {
309
309
  ...props(layoutStyles.block),
310
310
  ...props$1
311
311
  });
@@ -366,4 +366,4 @@ const styles = {
366
366
  }
367
367
  };
368
368
 
369
- export { a, blockquote, code, h1, h2, h3, h4, hr, ol, p, table, tbody, td, th, thead, tr, ul };
369
+ export { a1 as a, blockquote1 as blockquote, code1 as code, h11 as h1, h21 as h2, h31 as h3, h41 as h4, hr1 as hr, ol1 as ol, p1 as p, table1 as table, tbody1 as tbody, td1 as td, th1 as th, thead1 as thead, tr1 as tr, ul1 as ul };
@@ -14,6 +14,14 @@ export interface Value {
14
14
  href: string;
15
15
  }>;
16
16
  blocks?: {
17
+ Exhibit?: {
18
+ /**
19
+ * If provided, Exhibit blocks will use this theme by default (unless overridden locally).
20
+ *
21
+ * If not set, default is to honor the prefers-color-scheme media feature.
22
+ */
23
+ theme?: "system" | "light" | "dark";
24
+ };
17
25
  WebLink?: {
18
26
  unfurl: (url: string) => Promise<any>;
19
27
  };
@@ -1 +1 @@
1
- const t=Object.fromEntries(["light","dark"].map(t=>[t,(()=>{const n=window.matchMedia(`(prefers-color-scheme: ${t})`);return n.addEventListener("change",e),n})()]));function e(){const e=function(){try{const t=localStorage.getItem("timvir-theme");if(t)return t}catch{}for(const[e,n]of Object.entries(t))if(n.matches)return e}();e&&function(t){document.documentElement.setAttribute("data-timvir-theme",t)}(e)}e();
1
+ console.warn("Timvir theme detector is obsolete and will be removed in future versions.");
package/global.css CHANGED
@@ -23,22 +23,52 @@
23
23
 
24
24
  --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);
25
25
  --timvir-highlight-background-color: #ffe10044;
26
- }
27
-
28
- :root[data-timvir-theme="dark"] {
29
- --timvir-background-color: #1f2023;
30
- --timvir-text-color: rgba(255 255 255 / 0.86);
31
- --timvir-secondary-text-color: rgba(255 255 255 / 0.56);
32
- --timvir-secondary-background-color: #161618;
33
-
34
- --timvir-border-color: #27292f;
35
26
 
36
- --timvir-sidebar-highlight-color: rgb(41, 43, 47);
37
-
38
- --timvir-accent-color: #38a585;
27
+ /* Message component colors - light mode */
28
+ --timvir-message-text-color: #000000;
29
+ --timvir-message-bg-color: #f0fcf6;
30
+ --timvir-message-border-color: rgba(16, 22, 26, 0.2);
31
+ --timvir-message-info-bg: #f0f2fc;
32
+ --timvir-message-info-text: #000000;
33
+ --timvir-message-info-icon: #2a47d5;
34
+ --timvir-message-warning-bg: #fcf9f0;
35
+ --timvir-message-warning-text: #000000;
36
+ --timvir-message-warning-icon: #a68521;
37
+ --timvir-message-alert-bg: #fcf0f0;
38
+ --timvir-message-alert-text: #000000;
39
+ --timvir-message-alert-icon: #da4444;
40
+ }
39
41
 
40
- --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);
41
- --timvir-highlight-background-color: rgba(174, 124, 20, 0.15);
42
+ @media (prefers-color-scheme: dark) {
43
+ :root {
44
+ --timvir-background-color: #1f2023;
45
+ --timvir-text-color: rgba(255 255 255 / 0.86);
46
+ --timvir-secondary-text-color: rgba(255 255 255 / 0.56);
47
+ --timvir-secondary-background-color: #161618;
48
+
49
+ --timvir-border-color: #27292f;
50
+
51
+ --timvir-sidebar-highlight-color: rgb(41, 43, 47);
52
+
53
+ --timvir-accent-color: #38a585;
54
+
55
+ --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);
56
+ --timvir-highlight-background-color: rgba(174, 124, 20, 0.15);
57
+
58
+ /* Message component colors - dark mode */
59
+ --timvir-message-text-color: rgba(255, 255, 255, 0.86);
60
+ --timvir-message-bg-color: #2a2d31;
61
+ --timvir-message-border-color: rgba(255, 255, 255, 0.15);
62
+ --timvir-message-info-bg: #1e2233;
63
+ --timvir-message-info-text: rgba(255, 255, 255, 0.86);
64
+ --timvir-message-info-icon: #5b7fff;
65
+ --timvir-message-warning-bg: #33301e;
66
+ --timvir-message-warning-text: rgba(255, 255, 255, 0.86);
67
+ --timvir-message-warning-icon: #d4b55c;
68
+ --timvir-message-alert-bg: #331e1e;
69
+ --timvir-message-alert-text: rgba(255, 255, 255, 0.86);
70
+ --timvir-message-alert-icon: #ff6b6b;
71
+ }
42
72
  }
43
73
 
44
74
  /*
@@ -52,11 +82,13 @@
52
82
  text-decoration: var(--timvir-b-Code-shiki-light-text-decoration);
53
83
  }
54
84
 
55
- :root[data-timvir-theme="dark"] [data-timvir-b-Code] .shiki span {
56
- color: var(--timvir-b-Code-shiki-dark);
57
- font-style: var(--timvir-b-Code-shiki-dark-font-style);
58
- font-weight: var(--timvir-b-Code-shiki-dark-font-weight);
59
- text-decoration: var(--timvir-b-Code-shiki-dark-text-decoration);
85
+ @media (prefers-color-scheme: dark) {
86
+ [data-timvir-b-Code] .shiki span {
87
+ color: var(--timvir-b-Code-shiki-dark);
88
+ font-style: var(--timvir-b-Code-shiki-dark-font-style);
89
+ font-weight: var(--timvir-b-Code-shiki-dark-font-weight);
90
+ text-decoration: var(--timvir-b-Code-shiki-dark-text-decoration);
91
+ }
60
92
  }
61
93
 
62
94
  body {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "timvir",
4
- "version": "0.2.46",
4
+ "version": "0.2.47",
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
7
7
  "exports": {
package/styles.css CHANGED
@@ -23,22 +23,52 @@
23
23
 
24
24
  --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);
25
25
  --timvir-highlight-background-color: #ffe10044;
26
- }
27
-
28
- :root[data-timvir-theme="dark"] {
29
- --timvir-background-color: #1f2023;
30
- --timvir-text-color: rgba(255 255 255 / 0.86);
31
- --timvir-secondary-text-color: rgba(255 255 255 / 0.56);
32
- --timvir-secondary-background-color: #161618;
33
-
34
- --timvir-border-color: #27292f;
35
-
36
- --timvir-sidebar-highlight-color: rgb(41, 43, 47);
37
-
38
- --timvir-accent-color: #38a585;
39
26
 
40
- --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);
41
- --timvir-highlight-background-color: rgba(174, 124, 20, 0.15);
27
+ /* Message component colors - light mode */
28
+ --timvir-message-text-color: #000000;
29
+ --timvir-message-bg-color: #f0fcf6;
30
+ --timvir-message-border-color: rgba(16, 22, 26, 0.2);
31
+ --timvir-message-info-bg: #f0f2fc;
32
+ --timvir-message-info-text: #000000;
33
+ --timvir-message-info-icon: #2a47d5;
34
+ --timvir-message-warning-bg: #fcf9f0;
35
+ --timvir-message-warning-text: #000000;
36
+ --timvir-message-warning-icon: #a68521;
37
+ --timvir-message-alert-bg: #fcf0f0;
38
+ --timvir-message-alert-text: #000000;
39
+ --timvir-message-alert-icon: #da4444;
40
+ }
41
+
42
+ @media (prefers-color-scheme: dark) {
43
+ :root {
44
+ --timvir-background-color: #1f2023;
45
+ --timvir-text-color: rgba(255 255 255 / 0.86);
46
+ --timvir-secondary-text-color: rgba(255 255 255 / 0.56);
47
+ --timvir-secondary-background-color: #161618;
48
+
49
+ --timvir-border-color: #27292f;
50
+
51
+ --timvir-sidebar-highlight-color: rgb(41, 43, 47);
52
+
53
+ --timvir-accent-color: #38a585;
54
+
55
+ --timvir-background-pattern: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);
56
+ --timvir-highlight-background-color: rgba(174, 124, 20, 0.15);
57
+
58
+ /* Message component colors - dark mode */
59
+ --timvir-message-text-color: rgba(255, 255, 255, 0.86);
60
+ --timvir-message-bg-color: #2a2d31;
61
+ --timvir-message-border-color: rgba(255, 255, 255, 0.15);
62
+ --timvir-message-info-bg: #1e2233;
63
+ --timvir-message-info-text: rgba(255, 255, 255, 0.86);
64
+ --timvir-message-info-icon: #5b7fff;
65
+ --timvir-message-warning-bg: #33301e;
66
+ --timvir-message-warning-text: rgba(255, 255, 255, 0.86);
67
+ --timvir-message-warning-icon: #d4b55c;
68
+ --timvir-message-alert-bg: #331e1e;
69
+ --timvir-message-alert-text: rgba(255, 255, 255, 0.86);
70
+ --timvir-message-alert-icon: #ff6b6b;
71
+ }
42
72
  }
43
73
 
44
74
  /*
@@ -52,11 +82,13 @@
52
82
  text-decoration: var(--timvir-b-Code-shiki-light-text-decoration);
53
83
  }
54
84
 
55
- :root[data-timvir-theme="dark"] [data-timvir-b-Code] .shiki span {
56
- color: var(--timvir-b-Code-shiki-dark);
57
- font-style: var(--timvir-b-Code-shiki-dark-font-style);
58
- font-weight: var(--timvir-b-Code-shiki-dark-font-weight);
59
- text-decoration: var(--timvir-b-Code-shiki-dark-text-decoration);
85
+ @media (prefers-color-scheme: dark) {
86
+ [data-timvir-b-Code] .shiki span {
87
+ color: var(--timvir-b-Code-shiki-dark);
88
+ font-style: var(--timvir-b-Code-shiki-dark-font-style);
89
+ font-weight: var(--timvir-b-Code-shiki-dark-font-weight);
90
+ text-decoration: var(--timvir-b-Code-shiki-dark-text-decoration);
91
+ }
60
92
  }
61
93
 
62
94
  body {
@@ -1303,10 +1335,6 @@ body {
1303
1335
  .timvir-s-1717udv {
1304
1336
  padding: 0;
1305
1337
  }
1306
-
1307
- .timvir-s-1op5qub:after {
1308
- inset: 0;
1309
- }
1310
1338
  }
1311
1339
 
1312
1340
  @layer priority3 {
@@ -1350,27 +1378,7 @@ body {
1350
1378
  outline: none;
1351
1379
  }
1352
1380
 
1353
- .timvir-s-lzy7x8:after {
1354
- border-color: var(--timvir-border-color);
1355
- }
1356
-
1357
- .timvir-s-18wp92t:hover:after, .timvir-s-rlfy00:focus-within:after {
1358
- border-color: var(--timvir-text-color);
1359
- }
1360
-
1361
- .timvir-s-1edtgf2:after {
1362
- border-radius: 2px;
1363
- }
1364
-
1365
- .timvir-s-1dzvx6z:after {
1366
- border-style: solid;
1367
- }
1368
-
1369
- .timvir-s-hlrplc:after {
1370
- border-width: 1px;
1371
- }
1372
-
1373
- .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
1381
+ .timvir-s-hqgf4x:hover:after, .timvir-s-1o0ppuw:focus-within:after, .timvir-s-49kzi4:hover, .timvir-s-13m658e:active {
1374
1382
  border-color: var(--timvir-text-color);
1375
1383
  }
1376
1384
  }
@@ -1436,22 +1444,6 @@ body {
1436
1444
  word-break: initial;
1437
1445
  }
1438
1446
 
1439
- .timvir-s-5l10my:after {
1440
- content: "";
1441
- }
1442
-
1443
- .timvir-s-ieozyd:after {
1444
- display: block;
1445
- }
1446
-
1447
- .timvir-s-1kx6eu5:after {
1448
- pointer-events: none;
1449
- }
1450
-
1451
- .timvir-s-1x824oc:after {
1452
- position: absolute;
1453
- }
1454
-
1455
1447
  .timvir-s-1dc5b4e:hover, .timvir-s-1bx2y69:active {
1456
1448
  background-color: var(--timvir-sidebar-highlight-color);
1457
1449
  }
@@ -1490,6 +1482,48 @@ body {
1490
1482
  width: 100%;
1491
1483
  }
1492
1484
  }
1485
+
1486
+ @layer priority6 {
1487
+ .timvir-s-arstr8:after {
1488
+ inset: 0;
1489
+ }
1490
+ }
1491
+
1492
+ @layer priority7 {
1493
+ .timvir-s-1mbvx0:after {
1494
+ border-color: var(--timvir-border-color);
1495
+ }
1496
+
1497
+ .timvir-s-2l4bqv:after {
1498
+ border-radius: 2px;
1499
+ }
1500
+
1501
+ .timvir-s-86avzo:after {
1502
+ border-style: solid;
1503
+ }
1504
+
1505
+ .timvir-s-5hscyn:after {
1506
+ border-width: 1px;
1507
+ }
1508
+ }
1509
+
1510
+ @layer priority8 {
1511
+ .timvir-s-1s928wv:after {
1512
+ content: "";
1513
+ }
1514
+
1515
+ .timvir-s-hkezso:after {
1516
+ display: block;
1517
+ }
1518
+
1519
+ .timvir-s-2q1x1w:after {
1520
+ pointer-events: none;
1521
+ }
1522
+
1523
+ .timvir-s-1j6awrg:after {
1524
+ position: absolute;
1525
+ }
1526
+ }
1493
1527
  @layer priority1 {
1494
1528
  .timvir-s-i27niw {
1495
1529
  --timvir-b-Code-bleed: calc(var(--timvir-margin, 0px) * .6666);
@@ -2189,6 +2223,14 @@ body {
2189
2223
  }
2190
2224
 
2191
2225
  @layer priority4 {
2226
+ .timvir-s-kt43kk {
2227
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==");
2228
+ }
2229
+
2230
+ .timvir-s-7ns93p {
2231
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==");
2232
+ }
2233
+
2192
2234
  .timvir-s-7zdco {
2193
2235
  background-image: var(--timvir-b-Exhibit-background);
2194
2236
  }
@@ -2641,40 +2683,52 @@ body {
2641
2683
  align-items: flex-start;
2642
2684
  }
2643
2685
 
2644
- .timvir-s-1a1mm2c {
2645
- background-color: #f0f2fc;
2686
+ .timvir-s-irir1e {
2687
+ background-color: var(--timvir-message-alert-bg);
2646
2688
  }
2647
2689
 
2648
- .timvir-s-18vcsbs {
2649
- background-color: #fcf0f0;
2690
+ .timvir-s-8wt6bl {
2691
+ background-color: var(--timvir-message-bg-color);
2650
2692
  }
2651
2693
 
2652
- .timvir-s-1nd4xj2 {
2653
- background-color: #fcf9f0;
2694
+ .timvir-s-s9vwj2 {
2695
+ background-color: var(--timvir-message-info-bg);
2654
2696
  }
2655
2697
 
2656
- .timvir-s-m75j3u {
2657
- background-color: var(--c-p-0);
2698
+ .timvir-s-lu7zl4 {
2699
+ background-color: var(--timvir-message-warning-bg);
2658
2700
  }
2659
2701
 
2660
- .timvir-s-1w911z {
2661
- box-shadow: inset 0 0 0 1px #10161a33;
2702
+ .timvir-s-spnz74 {
2703
+ box-shadow: inset 0 0 0 1px var(--timvir-message-border-color);
2704
+ }
2705
+
2706
+ .timvir-s-1co8gj4 {
2707
+ color: var(--timvir-message-alert-icon);
2708
+ }
2709
+
2710
+ .timvir-s-qjx7hj {
2711
+ color: var(--timvir-message-alert-text);
2712
+ }
2713
+
2714
+ .timvir-s-kggzb5 {
2715
+ color: var(--timvir-message-info-icon);
2662
2716
  }
2663
2717
 
2664
- .timvir-s-1h1xus1 {
2665
- color: #2a47d5;
2718
+ .timvir-s-oz4c4x {
2719
+ color: var(--timvir-message-info-text);
2666
2720
  }
2667
2721
 
2668
- .timvir-s-4u77bm {
2669
- color: #a68521;
2722
+ .timvir-s-fs82qe {
2723
+ color: var(--timvir-message-text-color);
2670
2724
  }
2671
2725
 
2672
- .timvir-s-1mz1spe {
2673
- color: #da4444;
2726
+ .timvir-s-1hw0bdt {
2727
+ color: var(--timvir-message-warning-icon);
2674
2728
  }
2675
2729
 
2676
- .timvir-s-1mqxbix {
2677
- color: #000;
2730
+ .timvir-s-chvu57 {
2731
+ color: var(--timvir-message-warning-text);
2678
2732
  }
2679
2733
 
2680
2734
  .timvir-s-1lliihq {