timvir 0.2.2 → 0.2.3

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.
@@ -43,11 +43,9 @@ const cx = function cx() {
43
43
  result.push(atomicClasses[keyHash]);
44
44
  }
45
45
  }
46
-
47
46
  result.push(...nonAtomicClasses);
48
47
  return result.join(' ');
49
48
  };
50
-
51
49
  var cx$1 = cx;
52
50
 
53
51
  function Caption(props) {
@@ -70,7 +68,6 @@ function Caption(props) {
70
68
  onClick: () => {
71
69
  if (codeRef) {
72
70
  const infoParent = codeRef.parentElement;
73
-
74
71
  if (infoParent.style.height === "0px") {
75
72
  infoParent.style.height = `${codeRef.getBoundingClientRect().height}px`;
76
73
  infoParent.style.opacity = "1";
@@ -95,7 +92,6 @@ function Caption(props) {
95
92
  language: "jsx"
96
93
  }, code))));
97
94
  }
98
-
99
95
  var Caption$1 = /*#__PURE__*/React.memo(Caption);
100
96
 
101
97
  function Handle(props) {
@@ -109,7 +105,6 @@ function Handle(props) {
109
105
  className: "d1mmz2b6",
110
106
  onMouseDown: () => {
111
107
  lock.current = edge;
112
-
113
108
  if (iframeRef.current) {
114
109
  iframeRef.current.style.userSelect = "none";
115
110
  iframeRef.current.style.pointerEvents = "none";
@@ -127,11 +122,9 @@ function Handle(props) {
127
122
  d: "M27 18h2v20h-2V18zm-6 0h2v20h-2V18zm12 0h2v20h-2V18z"
128
123
  })));
129
124
  }
130
-
131
125
  var Handle$1 = /*#__PURE__*/React.memo(Handle);
132
126
 
133
127
  const height = 16;
134
-
135
128
  function Ruler(props) {
136
129
  const {
137
130
  containerWidth = 0,
@@ -166,12 +159,9 @@ function Ruler(props) {
166
159
  /**
167
160
  * The underlying DOM element which is rendered by this component.
168
161
  */
169
-
170
162
  const Root = "div";
171
-
172
163
  function Viewport(props, ref) {
173
164
  var _iframeRef$current, _iframeRef$current$co;
174
-
175
165
  const block = useBlock(props);
176
166
  const {
177
167
  src,
@@ -179,16 +169,16 @@ function Viewport(props, ref) {
179
169
  className,
180
170
  ...rest
181
171
  } = block.props;
172
+
182
173
  /*
183
174
  * The container measures the width of the main column. It is used to initialize
184
175
  * the default width.
185
176
  */
186
-
187
177
  const [containerRef, containerROE] = useResizeObserverEntry();
178
+
188
179
  /*
189
180
  * The SVG spans across the full width. It is used to restrict the max width.
190
181
  */
191
-
192
182
  const [svgRef, svgROE] = useResizeObserverEntry();
193
183
  const [height, setHeight] = React.useState(undefined);
194
184
  const [maxHeight, setMaxHeight] = React.useState(undefined);
@@ -198,7 +188,6 @@ function Viewport(props, ref) {
198
188
  setWidth(svgROE.contentRect.width);
199
189
  } else if (svgROE) {
200
190
  const max = svgROE.contentRect.width - 2 * (56 + 8 + 8);
201
-
202
191
  if (width !== undefined && width > max) {
203
192
  setWidth(max);
204
193
  }
@@ -213,7 +202,6 @@ function Viewport(props, ref) {
213
202
  const max = svgROE.contentRect.width - 2 * (56 + 8 + 8);
214
203
  setWidth(width => {
215
204
  var _left$right$lock$curr;
216
-
217
205
  return Math.min(max, Math.max(320, (width !== null && width !== void 0 ? width : 0) + 2 * ev.movementX * ((_left$right$lock$curr = {
218
206
  left: -1,
219
207
  right: 1
@@ -221,7 +209,6 @@ function Viewport(props, ref) {
221
209
  });
222
210
  }
223
211
  };
224
-
225
212
  const onMouseUp = () => {
226
213
  lock.current = "";
227
214
  iframeRef.current.style.userSelect = "";
@@ -231,7 +218,6 @@ function Viewport(props, ref) {
231
218
  return height;
232
219
  });
233
220
  };
234
-
235
221
  window.addEventListener("mousemove", onMouseMove);
236
222
  window.addEventListener("mouseup", onMouseUp);
237
223
  return () => {
@@ -246,6 +232,7 @@ function Viewport(props, ref) {
246
232
  setMaxHeight(Math.max(height, maxHeight !== null && maxHeight !== void 0 ? maxHeight : 0));
247
233
  }
248
234
  });
235
+
249
236
  /*
250
237
  * The <html> element of the iframe document is the one which we observe and
251
238
  * measure. We do not use <body> because that may have margins around which would
@@ -254,7 +241,6 @@ function Viewport(props, ref) {
254
241
  * We hope that nobody intentionally adds margins around the <html> element. By default
255
242
  * it doesn't have.
256
243
  */
257
-
258
244
  const html = (_iframeRef$current = iframeRef.current) === null || _iframeRef$current === void 0 ? void 0 : (_iframeRef$current$co = _iframeRef$current.contentDocument) === null || _iframeRef$current$co === void 0 ? void 0 : _iframeRef$current$co.querySelector("html");
259
245
  React.useEffect(() => {
260
246
  if (html) {
@@ -291,14 +277,12 @@ function Viewport(props, ref) {
291
277
  src: src,
292
278
  onLoad: () => {
293
279
  var _iframeRef$current2, _iframeRef$current2$c;
294
-
295
280
  /*
296
281
  * Once the iframe has loaded, initialize the height/maxHeight.
297
282
  * The <html> element may not exist though (eg. the page failed
298
283
  * to load, or it's not a HTML page).
299
284
  */
300
285
  const html = (_iframeRef$current2 = iframeRef.current) === null || _iframeRef$current2 === void 0 ? void 0 : (_iframeRef$current2$c = _iframeRef$current2.contentDocument) === null || _iframeRef$current2$c === void 0 ? void 0 : _iframeRef$current2$c.querySelector("html");
301
-
302
286
  if (html) {
303
287
  const {
304
288
  height
@@ -335,7 +319,6 @@ function Viewport(props, ref) {
335
319
  }
336
320
  }));
337
321
  }
338
-
339
322
  var Viewport$1 = /*#__PURE__*/React.forwardRef(Viewport);
340
323
 
341
324
  export { Viewport$1 as Viewport };
@@ -1,3 +1,12 @@
1
+ .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
2
+ .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
3
+ .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
4
+ .d1watfn6{margin-top:12px;}
5
+
6
+ .d1mmz2b6{grid-row:1 / span 3;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;transition:all 0.2s cubic-bezier(0.4,1,0.75,0.9);}.d1mmz2b6:hover{opacity:1;box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 2px 4px rgba(16,22,26,0.2),0 8px 24px rgba(16,22,26,0.2);}.d1mmz2b6:active{box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 0 0 rgba(16,22,26,0),0 1px 1px rgba(16,22,26,0.2);}
7
+
8
+ .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
9
+
1
10
  .r1ouu0bc{contain:layout;}
2
11
  .d1uj09ka{position:relative;}
3
12
  .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
@@ -6,9 +15,4 @@
6
15
  .daubpa6{grid-column:2 / span 1;grid-row:2 / span 1;position:relative;flex:1;height:100px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);transition:height 0.16s;overflow:hidden;}
7
16
  .d1d22s19{animation-duration:2s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:shimmer-d1d22s19;animation-timing-function:linear;background-size:150vw 100px;background-image:linear-gradient(to right,#fafafa 0%,#f4f4f4 25%,#fafafa 40%);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);border-radius:1px;}@keyframes shimmer-d1d22s19{0%{background-position:-60vw 0;}40%{background-position:85vw 0;}100%{background-position:85vw 0;}}
8
17
  .i11uos8q{display:block;position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity 0.2s;}
9
- .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
10
- .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
11
- .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
12
- .d1watfn6{margin-top:12px;}
13
- .d1mmz2b6{grid-row:1 / span 3;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;transition:all 0.2s cubic-bezier(0.4,1,0.75,0.9);}.d1mmz2b6:hover{opacity:1;box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 2px 4px rgba(16,22,26,0.2),0 8px 24px rgba(16,22,26,0.2);}.d1mmz2b6:active{box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 0 0 rgba(16,22,26,0),0 1px 1px rgba(16,22,26,0.2);}
14
- .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
18
+
@@ -39,22 +39,17 @@ const cx = function cx() {
39
39
  result.push(atomicClasses[keyHash]);
40
40
  }
41
41
  }
42
-
43
42
  result.push(...nonAtomicClasses);
44
43
  return result.join(' ');
45
44
  };
46
-
47
45
  var cx$1 = cx;
48
46
 
49
47
  /**
50
48
  * The underlying DOM element which is rendered by this component.
51
49
  */
52
-
53
50
  const Root = "a";
54
-
55
51
  function WebLink(props, ref) {
56
52
  var _useContext$blocks$We, _useContext$blocks, _metadata$open_graph, _metadata$open_graph$, _metadata$open_graph$2, _ref, _metadata$open_graph$3, _metadata$open_graph2, _metadata$open_graph$4, _metadata$open_graph3;
57
-
58
53
  const {
59
54
  url,
60
55
  className,
@@ -96,7 +91,6 @@ function WebLink(props, ref) {
96
91
  src: image
97
92
  })));
98
93
  }
99
-
100
94
  var WebLink$1 = /*#__PURE__*/React.forwardRef(WebLink);
101
95
  const classes = {
102
96
  root: "r1szx90n",
@@ -108,7 +102,6 @@ const classes = {
108
102
  imageContainer: "igksd61",
109
103
  image: "i1gibb8w"
110
104
  };
111
-
112
105
  async function defaultUnfurl(url) {
113
106
  return fetch(`https://timvir.vercel.app/api/unfurl?url=${encodeURIComponent(url)}`).then(res => res.json());
114
107
  }
@@ -6,3 +6,4 @@
6
6
  .f1cqi3na{width:1rem;height:1rem;min-width:1rem;margin-right:6px;}
7
7
  .igksd61{flex:1 1 180px;position:relative;min-width:180px;}
8
8
  .i1gibb8w{display:block;object-fit:cover;border-radius:0 3px 3px 0;width:calc(100% - 2px);height:calc(100% - 2px);position:absolute;top:1px;left:1px;}
9
+
package/blocks/styles.css CHANGED
@@ -4,6 +4,9 @@
4
4
  .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
5
  .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;height:34px;width:100%;color:inherit;}
6
6
  .b128wsn{border:none;outline:none;height:36px;background:var(--timvir-accent-color);font:inherit;border-radius:2px;cursor:pointer;transition:background 0.2s;}.b128wsn:hover{background:var(--c-p-3);}.b128wsn:active{background:var(--c-p-4);}
7
+
8
+ .tac6gx6{color:#393a34;background-color:#f6f8fa;}.tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}.tac6gx6 :is(.namespace){opacity:0.7;}.tac6gx6 :is(.string,.attr-value){color:#e3116c;}.tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}.tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}.tac6gx6 :is(.tag,.selector,.keyword){color:#00009f;}.tac6gx6 :is(.function-variable){color:#6f42c1;}.tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#00a4db;}.tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#36acaa;}:root[data-timvir-theme="dark"] .tac6gx6{color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.namespace){opacity:0.7;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.string,.attr-value){color:#96d0ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.tag,.selector,.keyword){color:#8ddb8c;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function-variable){color:#6f42c1;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#f47067;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#dcbdfb;}
9
+
7
10
  .d1513p2s{display:grid;grid-template-columns:1fr;padding-block:16px;}
8
11
  .b157mkz{--size:48px;z-index:1;position:absolute;top:0;right:0;overflow:hidden;width:var(--size);height:var(--size);display:flex;align-items:flex-start;justify-content:flex-end;outline:none;border:none;padding:6px;background:transparent;transition:all 0.2s;cursor:pointer;pointer-events:none;opacity:0;}.b157mkz:hover{color:white;}.b157mkz:hover svg:first-child{transform:translate(0,0);}.b157mkz:active svg:first-child{transform:translate(2px,-2px);}
9
12
  .b10oxtfo{pointer-events:all;opacity:1;}
@@ -17,21 +20,25 @@
17
20
  .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
18
21
  .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
19
22
  .c5vr6r2{font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:2px;}
20
- .tac6gx6{color:#393a34;background-color:#f6f8fa;}.tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}.tac6gx6 :is(.namespace){opacity:0.7;}.tac6gx6 :is(.string,.attr-value){color:#e3116c;}.tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}.tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}.tac6gx6 :is(.tag,.selector,.keyword){color:#00009f;}.tac6gx6 :is(.function-variable){color:#6f42c1;}.tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#00a4db;}.tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#36acaa;}:root[data-timvir-theme="dark"] .tac6gx6{color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.namespace){opacity:0.7;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.string,.attr-value){color:#96d0ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.tag,.selector,.keyword){color:#8ddb8c;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function-variable){color:#6f42c1;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#f47067;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#dcbdfb;}
23
+
21
24
 
22
25
  .r1f19pie{position:relative;}
23
26
  .b15hqsfj{display:grid;grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(0,1fr));transition:all 0.16s;}.b15hqsfj::before{position:absolute;top:0;right:0;bottom:0;left:0;display:block;z-index:2;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.15);content:"";pointer-events:none;user-select:none;transition:all 0.16s;}.b15hqsfj:hover::before{opacity:0;}
24
27
  .v1uw85xw{height:40px;flex-grow:1;display:grid;place-items:stretch;}.v1uw85xw > div{transition:all 0.16s;cursor:pointer;}.v1uw85xw:first-child > div{border-radius:2px 0 0 2px;}.v1uw85xw:last-child > div{border-radius:0 2px 2px 0;}.v1uw85xw:hover{z-index:3;}.v1uw85xw:hover > div{border-radius:2px;margin:-3px 1px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}
25
28
  .o1823law{position:absolute;top:50%;right:0px;left:0px;transform:translateY(-50%);pointer-events:none;opacity:0;z-index:4;transition:opacity 0.16s;}.s4sqb81 .o1823law{pointer-events:all;opacity:1;}
29
+
26
30
  .rmv2wrl{display:grid;grid-gap:16px;grid-auto-columns:1fr;align-items:start;width:100%;}
27
31
  .d1l94wnr{flex-grow:1;}.d1l94wnr:first-child{border-radius:3px 3px 0 0;}.d1l94wnr:last-child{border-radius:0 0 3px 3px;}
28
32
  .d1uopbb{text-align:center;font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:0.8em;line-height:1;}
29
33
  .d1vwzhoa{color:var(--timvir-text-color);}
30
34
  .c1xqhu04{position:relative;cursor:pointer;display:flex;flex-direction:column;height:200px;}.c1xqhu04::before{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:4px;box-shadow:0 0 0 0 rgba(19,124,189,0);content:"";transition:all 0.16s cubic-bezier(0.4,1,0.75,0.9);}.c1xqhu04:hover::before{box-shadow:0 0 0 2px #00000040;opacity:1;}
31
35
  .a1y0tcvx:hover::before,.a1y0tcvx::before{box-shadow:0 0 0 2px var(--c-p-5);opacity:1;}
36
+
37
+
32
38
  .r1nql2f9{margin:0 0 1.5rem;--timvir-b-Exhibit-bleed:0px;--timvir-b-Exhibit-borderColor:#EFEFEF;--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-borderColor:#101010;--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
33
39
  .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);}
34
40
  .cf43jjx{font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:2px;}
41
+
35
42
  .mby32tn{display:flex;align-items:baseline;font-size:0.9rem;font-weight:bold;transition:all 0.2s;}
36
43
  .rc7ivp5{padding:16px 0;}
37
44
  .fe58upx{margin:0 auto 0 0;}
@@ -41,22 +48,37 @@
41
48
  .ddlplux{padding:0 0 16px;display:flex;flex-direction:column;}
42
49
  .dw285p4{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
43
50
  .dx3nfmc{outline:none;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
51
+
44
52
  .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
45
- .n1xsexuc{margin-top:6px;white-space:nowrap;font-size:0.75rem;opacity:0;transition:all 0.16s;z-index:-1;color:var(--timvir-secondary-text-color);text-align:center;user-select:none;pointer-events:none;position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);}
46
- .r1k0w618{position:relative;z-index:1;}.r1k0w618 svg{display:block;}.r1k0w618:hover .n1xsexuc{opacity:1;bottom:-26px;color:var(--timvir-text-color);}.r1k0w618:active .n1xsexuc{bottom:-24px;}
53
+
47
54
  .b1a0xzv7{background:white;place-self:stretch;border-radius:2px;transition:all 0.2s;box-shadow:0 0 0 0 rgba(0,0,0,0.1);}
48
55
  .g10obtzp{opacity:0;transition:all 0.2s;pointer-events:none;}
49
56
  .r1bcczis{display:grid;place-items:center;cursor:pointer;}.r1bcczis > *{grid-column:1;grid-row:1;}.r1bcczis:hover .b1a0xzv7{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}.r1bcczis:active .b1a0xzv7{margin:1px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);}.r1bcczis:hover .g10obtzp{opacity:1;}
57
+
58
+ .n1xsexuc{margin-top:6px;white-space:nowrap;font-size:0.75rem;opacity:0;transition:all 0.16s;z-index:-1;color:var(--timvir-secondary-text-color);text-align:center;user-select:none;pointer-events:none;position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);}
59
+ .r1k0w618{position:relative;z-index:1;}.r1k0w618 svg{display:block;}.r1k0w618:hover .n1xsexuc{opacity:1;bottom:-26px;color:var(--timvir-text-color);}.r1k0w618:active .n1xsexuc{bottom:-24px;}
60
+
50
61
  .r1ssql2z{position:relative;background:var(--c-p-0);color:black;border-radius:3px;padding:16px 24px 16px 24px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);display:flex;align-items:flex-start;line-height:1.5;}
51
62
  .dhvu07f > *:first-child{margin-top:0;}.dhvu07f > *:last-child{margin-bottom:0;}.dhvu07f > h3:before{display:none;}
52
63
  .i1dz18jz{position:relative;top:3px;margin:-2px 12px 0 -4px;}.i1dz18jz > svg{display:block;}
53
64
  .i41wipx{background:#f0f2fc;color:black;}.i41wipx .i1dz18jz{color:#2a47d5;}
54
65
  .wi7iy6{background:#fcf9f0;color:black;}.wi7iy6 .i1dz18jz{color:#a68521;}
55
66
  .a1d5oxsn{background:#fcf0f0;color:black;}.a1d5oxsn .i1dz18jz{color:#da4444;}
67
+
56
68
  .r19bcggb{position:relative;}.r19bcggb > div{border-radius:2px;}.r19bcggb:hover > div{top:-4px;right:-4px;bottom:-4px;left:-4px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);padding:0px 16px;z-index:2;}.r19bcggb:active > div{top:-2px;right:-2px;bottom:-2px;left:-2px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);padding:0px 14px;z-index:2;}
57
69
  .dhgsgky{display:flex;flex-direction:column;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;transition:all 0.16s;padding:0px 12px;cursor:pointer;}
58
70
  .dobecwk{display:flex;justify-content:space-between;align-items:center;line-height:1;}
59
71
  .dho7t08{padding-top:6px;opacity:0.5;font-size:0.8em;line-height:1;}
72
+
73
+ .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
74
+ .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
75
+ .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
76
+ .d1watfn6{margin-top:12px;}
77
+
78
+ .d1mmz2b6{grid-row:1 / span 3;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;transition:all 0.2s cubic-bezier(0.4,1,0.75,0.9);}.d1mmz2b6:hover{opacity:1;box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 2px 4px rgba(16,22,26,0.2),0 8px 24px rgba(16,22,26,0.2);}.d1mmz2b6:active{box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 0 0 rgba(16,22,26,0),0 1px 1px rgba(16,22,26,0.2);}
79
+
80
+ .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
81
+
60
82
  .r1ouu0bc{contain:layout;}
61
83
  .d1uj09ka{position:relative;}
62
84
  .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
@@ -65,12 +87,7 @@
65
87
  .daubpa6{grid-column:2 / span 1;grid-row:2 / span 1;position:relative;flex:1;height:100px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);transition:height 0.16s;overflow:hidden;}
66
88
  .d1d22s19{animation-duration:2s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:shimmer-d1d22s19;animation-timing-function:linear;background-size:150vw 100px;background-image:linear-gradient(to right,#fafafa 0%,#f4f4f4 25%,#fafafa 40%);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);border-radius:1px;}@keyframes shimmer-d1d22s19{0%{background-position:-60vw 0;}40%{background-position:85vw 0;}100%{background-position:85vw 0;}}
67
89
  .i11uos8q{display:block;position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity 0.2s;}
68
- .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
69
- .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
70
- .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
71
- .d1watfn6{margin-top:12px;}
72
- .d1mmz2b6{grid-row:1 / span 3;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;transition:all 0.2s cubic-bezier(0.4,1,0.75,0.9);}.d1mmz2b6:hover{opacity:1;box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 2px 4px rgba(16,22,26,0.2),0 8px 24px rgba(16,22,26,0.2);}.d1mmz2b6:active{box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 0 0 rgba(16,22,26,0),0 1px 1px rgba(16,22,26,0.2);}
73
- .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
90
+
74
91
  .r1szx90n{transition:all 0.16s;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);border-radius:3px;display:flex;cursor:pointer;text-decoration:none;}.r1szx90n:hover{background:rgba(55,53,47,0.08);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}.r1szx90n:active{background:rgba(55,53,47,0.08);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);}:root[data-timvir-theme="dark"] .r1szx90n{box-shadow:inset 0 0 0 1px rgba(255,255,255,0.2);}:root[data-timvir-theme="dark"] .r1szx90n:hover{background:rgba(255,255,255,0.08);}:root[data-timvir-theme="dark"] .r1szx90n:active{background:rgba(255,255,255,0.08);}
75
92
  .tywhumj{flex:4 1 180px;padding:12px 14px 14px;min-width:0;}
76
93
  .t1sni99u{color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:24px;margin-bottom:6px;}
@@ -79,3 +96,4 @@
79
96
  .f1cqi3na{width:1rem;height:1rem;min-width:1rem;margin-right:6px;}
80
97
  .igksd61{flex:1 1 180px;position:relative;min-width:180px;}
81
98
  .i1gibb8w{display:block;object-fit:cover;border-radius:0 3px 3px 0;width:calc(100% - 2px);height:calc(100% - 2px);position:absolute;top:1px;left:1px;}
99
+
package/bus/index.js CHANGED
@@ -5,10 +5,10 @@ import { makeSubject } from 'wonka';
5
5
  */
6
6
 
7
7
  const makeBus = () => makeSubject();
8
+
8
9
  /**
9
10
  * Send a message to the bus.
10
11
  */
11
-
12
12
  function send(bus, id, member, body) {
13
13
  bus.next({
14
14
  type: "INVOKE",
package/bus/styles.css ADDED
@@ -0,0 +1 @@
1
+
package/context/index.js CHANGED
@@ -4,11 +4,9 @@ const Context = /*#__PURE__*/React.createContext(undefined);
4
4
  const Provider = Context.Provider;
5
5
  function useContext() {
6
6
  const value = React.useContext(Context);
7
-
8
7
  if (!value) {
9
8
  throw new Error("timvir/context: missing provider");
10
9
  }
11
-
12
10
  return value;
13
11
  }
14
12
 
@@ -0,0 +1 @@
1
+