timvir 0.2.35 → 0.2.37

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,16 @@
1
1
  # timvir
2
2
 
3
+ ## 0.2.37
4
+
5
+ ### Patch Changes
6
+
7
+ - **Add explicit type annotations to timvir/builtins** ([#3165](https://github.com/timvir/timvir/pull/3165)) - Previously we would leak the fact that Timvir internally is using Linaria for styling. To the user of this library, the components in timvir/builtins should appear just like any other React components.
8
+ - **Hide Linaria from the public facing API** ([#3166](https://github.com/timvir/timvir/pull/3166)) - With this change, we no longer leak Linaria types through the public facing Timvir API. Linaria still remains in use internally. But this fact is no longer exposed to users of Timvir.
9
+ - **Remove immer and use-immer dependencies** ([#3187](https://github.com/timvir/timvir/pull/3187)) - These dependencies did not bring enough value to the library to warrant their presence. This is a purely internal change and does not have any effect on the public API.
10
+ - **Remove fuzzaldrin-plus dependency** ([#3188](https://github.com/timvir/timvir/pull/3188)) - This change may affect the accuracy of search results (if you were relying on the fuzzy-search aspect of fuzzaldrin-plus). It also slightly degrades how the 'Search' component displays search results by no longer highlighting the string match.
11
+
12
+ ## 0.2.36
13
+
3
14
  ## 0.2.35
4
15
 
5
16
  ### Patch Changes
@@ -2,7 +2,6 @@
2
2
  import { Exhibit } from 'timvir/blocks';
3
3
  import { useBlock } from 'timvir/core';
4
4
  import * as React from 'react';
5
- import { useImmer } from 'use-immer';
6
5
 
7
6
  // src/css.ts
8
7
 
@@ -83,7 +82,7 @@ function decode(output) {
83
82
  carry >>= 8;
84
83
  }
85
84
  }
86
- for (let i = 0; i < output.length && output[i] === "1"; i++) {
85
+ for (let i = 0; i < output.length - 1 && output[i] === "1"; i++) {
87
86
  bytes.push(0);
88
87
  }
89
88
  return new Uint8Array(bytes.reverse());
@@ -106,14 +105,14 @@ function Arbitrary(props, ref) {
106
105
  children,
107
106
  ...rest
108
107
  } = block.props;
109
- const [value, mutate] = useImmer({
108
+ const [value, setValue] = React.useState({
110
109
  seed: 0
111
110
  });
112
111
  React.useEffect(() => {
113
- mutate(draft => {
114
- draft.seed = crypto.getRandomValues(new Uint32Array(1))[0];
112
+ setValue({
113
+ seed: crypto.getRandomValues(new Uint32Array(1))[0]
115
114
  });
116
- }, [mutate]);
115
+ }, []);
117
116
  React.useEffect(() => {
118
117
  if (props.id) {
119
118
  block.bus.next({
@@ -144,8 +143,8 @@ function Arbitrary(props, ref) {
144
143
  readOnly: true,
145
144
  onPaste: ev => {
146
145
  const v = ev.clipboardData.getData("text/plain");
147
- mutate(draft => {
148
- draft.seed = +new TextDecoder().decode(decode(v));
146
+ setValue({
147
+ seed: +new TextDecoder().decode(decode(v))
149
148
  });
150
149
  },
151
150
  onFocus: ev => {
@@ -154,8 +153,8 @@ function Arbitrary(props, ref) {
154
153
  })), /*#__PURE__*/React.createElement("button", {
155
154
  className: classes.button,
156
155
  onClick: () => {
157
- mutate(draft => {
158
- draft.seed = crypto.getRandomValues(new Uint32Array(1))[0];
156
+ setValue({
157
+ seed: crypto.getRandomValues(new Uint32Array(1))[0]
159
158
  });
160
159
  }
161
160
  }, "Refresh")), /*#__PURE__*/React.createElement(Exhibit, {
@@ -1,7 +1,7 @@
1
1
  .r1ev38xg{margin:1em 0;}
2
- .c8hz158{display:grid;grid-gap:8px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
- .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;min-height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
2
+ .c8hz158{display:-ms-grid;display:grid;-ms-grid-gap:8px;grid-gap:8px;-ms-grid-columns:1fr 100px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
+ .t1663phv{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 0 0 10px;min-height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
4
4
  .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
- .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;width:100%;color:inherit;}
5
+ .i1dajnne{border:none;outline:none;font:inherit;background:transparent;-webkit-align-self:stretch;-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;padding:0;width:100%;color:inherit;}
6
6
  .b128wsn{border:none;outline:none;min-height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
7
7
 
@@ -4,7 +4,6 @@ import { useBlock } from 'timvir/core';
4
4
  import { codeToHtml } from 'shiki';
5
5
  import * as React from 'react';
6
6
  import * as Icons from 'react-feather';
7
- import { useImmer } from 'use-immer';
8
7
 
9
8
  // src/css.ts
10
9
 
@@ -52,7 +51,7 @@ function Code(props, ref) {
52
51
  className,
53
52
  ...rest
54
53
  } = block.props;
55
- const [state, mutate] = useImmer({
54
+ const [state, setState] = React.useState({
56
55
  settled: false,
57
56
  mouseOver: false,
58
57
  copiedToClipboard: false,
@@ -85,12 +84,13 @@ function Code(props, ref) {
85
84
  }
86
85
  }))
87
86
  });
88
- mutate(draft => {
89
- draft.settled = true;
90
- draft.html = html;
91
- });
87
+ setState(state => ({
88
+ ...state,
89
+ settled: true,
90
+ html
91
+ }));
92
92
  })();
93
- }, [mutate, children, language]);
93
+ }, [children, language]);
94
94
  return /*#__PURE__*/React.createElement(Root, {
95
95
  ref: ref,
96
96
  className: cx_default("timvir-b-Code", !state.settled && "timvir-unsettled", classes.root, fullWidth && Page.fullWidth),
@@ -100,22 +100,25 @@ function Code(props, ref) {
100
100
  }, /*#__PURE__*/React.createElement("div", {
101
101
  className: "d1513p2s",
102
102
  onMouseEnter: () => {
103
- mutate(draft => {
104
- draft.mouseOver = true;
105
- });
103
+ setState(state => ({
104
+ ...state,
105
+ mouseOver: true
106
+ }));
106
107
  },
107
108
  onMouseLeave: () => {
108
- mutate(draft => {
109
- draft.mouseOver = false;
110
- draft.copiedToClipboard = false;
111
- });
109
+ setState(state => ({
110
+ ...state,
111
+ mouseOver: false,
112
+ copiedToClipboard: false
113
+ }));
112
114
  }
113
115
  }, /*#__PURE__*/React.createElement("button", {
114
116
  onClick: () => {
115
117
  navigator.clipboard.writeText(children);
116
- mutate(draft => {
117
- draft.copiedToClipboard = true;
118
- });
118
+ setState(state => ({
119
+ ...state,
120
+ copiedToClipboard: true
121
+ }));
119
122
  },
120
123
  className: cx_default("b157mkz", state.mouseOver && "b10oxtfo")
121
124
  }, /*#__PURE__*/React.createElement("svg", {
@@ -1,16 +1,16 @@
1
- .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;}
1
+ .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"] {color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] {color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] {opacity:0.7;}:root[data-timvir-theme="dark"] {color:#96d0ff;}:root[data-timvir-theme="dark"] {color:#6cb6ff;}:root[data-timvir-theme="dark"] {color:#d73a49;}:root[data-timvir-theme="dark"] {color:#8ddb8c;}:root[data-timvir-theme="dark"] {color:#6f42c1;}:root[data-timvir-theme="dark"] {color:#f47067;}:root[data-timvir-theme="dark"] {color:#dcbdfb;}
2
2
 
3
- .d1513p2s{display:grid;grid-template-columns:1fr;}
4
- .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);}
3
+ .d1513p2s{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;}
4
+ .b157mkz{--size:48px;z-index:1;position:absolute;top:0;right:0;overflow:hidden;width:var(--size);height:var(--size);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;outline:none;border:none;padding:6px;background:transparent;-webkit-transition:all 0.2s;transition:all 0.2s;cursor:pointer;pointer-events:none;opacity:0;}.b157mkz:hover{color:white;}.b157mkz:hover svg:first-child{-webkit-transform:translate(0, 0);-moz-transform:translate(0, 0);-ms-transform:translate(0, 0);transform:translate(0, 0);}.b157mkz:active svg:first-child{-webkit-transform:translate(2px, -2px);-moz-transform:translate(2px, -2px);-ms-transform:translate(2px, -2px);transform:translate(2px, -2px);}
5
5
  .b10oxtfo{pointer-events:all;opacity:1;}
6
- .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;transition:all 0.2s;transform:translate(48px,-48px);}.s1hdfi6o path{fill:var(--c-p-4);}
6
+ .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;-webkit-transition:all 0.2s;transition:all 0.2s;-webkit-transform:translate(48px, -48px);-moz-transform:translate(48px, -48px);-ms-transform:translate(48px, -48px);transform:translate(48px, -48px);}.s1hdfi6o path{fill:var(--c-p-4);}
7
7
  .d17pltln{padding:16px 24px 16px 0;}
8
8
 
9
- :root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
10
- .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
11
- .fjvaz2s{display:grid;border-radius:0;box-shadow:none;margin-inline:0;grid-auto-rows:min-content;grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width:60rem){.fjvaz2s{grid-template-columns:[le] 1fr [lc] minmax(0,48rem) [rc] 1fr [re];grid-column-gap:24px;}}.fjvaz2s > *{grid-column:lc / re;}
9
+ :root[data-timvir-theme="dark"] ,:root[data-timvir-theme="dark"] {color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important;}
10
+ .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-margin, 0px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed), 8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color)!important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
11
+ .fjvaz2s{display:-ms-grid;display:grid;border-radius:0;box-shadow:none;margin-inline:0;-ms-grid-auto-rows:min-content;grid-auto-rows:min-content;-ms-grid-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];-ms-grid-column-gap:16px;grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width: 60rem){.fjvaz2s{-ms-grid-columns:[le] 1fr [lc] minmax(0, 48rem) [rc] 1fr [re];grid-template-columns:[le] 1fr [lc] minmax(0, 48rem) [rc] 1fr [re];-ms-grid-column-gap:24px;grid-column-gap:24px;}}.fjvaz2s>*{grid-column:lc/re;}
12
12
  .lchll0h{padding-inline:var(--timvir-b-Code-inlinePadding);}
13
- .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
13
+ .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] {background-color:rgba(174, 124, 20, 0.15);}
14
14
  .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
15
15
  .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
16
16
 
@@ -1,2 +1,2 @@
1
- declare const _default: import("@linaria/core").LinariaClassName;
1
+ declare const _default: string;
2
2
  export default _default;
@@ -1,6 +1,6 @@
1
1
 
2
2
  .r1f19pie{position:relative;}
3
- .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;}
4
- .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);}
5
- .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;}
3
+ .b15hqsfj{display:-ms-grid;display:grid;-ms-grid-auto-flow:row;grid-auto-flow:row;-ms-grid-columns:repeat(auto-fit, minmax(0, 1fr));grid-template-columns:repeat(auto-fit, minmax(0, 1fr));-webkit-transition:all 0.16s;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;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all 0.16s;transition:all 0.16s;}.b15hqsfj:hover::before{opacity:0;}
4
+ .v1uw85xw{height:40px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;display:-ms-grid;display:grid;place-items:stretch;}.v1uw85xw>div{-webkit-transition:all 0.16s;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);}
5
+ .o1823law{position:absolute;top:50%;right:0px;left:0px;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);pointer-events:none;opacity:0;z-index:4;-webkit-transition:opacity 0.16s;transition:opacity 0.16s;}.s4sqb81 .o1823law{pointer-events:all;opacity:1;}
6
6
 
@@ -1,7 +1,7 @@
1
- .rmv2wrl{display:grid;grid-gap:16px;grid-auto-columns:1fr;align-items:start;width:100%;}
2
- .d1l94wnr{flex-grow:1;}.d1l94wnr:first-child{border-radius:3px 3px 0 0;}.d1l94wnr:last-child{border-radius:0 0 3px 3px;}
1
+ .rmv2wrl{display:-ms-grid;display:grid;-ms-grid-gap:16px;grid-gap:16px;-ms-grid-auto-columns:1fr;grid-auto-columns:1fr;-webkit-align-items:start;-webkit-box-align:start;-ms-flex-align:start;align-items:start;width:100%;}
2
+ .d1l94wnr{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}.d1l94wnr:first-child{border-radius:3px 3px 0 0;}.d1l94wnr:last-child{border-radius:0 0 3px 3px;}
3
3
  .d1uopbb{text-align:center;font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:0.8em;line-height:1;}
4
4
  .d1vwzhoa{color:var(--timvir-text-color);}
5
- .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;}
5
+ .c1xqhu04{position:relative;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;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:"";-webkit-transition:all 0.16s cubic-bezier(0.4, 1, 0.75, 0.9);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;}
6
6
  .a1y0tcvx:hover::before,.a1y0tcvx::before{box-shadow:0 0 0 2px var(--c-p-5);opacity:1;}
7
7
 
@@ -1,4 +1,4 @@
1
- .r1nql2f9{--timvir-b-Exhibit-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
1
+ .r1nql2f9{--timvir-b-Exhibit-bleed:calc(var(--timvir-margin, 0px) * 0.6666);--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);}:root[data-timvir-theme="dark"] {--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
2
2
  .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);border-radius:5px;}
3
3
  .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
4
4
 
@@ -1,9 +1,9 @@
1
- .mby32tn{display:flex;align-items:baseline;font-size:0.9rem;font-weight:bold;transition:all 0.2s;}
1
+ .mby32tn{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:baseline;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;font-size:0.9rem;font-weight:bold;-webkit-transition:all 0.2s;transition:all 0.2s;}
2
2
  .fc7ivp5{margin:0 auto 0 0;}
3
- .de58upx{cursor:pointer;}.de58upx:hover{color:var(--c-p-4);opacity:1;}.de58upx > svg{position:relative;top:2px;}
4
- .d10949ho{display:flex;flex-direction:column;}
5
- .d1o2du3z{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
3
+ .de58upx{cursor:pointer;}.de58upx:hover{color:var(--c-p-4);opacity:1;}.de58upx>svg{position:relative;top:2px;}
4
+ .d10949ho{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}
5
+ .d1o2du3z{overflow:hidden;-webkit-transition:height 0.2s,opacity 0.2s 0.1s;transition:height 0.2s,opacity 0.2s 0.1s;}
6
6
  .d1o9zhgl{padding:0 0 16px;}
7
- .ddlplux{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
8
- .dw285p4{outline:none;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
7
+ .ddlplux{overflow:hidden;-webkit-transition:height 0.2s,opacity 0.2s 0.1s;transition:height 0.2s,opacity 0.2s 0.1s;}
8
+ .dw285p4{outline:none;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
9
9
 
@@ -1,2 +1,2 @@
1
- .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--timvir-page-margin,24px);--timvir-margin:calc(var(--timvir-page-margin,24px) * 0.5);}
1
+ .r1c1ozpm{display:-ms-grid;display:grid;-ms-grid-columns:repeat(auto-fit, minmax(220px, 1fr));grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:var(--timvir-page-margin, 24px);--timvir-margin:calc(var(--timvir-page-margin, 24px) * 0.5);}
2
2
 
@@ -1,7 +1,7 @@
1
- .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);}
2
- .g10obtzp{opacity:0;transition:all 0.2s;pointer-events:none;}
3
- .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;}
1
+ .b1a0xzv7{background:white;place-self:stretch;border-radius:2px;-webkit-transition:all 0.2s;transition:all 0.2s;box-shadow:0 0 0 0 rgba(0, 0, 0, 0.1);}
2
+ .g10obtzp{opacity:0;-webkit-transition:all 0.2s;transition:all 0.2s;pointer-events:none;}
3
+ .r1bcczis{display:-ms-grid;display:grid;place-items:center;cursor:pointer;}.r1bcczis>*{-ms-grid-column:1;grid-column:1;-ms-grid-row: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;}
4
4
 
5
- .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%);}
5
+ .n1xsexuc{margin-top:6px;white-space:nowrap;font-size:0.75rem;opacity:0;-webkit-transition:all 0.16s;transition:all 0.16s;z-index:-1;color:var(--timvir-secondary-text-color);text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;position:absolute;left:50%;bottom:-20px;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);}
6
6
  .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;}
7
7
 
@@ -1,6 +1,6 @@
1
- .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;font-size:0.875rem;line-height:1.5;}
2
- .dhvu07f > *:first-child{margin-top:0;}.dhvu07f > *:last-child{margin-bottom:0;}.dhvu07f > h3:before{display:none;}
3
- .i1dz18jz{position:relative;top:3px;margin:-2px 12px 0 -4px;}.i1dz18jz > svg{display:block;}
1
+ .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:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;font-size:0.875rem;line-height:1.5;}
2
+ .dhvu07f>*:first-child{margin-top:0;}.dhvu07f>*:last-child{margin-bottom:0;}.dhvu07f>h3:before{display:none;}
3
+ .i1dz18jz{position:relative;top:3px;margin:-2px 12px 0 -4px;}.i1dz18jz>svg{display:block;}
4
4
  .i41wipx{background:#f0f2fc;color:black;}.i41wipx .i1dz18jz{color:#2a47d5;}
5
5
  .wi7iy6{background:#fcf9f0;color:black;}.wi7iy6 .i1dz18jz{color:#a68521;}
6
6
  .a1d5oxsn{background:#fcf0f0;color:black;}.a1d5oxsn .i1dz18jz{color:#da4444;}
@@ -1,5 +1,5 @@
1
- .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;}
2
- .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;}
3
- .dobecwk{display:flex;justify-content:space-between;align-items:center;line-height:1;}
1
+ .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;}
2
+ .dhgsgky{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-transition:all 0.16s;transition:all 0.16s;padding:0px 12px;cursor:pointer;}
3
+ .dobecwk{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:space-between;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1;}
4
4
  .dho7t08{padding-top:6px;opacity:0.5;font-size:0.8em;line-height:1;}
5
5
 
@@ -2,7 +2,6 @@
2
2
  import { useBlock, fullWidth } from 'timvir/core';
3
3
  import { useResizeObserverEntry, useResizeObserver } from 'timvir/hooks';
4
4
  import * as React from 'react';
5
- import { useImmer } from 'use-immer';
6
5
  import { useMDXComponents } from '@mdx-js/react';
7
6
  import * as builtins from 'timvir/builtins';
8
7
  import { Code } from 'timvir/blocks';
@@ -157,7 +156,7 @@ function Viewport(props, ref) {
157
156
  className,
158
157
  ...rest
159
158
  } = block.props;
160
- const [state, mutate] = useImmer({
159
+ const [state, setState] = React.useState({
161
160
  settled: false
162
161
  });
163
162
 
@@ -299,8 +298,8 @@ function Viewport(props, ref) {
299
298
  * content.
300
299
  */
301
300
  setTimeout(() => {
302
- mutate(draft => {
303
- draft.settled = true;
301
+ setState({
302
+ settled: true
304
303
  });
305
304
  }, 50);
306
305
  } else {
@@ -1,18 +1,18 @@
1
- .fgdj0yb{font-size:0.8125rem;line-height:1.1875;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;}
1
+ .fgdj0yb{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);white-space:nowrap;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:space-between;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
2
+ .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh>svg{display:block;}
3
+ .d1enfo6{overflow:hidden;-webkit-transition:height 0.2s,opacity 0.2s 0.1s;transition:height 0.2s,opacity 0.2s 0.1s;}
4
4
  .d1watfn6{margin-top:12px;}
5
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);}
6
+ .d1mmz2b6{-ms-grid-row:1;-ms-grid-row-span:3;grid-row:1/span 3;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;-webkit-transition:all 0.2s cubic-bezier(0.4, 1, 0.75, 0.9);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
7
 
8
8
  .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
9
9
 
10
10
  .r1ouu0bc{contain:layout;margin-bottom:0;}
11
11
  .d1uj09ka{position:relative;}
12
- .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-variant-numeric:tabular-nums;}
13
- .d8ms9m9{display:flex;align-items:stretch;justify-content:center;}
14
- .d17q9rbm{border-radius:3px;display:grid;grid-template-columns:56px auto 56px;grid-template-rows:0 auto 0;grid-column-gap:8px;}
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;}
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;}}
17
- .i11uos8q{display:block;position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity 0.2s;}
12
+ .d2uawyc{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);font-variant-numeric:tabular-nums;}
13
+ .d8ms9m9{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}
14
+ .d17q9rbm{border-radius:3px;display:-ms-grid;display:grid;-ms-grid-columns:56px auto 56px;grid-template-columns:56px auto 56px;-ms-grid-rows:0 auto 0;grid-template-rows:0 auto 0;-ms-grid-column-gap:8px;grid-column-gap:8px;}
15
+ .daubpa6{-ms-grid-column:2;-ms-grid-column-span:1;grid-column:2/span 1;-ms-grid-row:2;-ms-grid-row-span:1;grid-row:2/span 1;position:relative;-webkit-flex:1;-ms-flex:1;flex:1;height:100px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);-webkit-transition:height 0.16s;transition:height 0.16s;overflow:hidden;}
16
+ .d1d22s19{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-name:shimmer-d1d22s19;animation-name:shimmer-d1d22s19;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-background-size:150vw 100px;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;}@-webkit-keyframes shimmer-d1d22s19{0%{-webkit-background-position:-60vw 0;background-position:-60vw 0;}40%{-webkit-background-position:85vw 0;background-position:85vw 0;}100%{-webkit-background-position:85vw 0;background-position:85vw 0;}}@keyframes shimmer-d1d22s19{0%{-webkit-background-position:-60vw 0;background-position:-60vw 0;}40%{-webkit-background-position:85vw 0;background-position:85vw 0;}100%{-webkit-background-position:85vw 0;background-position:85vw 0;}}
17
+ .i11uos8q{display:block;position:absolute;top:0;left:0;width:100%;height:100%;-webkit-transition:opacity 0.2s;transition:opacity 0.2s;}
18
18
 
@@ -1,7 +1,6 @@
1
1
  'use client';
2
2
  import * as React from 'react';
3
3
  import { useContext } from 'timvir/core';
4
- import { useImmer } from 'use-immer';
5
4
 
6
5
  // src/css.ts
7
6
 
@@ -42,7 +41,7 @@ function WebLink(props, ref) {
42
41
  className,
43
42
  ...rest
44
43
  } = props;
45
- const [state, mutate] = useImmer({
44
+ const [state, setState] = React.useState({
46
45
  settled: false,
47
46
  metadata: undefined
48
47
  });
@@ -51,12 +50,12 @@ function WebLink(props, ref) {
51
50
  } = useContext().blocks?.WebLink ?? {};
52
51
  React.useEffect(() => {
53
52
  unfurl(url).then(metadata => {
54
- mutate(draft => {
55
- draft.settled = true;
56
- draft.metadata = metadata;
53
+ setState({
54
+ settled: true,
55
+ metadata: metadata
57
56
  });
58
57
  });
59
- }, [url, mutate]);
58
+ }, [url]);
60
59
  const metadata = state.metadata;
61
60
  const image = metadata?.open_graph?.images?.[0]?.url;
62
61
  return /*#__PURE__*/React.createElement(Root, {
@@ -1,9 +1,9 @@
1
- .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);}
2
- .tywhumj{flex:4 1 180px;padding:12px 14px 14px;min-width:0;}
1
+ .r1szx90n{-webkit-transition:all 0.16s;transition:all 0.16s;box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2);border-radius:3px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer;-webkit-text-decoration:none;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"] {box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.2);}:root[data-timvir-theme="dark"] {background:rgba(255, 255, 255, 0.08);}:root[data-timvir-theme="dark"] {background:rgba(255, 255, 255, 0.08);}
2
+ .tywhumj{-webkit-flex:4 1 180px;-ms-flex:4 1 180px;flex:4 1 180px;padding:12px 14px 14px;min-width:0;}
3
3
  .t1sni99u{color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:24px;margin-bottom:6px;}
4
4
  .d7eo497{font-size:0.75rem;line-height:1.1rem;color:var(--timvir-secondary-text-color);height:2.2rem;overflow:hidden;}
5
- .u1rlrpoc{margin-top:12px;display:flex;font-size:0.75rem;line-height:1rem;color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
5
+ .u1rlrpoc{margin-top:12px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:0.75rem;line-height:1rem;color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
6
6
  .f1cqi3na{width:1rem;height:1rem;min-width:1rem;margin-right:6px;}
7
- .igksd61{flex:1 1 180px;position:relative;min-width:180px;}
7
+ .igksd61{-webkit-flex:1 1 180px;-ms-flex:1 1 180px;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
9