@ponchia/ui 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/CHANGELOG.md +91 -0
  2. package/README.md +4 -4
  3. package/behaviors/command.d.ts +34 -13
  4. package/behaviors/command.d.ts.map +1 -1
  5. package/behaviors/command.js +195 -129
  6. package/classes/classes.json +17 -2
  7. package/classes/index.d.ts +12 -0
  8. package/classes/index.js +14 -2
  9. package/classes/vscode.css-custom-data.json +64 -0
  10. package/css/base.css +2 -2
  11. package/css/blocknote.css +61 -0
  12. package/css/clamp.css +2 -2
  13. package/css/content.css +160 -1
  14. package/css/disclosure.css +10 -10
  15. package/css/feedback.css +95 -3
  16. package/css/fonts-inter.css +35 -0
  17. package/css/fonts-jetbrains-mono.css +49 -0
  18. package/css/forms.css +8 -8
  19. package/css/primitives.css +5 -6
  20. package/css/row.css +2 -2
  21. package/css/site.css +0 -31
  22. package/css/term.css +2 -2
  23. package/css/textref.css +2 -2
  24. package/css/toc.css +2 -2
  25. package/css/tokens.css +43 -0
  26. package/css/tool.css +29 -0
  27. package/css/workbench.css +2 -2
  28. package/dist/bronto.css +1 -1
  29. package/dist/css/base.css +1 -1
  30. package/dist/css/blocknote.css +1 -0
  31. package/dist/css/clamp.css +1 -1
  32. package/dist/css/content.css +1 -1
  33. package/dist/css/disclosure.css +1 -1
  34. package/dist/css/feedback.css +1 -1
  35. package/dist/css/fonts-inter.css +1 -0
  36. package/dist/css/fonts-jetbrains-mono.css +1 -0
  37. package/dist/css/forms.css +1 -1
  38. package/dist/css/report-kit.css +1 -1
  39. package/dist/css/row.css +1 -1
  40. package/dist/css/site.css +1 -1
  41. package/dist/css/term.css +1 -1
  42. package/dist/css/textref.css +1 -1
  43. package/dist/css/toc.css +1 -1
  44. package/dist/css/tokens.css +1 -1
  45. package/dist/css/tool.css +1 -0
  46. package/dist/css/workbench.css +1 -1
  47. package/docs/command.md +47 -7
  48. package/docs/compositions.md +2 -2
  49. package/docs/interop/blocknote.md +60 -0
  50. package/docs/package-contract.md +11 -2
  51. package/docs/reference.md +27 -1
  52. package/docs/reporting.md +8 -8
  53. package/docs/stability.md +5 -2
  54. package/docs/theming.md +56 -2
  55. package/docs/usage.md +55 -0
  56. package/fonts/OFL-Inter.txt +92 -0
  57. package/fonts/OFL-JetBrainsMono.txt +93 -0
  58. package/fonts/inter-variable-italic.woff2 +0 -0
  59. package/fonts/inter-variable.woff2 +0 -0
  60. package/fonts/jetbrains-mono-400-italic.woff2 +0 -0
  61. package/fonts/jetbrains-mono-400.woff2 +0 -0
  62. package/fonts/jetbrains-mono-700-italic.woff2 +0 -0
  63. package/fonts/jetbrains-mono-700.woff2 +0 -0
  64. package/llms.txt +1 -1
  65. package/package.json +18 -10
  66. package/tokens/figma.variables.json +240 -0
  67. package/tokens/index.d.ts +2 -2
  68. package/tokens/index.js +30 -2
  69. package/tokens/index.json +32 -0
  70. package/tokens/resolved.json +17 -1
  71. package/tokens/tokens.dtcg.json +190 -0
package/css/feedback.css CHANGED
@@ -79,6 +79,8 @@
79
79
  }
80
80
 
81
81
  .ui-alert--accent {
82
+ --alert-tone: var(--accent);
83
+
82
84
  border-inline-start-color: var(--accent);
83
85
  }
84
86
 
@@ -87,6 +89,8 @@
87
89
  }
88
90
 
89
91
  .ui-alert--success {
92
+ --alert-tone: var(--success);
93
+
90
94
  border-inline-start-color: var(--success);
91
95
  }
92
96
 
@@ -95,6 +99,8 @@
95
99
  }
96
100
 
97
101
  .ui-alert--warning {
102
+ --alert-tone: var(--warning);
103
+
98
104
  border-inline-start-color: var(--warning);
99
105
  }
100
106
 
@@ -103,6 +109,8 @@
103
109
  }
104
110
 
105
111
  .ui-alert--danger {
112
+ --alert-tone: var(--danger);
113
+
106
114
  border-inline-start-color: var(--danger);
107
115
  }
108
116
 
@@ -111,6 +119,8 @@
111
119
  }
112
120
 
113
121
  .ui-alert--info {
122
+ --alert-tone: var(--info);
123
+
114
124
  border-inline-start-color: var(--info);
115
125
  }
116
126
 
@@ -118,6 +128,84 @@
118
128
  background: var(--info);
119
129
  }
120
130
 
131
+ /* --- Band: an alert across the edge of a small surface ---
132
+ A node, panel or card body that must say "this failed" or "this is out of
133
+ date" above content it still shows. Full-bleed, one line of small type, the
134
+ tone as a tint: at 200–400px a boxed alert spends a third of the body on its
135
+ frame. Put it first in the body; the tone modifiers work as on any alert. */
136
+ .ui-alert--band {
137
+ background: color-mix(in oklch, var(--alert-tone, var(--text-dim)) 10%, var(--panel));
138
+ border: 0;
139
+ border-block-end: 1px solid var(--line);
140
+ border-radius: 0;
141
+ font-size: var(--text-2xs);
142
+ gap: var(--space-1-5);
143
+ padding: var(--space-1-5) var(--space-sm);
144
+ }
145
+
146
+ .ui-alert--band::before {
147
+ block-size: 0.4rem;
148
+ inline-size: 0.4rem;
149
+ margin-block-start: 0.3em;
150
+ }
151
+
152
+ /* --- Body state: what a small surface shows instead of its content ---
153
+ Empty, loading, failed or out of date, for a node, panel or card body of
154
+ 200–400px. It fills the body and centres one short sentence (with an
155
+ optional `ui-empty-state__hint` or an action), without the dashed frame a
156
+ page-level `ui-empty-state` draws. Error and stale lead with a tone dot;
157
+ loading takes `aria-busy="true"` on the region and an optional
158
+ `ui-dotspinner` or `ui-skeleton` inside. In a `ui-cq` body narrower than
159
+ 15rem the state tightens to the smallest type. */
160
+ .ui-body-state {
161
+ align-items: center;
162
+ box-sizing: border-box;
163
+ color: var(--text-dim);
164
+ display: flex;
165
+ flex: 1 1 auto;
166
+ flex-direction: column;
167
+ font-size: var(--text-xs);
168
+ gap: var(--space-2xs);
169
+ justify-content: center;
170
+ margin: 0;
171
+ min-block-size: 100%;
172
+ padding: var(--space-md);
173
+ text-align: center;
174
+ text-wrap: balance;
175
+ }
176
+
177
+ .ui-body-state > * {
178
+ margin: 0;
179
+ }
180
+
181
+ .ui-body-state--error,
182
+ .ui-body-state--stale {
183
+ --body-state-tone: var(--danger);
184
+
185
+ color: var(--text-soft);
186
+ }
187
+
188
+ .ui-body-state--stale {
189
+ --body-state-tone: var(--warning);
190
+ }
191
+
192
+ .ui-body-state--error::before,
193
+ .ui-body-state--stale::before {
194
+ background: var(--body-state-tone);
195
+ border-radius: 50%;
196
+ block-size: 0.5rem;
197
+ content: '';
198
+ inline-size: 0.5rem;
199
+ print-color-adjust: exact;
200
+ }
201
+
202
+ @container bronto (max-inline-size: 15rem) {
203
+ .ui-body-state {
204
+ font-size: var(--text-2xs);
205
+ padding: var(--space-xs);
206
+ }
207
+ }
208
+
121
209
  @media (hover: hover) {
122
210
  .ui-alert__close:hover {
123
211
  color: var(--text);
@@ -277,7 +365,9 @@
277
365
  inherited via --tone-glyph so one rule covers both alert and toast. */
278
366
  @media (forced-colors: active) {
279
367
  .ui-alert::before,
280
- .ui-toast::before {
368
+ .ui-toast::before,
369
+ .ui-body-state--error::before,
370
+ .ui-body-state--stale::before {
281
371
  background: none;
282
372
  border-radius: 0;
283
373
  content: var(--tone-glyph, '\2022'); /* • neutral default */
@@ -300,12 +390,14 @@
300
390
  }
301
391
 
302
392
  .ui-alert--warning,
303
- .ui-toast--warning {
393
+ .ui-toast--warning,
394
+ .ui-body-state--stale {
304
395
  --tone-glyph: '\0021'; /* ! */
305
396
  }
306
397
 
307
398
  .ui-alert--danger,
308
- .ui-toast--danger {
399
+ .ui-toast--danger,
400
+ .ui-body-state--error {
309
401
  --tone-glyph: '\2715'; /* ✕ */
310
402
  }
311
403
 
@@ -0,0 +1,35 @@
1
+ /* ==========================================================================
2
+ fonts-inter — Inter, the face `--sans` names first.
3
+
4
+ OPT-IN LEAF. Since 0.10 ordinary text is `--sans`, and the stack names
5
+ Inter first, but nothing shipped it: each OS fell through to its own
6
+ system face, so the same screen set differently on every device. Import
7
+ this leaf and Inter is what renders everywhere.
8
+
9
+ @import '@ponchia/ui/css/fonts-inter.css';
10
+
11
+ One variable face per style covers every weight the tokens use (400 to 700,
12
+ and the in-between ones a heading or a readout asks for). A browser
13
+ downloads a face only when text on the page needs it, so the italic costs
14
+ nothing until something is italic.
15
+
16
+ Inter 4.1 (rsms/inter, web/InterVariable*.woff2), unmodified. License: SIL
17
+ OFL 1.1, fonts/OFL-Inter.txt. URLs are relative to this file; a bundler
18
+ rewrites them and emits the files.
19
+ ========================================================================== */
20
+
21
+ @font-face {
22
+ font-family: Inter;
23
+ font-style: normal;
24
+ font-weight: 100 900;
25
+ font-display: swap;
26
+ src: url('../fonts/inter-variable.woff2') format('woff2');
27
+ }
28
+
29
+ @font-face {
30
+ font-family: Inter;
31
+ font-style: italic;
32
+ font-weight: 100 900;
33
+ font-display: swap;
34
+ src: url('../fonts/inter-variable-italic.woff2') format('woff2');
35
+ }
@@ -0,0 +1,49 @@
1
+ /* ==========================================================================
2
+ fonts-jetbrains-mono — JetBrains Mono, the face `--mono` names first.
3
+
4
+ OPT-IN LEAF. Code, terminals, numbers in tables and readouts are `--mono`,
5
+ and a terminal measures its cells in it, so a fallback monospace changes
6
+ layout as well as looks. Import this leaf and JetBrains Mono is what
7
+ renders everywhere.
8
+
9
+ @import '@ponchia/ui/css/fonts-jetbrains-mono.css';
10
+
11
+ Four faces: regular and bold, upright and italic, the ones terminal output
12
+ uses. A browser downloads a face only when text on the page needs it.
13
+
14
+ JetBrains Mono 2.304 (JetBrains/JetBrainsMono, fonts/webfonts), unmodified.
15
+ License: SIL OFL 1.1, fonts/OFL-JetBrainsMono.txt. URLs are relative to
16
+ this file; a bundler rewrites them and emits the files.
17
+ ========================================================================== */
18
+
19
+ @font-face {
20
+ font-family: 'JetBrains Mono';
21
+ font-style: normal;
22
+ font-weight: 400;
23
+ font-display: swap;
24
+ src: url('../fonts/jetbrains-mono-400.woff2') format('woff2');
25
+ }
26
+
27
+ @font-face {
28
+ font-family: 'JetBrains Mono';
29
+ font-style: normal;
30
+ font-weight: 700;
31
+ font-display: swap;
32
+ src: url('../fonts/jetbrains-mono-700.woff2') format('woff2');
33
+ }
34
+
35
+ @font-face {
36
+ font-family: 'JetBrains Mono';
37
+ font-style: italic;
38
+ font-weight: 400;
39
+ font-display: swap;
40
+ src: url('../fonts/jetbrains-mono-400-italic.woff2') format('woff2');
41
+ }
42
+
43
+ @font-face {
44
+ font-family: 'JetBrains Mono';
45
+ font-style: italic;
46
+ font-weight: 700;
47
+ font-display: swap;
48
+ src: url('../fonts/jetbrains-mono-700-italic.woff2') format('woff2');
49
+ }
package/css/forms.css CHANGED
@@ -66,8 +66,8 @@
66
66
  .ui-input:focus-visible,
67
67
  .ui-select:focus-visible,
68
68
  .ui-textarea:focus-visible {
69
- outline: 2px solid var(--focus-ring);
70
- outline-offset: 1px;
69
+ outline: var(--focus-ring-width) solid var(--focus-ring);
70
+ outline-offset: calc(var(--focus-ring-offset) / 2);
71
71
  }
72
72
 
73
73
  .ui-input:disabled,
@@ -292,8 +292,8 @@
292
292
  }
293
293
 
294
294
  .ui-range:focus-visible {
295
- outline: 2px solid var(--focus-ring);
296
- outline-offset: 4px;
295
+ outline: var(--focus-ring-width) solid var(--focus-ring);
296
+ outline-offset: calc(2 * var(--focus-ring-offset));
297
297
  }
298
298
 
299
299
  /* --- Error summary: one focusable, assertive list of form errors --- */
@@ -358,8 +358,8 @@
358
358
  border-colour shift alone read markedly fainter on this one control. Keyed to
359
359
  :focus-visible on the inner input so it stays keyboard-only. */
360
360
  .ui-search:has(input:focus-visible) {
361
- outline: 2px solid var(--focus-ring);
362
- outline-offset: 1px;
361
+ outline: var(--focus-ring-width) solid var(--focus-ring);
362
+ outline-offset: calc(var(--focus-ring-offset) / 2);
363
363
  }
364
364
 
365
365
  .ui-search:focus-within::before {
@@ -429,8 +429,8 @@
429
429
  }
430
430
 
431
431
  .ui-switch input:focus-visible + .ui-switch__track {
432
- outline: 2px solid var(--focus-ring);
433
- outline-offset: 2px;
432
+ outline: var(--focus-ring-width) solid var(--focus-ring);
433
+ outline-offset: var(--focus-ring-offset);
434
434
  }
435
435
 
436
436
  /* ARIA contract: `.ui-switch` is a visually-styled checkbox. Author
@@ -812,12 +812,11 @@
812
812
 
813
813
  /* --- Touch: comfortable hit targets on coarse pointers.
814
814
 
815
- The floor is `--tap-target`, not a bare rem. Bronto's own base sets
816
- `html { font-size: 0.9375rem }`, so the 2.9rem this family used to carry
817
- resolved to 43.5px — half a pixel under the 44px WCAG 2.5.5 / platform-HIG
818
- target, and under any host that shrinks the root further it drifted further
819
- still. The token clamps in px against the rem so the standard holds however
820
- the root is re-pointed. --- */
815
+ The floor is `--tap-target`, not a bare rem. Under a 15px root the 2.9rem
816
+ this family used to carry resolved to 43.5px — half a pixel under the 44px
817
+ WCAG 2.5.5 / platform-HIG target, and under any host that shrinks the root
818
+ further it drifted further still. The token clamps in px against the rem so
819
+ the standard holds however the root is re-pointed. --- */
821
820
 
822
821
  @media (pointer: coarse) {
823
822
  .ui-button {
package/css/row.css CHANGED
@@ -126,8 +126,8 @@
126
126
  .ui-row:focus-visible {
127
127
  background: var(--bg-accent);
128
128
  color: var(--text);
129
- outline: 2px solid var(--focus-ring);
130
- outline-offset: -2px;
129
+ outline: var(--focus-ring-width) solid var(--focus-ring);
130
+ outline-offset: calc(-1 * var(--focus-ring-offset));
131
131
  }
132
132
 
133
133
  /* Touch: a row is a primary target in a list, so it floats to the full
package/css/site.css CHANGED
@@ -340,34 +340,3 @@
340
340
  border-color: color-mix(in srgb, var(--accent) 42%, var(--line));
341
341
  color: var(--text-soft);
342
342
  }
343
-
344
- /* --- Meta row — date · author · read-time, dot-separated --- */
345
-
346
- .ui-meta {
347
- align-items: center;
348
- color: var(--text-dim);
349
- display: flex;
350
- flex-wrap: wrap;
351
- font-family: var(--mono);
352
- font-size: var(--text-2xs);
353
- gap: 0.55rem;
354
- letter-spacing: var(--tracking-wide);
355
- list-style: none;
356
- margin: 0;
357
- padding: 0;
358
- text-transform: uppercase;
359
- }
360
-
361
- .ui-meta__item {
362
- align-items: center;
363
- display: inline-flex;
364
- gap: 0.55rem;
365
- }
366
-
367
- .ui-meta__item:not(:last-child)::after {
368
- background: var(--line-strong);
369
- border-radius: 50%;
370
- block-size: 0.22rem;
371
- content: '';
372
- inline-size: 0.22rem;
373
- }
package/css/term.css CHANGED
@@ -39,8 +39,8 @@
39
39
  }
40
40
 
41
41
  .ui-term:focus-visible {
42
- outline: 2px solid var(--focus-ring);
43
- outline-offset: 2px;
42
+ outline: var(--focus-ring-width) solid var(--focus-ring);
43
+ outline-offset: var(--focus-ring-offset);
44
44
  }
45
45
 
46
46
  /* The definition — a native popover. Reset the UA popover chrome to the Bronto
package/css/textref.css CHANGED
@@ -39,8 +39,8 @@
39
39
  }
40
40
 
41
41
  .ui-textref:focus-visible {
42
- outline: 2px solid var(--focus-ring);
43
- outline-offset: 2px;
42
+ outline: var(--focus-ring-width) solid var(--focus-ring);
43
+ outline-offset: var(--focus-ring-offset);
44
44
  }
45
45
 
46
46
  /* The browser-painted highlight on the matched fragment. Scoped to the page
package/css/toc.css CHANGED
@@ -64,8 +64,8 @@
64
64
  }
65
65
 
66
66
  .ui-toc__link:focus-visible {
67
- outline: 2px solid var(--focus-ring);
68
- outline-offset: -2px;
67
+ outline: var(--focus-ring-width) solid var(--focus-ring);
68
+ outline-offset: calc(-1 * var(--focus-ring-offset));
69
69
  }
70
70
 
71
71
  @media (hover: hover) {
package/css/tokens.css CHANGED
@@ -25,6 +25,10 @@
25
25
  --space-lg: 1.35rem;
26
26
  --space-xl: 1.75rem;
27
27
  --space-2xl: 2.5rem;
28
+ --space-0-5: 0.125rem;
29
+ --space-0-75: 0.1875rem;
30
+ --space-1-5: 0.375rem;
31
+ --space-2-5: 0.625rem;
28
32
  --tap-target: max(44px, 2.9rem);
29
33
  --tap-target-min: max(24px, 1.6rem);
30
34
  --safe-area-top: env(safe-area-inset-top, 0px);
@@ -68,6 +72,22 @@
68
72
  --z-popover: 50;
69
73
  --z-toast: 60;
70
74
 
75
+ /* Workspace layers over a canvas, aliased to the page layer where they mean the same. */
76
+ --z-canvas: var(--z-base);
77
+ --z-chrome: var(--z-sticky);
78
+ --z-panel: 25;
79
+ --z-modal: var(--z-overlay);
80
+ --z-menu: var(--z-popover);
81
+ --z-tooltip: 70;
82
+ --z-navigation: 80;
83
+
84
+ /* Zoom — --ui-px is one screen pixel; [data-ui-zoom] re-declares it for a scaled surface. */
85
+ --ui-zoom: 1;
86
+ --ui-px: 1px;
87
+ --hairline: 1px;
88
+ --focus-ring-width: 2px;
89
+ --focus-ring-offset: 2px;
90
+
71
91
  /* Accent ramp — a stepped family for charts / data-viz, derived from the single --accent knob via OKLCH color-mix against a per-theme white/black endpoint. */
72
92
  --accent-1: color-mix(in oklch, var(--accent) 8%, var(--accent-ramp-end));
73
93
  --accent-2: color-mix(in oklch, var(--accent) 16%, var(--accent-ramp-end));
@@ -259,6 +279,10 @@
259
279
  -------------------------------------------------------------------------- */
260
280
 
261
281
  [data-density='compact'] {
282
+ --space-0-5: 0.1rem;
283
+ --space-0-75: 0.15rem;
284
+ --space-1-5: 0.3rem;
285
+ --space-2-5: 0.5rem;
262
286
  --space-2xs: 0.2rem;
263
287
  --space-xs: 0.4rem;
264
288
  --space-sm: 0.6rem;
@@ -269,6 +293,10 @@
269
293
  }
270
294
 
271
295
  [data-density='comfortable'] {
296
+ --space-0-5: 0.15rem;
297
+ --space-0-75: 0.225rem;
298
+ --space-1-5: 0.45rem;
299
+ --space-2-5: 0.75rem;
272
300
  --space-2xs: 0.3rem;
273
301
  --space-xs: 0.6rem;
274
302
  --space-sm: 0.95rem;
@@ -278,6 +306,21 @@
278
306
  --space-2xl: 3.1rem;
279
307
  }
280
308
 
309
+ /* Zoom — a host that draws bronto UI inside a scaled surface (a zoomable
310
+ canvas) marks the scaled element [data-ui-zoom] and sets --ui-zoom to its
311
+ scale there. Inside it --ui-px is one SCREEN pixel, so hairlines, focus rings
312
+ and anything the host sizes in --ui-px keep their on-screen size at any zoom.
313
+ Re-declared here, not inherited, because a custom property that reads
314
+ --ui-zoom resolves where it is declared: the :root values cannot follow a
315
+ zoomed subtree. The 0.15 floor stops a far-out zoom inflating a ring past
316
+ the thing it rings. */
317
+ [data-ui-zoom] {
318
+ --ui-px: calc(1px / max(var(--ui-zoom, 1), 0.15));
319
+ --hairline: var(--ui-px);
320
+ --focus-ring-width: calc(2 * var(--ui-px));
321
+ --focus-ring-offset: calc(2 * var(--ui-px));
322
+ }
323
+
281
324
  /* High contrast — manual opt-in and the OS `prefers-contrast` signal.
282
325
  Both collapse the soft greys toward the strong end; theme-agnostic
283
326
  because they reference the per-theme *-strong / -soft tokens. */
package/css/tool.css ADDED
@@ -0,0 +1,29 @@
1
+ /* ==========================================================================
2
+ tool — the default bundle for a tool, without site and app chrome.
3
+
4
+ Import it INSTEAD of the default bundle, not after it:
5
+
6
+ @import '@ponchia/ui/css/tool.css';
7
+
8
+ Everything in the default bundle except four leaves a tool on its own
9
+ canvas never renders: navigation (the theme toggle), site (the
10
+ marketing/content shell), table (data tables) and app (the admin service
11
+ shell). Tokens, fonts, base, motion, the dot-matrix and glyph primitives,
12
+ content, primitives, rows, forms, feedback, overlay and disclosure stay, in
13
+ the default bundle's cascade order. Need one of the four after all? Import
14
+ its leaf as well (`@ponchia/ui/css/table.css`).
15
+ ========================================================================== */
16
+ @layer bronto;
17
+
18
+ @import url('./tokens.css') layer(bronto);
19
+ @import url('./fonts.css') layer(bronto);
20
+ @import url('./base.css') layer(bronto);
21
+ @import url('./motion.css') layer(bronto);
22
+ @import url('./dots.css') layer(bronto);
23
+ @import url('./content.css') layer(bronto);
24
+ @import url('./primitives.css') layer(bronto);
25
+ @import url('./row.css') layer(bronto);
26
+ @import url('./forms.css') layer(bronto);
27
+ @import url('./feedback.css') layer(bronto);
28
+ @import url('./overlay.css') layer(bronto);
29
+ @import url('./disclosure.css') layer(bronto);
package/css/workbench.css CHANGED
@@ -432,8 +432,8 @@
432
432
  }
433
433
 
434
434
  .ui-splitter__handle:focus-visible {
435
- outline: 2px solid var(--focus-ring);
436
- outline-offset: -2px;
435
+ outline: var(--focus-ring-width) solid var(--focus-ring);
436
+ outline-offset: calc(-1 * var(--focus-ring-offset));
437
437
  }
438
438
 
439
439
  .ui-splitter--horizontal .ui-splitter__handle {