@hearthscale/app-ui 0.2.2 → 0.2.4
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/README.md +1 -1
- package/dist/CLASSES.md +16 -9
- package/dist/TOKENS.md +2 -2
- package/dist/brand/linux-tux.svg +438 -0
- package/dist/brand/windows-tile.svg +13 -0
- package/dist/chunks/{chunk-SFZCPZQD.js → chunk-UDXTR7UW.js} +2 -0
- package/dist/editor.js +1 -1
- package/dist/fonts/InterVariable-latin.woff2 +0 -0
- package/dist/index.d.ts +9 -6
- package/dist/index.js +28 -37
- package/dist/markdown.js +1 -1
- package/dist/ui.css +177 -135
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -153,7 +153,7 @@ from the font's sheet. It does not build `@hearthscale/ui`:
|
|
|
153
153
|
`pnpm --filter @hearthscale/app-ui... build` builds both, the design system
|
|
154
154
|
first. The parts come from the design system's `kit` entry
|
|
155
155
|
(`packages/ui/src/kit.ts`): a part is added there, never copied here. The
|
|
156
|
-
platform's build stages the sheets and
|
|
156
|
+
platform's build stages the sheets, fonts and marks of this `dist/` beside the
|
|
157
157
|
daemon, with the MCP Apps SDK's browser build as `mcp-apps.js`, which the
|
|
158
158
|
build writes to `dist/host/` without the SDK's `console.debug` of every
|
|
159
159
|
message and the package does not publish, and the
|
package/dist/CLASSES.md
CHANGED
|
@@ -50,6 +50,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
50
50
|
| `hs-app-surface` | an app's own tab in a row: the shell's chat of a conversation or the enable card; an app's view lays its `hs-sidebar-column` beside its chat in it |
|
|
51
51
|
| `hs-page` | a page of the shell's own in a tab: its navigation, a hairline, and `hs-page-main` |
|
|
52
52
|
| `hs-page-main` | a page's own column: Settings', the documentation's, the Marketplace's or the account's; `data-crowded` while the documentation's column reaches under its Ask press |
|
|
53
|
+
| `hs-scrim` | an overlay whose dim covers the whole window, the rail and the caption bar included, under its card; the overlay sets the fill in `--scrim-fill` |
|
|
53
54
|
| `hs-window-notice`, `hs-window-notice-text` | a stopped platform's card over the inner window, and its sentence |
|
|
54
55
|
| `hs-window-wrap` | the inner window's box beside the rail |
|
|
55
56
|
| `hs-window-tiles` | the workspace's box, which the requests and notices of the window lie over |
|
|
@@ -62,7 +63,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
62
63
|
| `hs-view-bar`, `hs-view-bar-head` | the host's bar of a result's view, under its result and in its modal: the app's mark and name, then the presses that move the view; `data-mode` is `inline` or `modal` |
|
|
63
64
|
| `hs-view-home` | the element a result's view renders into, which moves between its place, its tab and its modal and adds no box |
|
|
64
65
|
| `hs-view-modal-plate` | the plate of a result's view the person moved over the chat, inset from the tile's edges |
|
|
65
|
-
| `hs-ask-float` |
|
|
66
|
+
| `hs-ask-float` | the requests floating over the inner window, with `hs-scrim`, or over one tab, dimming that tab alone |
|
|
66
67
|
| `hs-slot-layer`, `hs-slot`, `hs-slot-part` | the layer over a view that fills its tab, `data-animate` while its parts glide to new places; one slot the view reserved, anchored by its insets, `data-kind` its kind (`chat`, `composer`, `cards`, `terminal`, `model`) and `data-slot` its id; the part the shell draws there |
|
|
67
68
|
| `hs-url`, `hs-urlin`, `hs-urlgo`, `hs-urlph` | a browser's address field and its parts |
|
|
68
69
|
| `hs-scroll` | a scroll container with the shell's scrollbar |
|
|
@@ -83,7 +84,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
83
84
|
| `hs-walk-rows`, `hs-walk-row` | a card's list (`data-layout` is `list`, `open` or `grid`), and one row of it |
|
|
84
85
|
| `hs-walk-row-mark`, `hs-walk-row-text`, `hs-walk-row-title`, `hs-walk-row-sub` | a row's mark, its words, its title and the line under the title |
|
|
85
86
|
| `hs-walk-body` | the bordered plate a card's live content sits in |
|
|
86
|
-
| `hs-walk-foot`, `hs-walk-dots`, `hs-walk-dot` | the foot, the page dots, one dot; `data-sel` marks the card shown
|
|
87
|
+
| `hs-walk-foot`, `hs-walk-dots`, `hs-walk-dot` | the foot, the page dots, one dot; `data-sel` marks the card shown, `data-back` a card before it, the only dots a press moves to |
|
|
87
88
|
| `hs-walk-foot-start`, `hs-walk-next-off` | Back and a second way off the card; the forward press on a card the reader cannot move past |
|
|
88
89
|
| `hs-onboarding-body`, `hs-onboarding-prose` | the live part of a first-run card; a line of words in it |
|
|
89
90
|
| `hs-onboarding-row` | a glass row that starts an act (`data-press`) or says it is done (`data-ticked`) |
|
|
@@ -95,7 +96,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
95
96
|
| `hs-caption-rule` | the hairline between the top lane and the system's caption buttons |
|
|
96
97
|
| `hs-submenu-chevron` | the chevron of a menu row that opens a flyout |
|
|
97
98
|
| `hs-browser-step-off` | a browser's Back or Forward with no page to go to |
|
|
98
|
-
| `hs-tip
|
|
99
|
+
| `hs-tip` | a tooltip |
|
|
99
100
|
| `hs-tog` | a toggle switch |
|
|
100
101
|
| `hs-in`, `hs-ta`, `hs-ph-icon` | a text input, a textarea, a placeholder with a leading icon |
|
|
101
102
|
| `hs-navhead`, `hs-setrow`, `hs-chip` | a settings nav section label, a settings row, a choice chip |
|
|
@@ -138,6 +139,9 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
138
139
|
| `hs-hovink`, `hs-hovmut` | hover that brightens ink only / mutes |
|
|
139
140
|
| `hs-boxact`, `hs-boxsel` | the active plate, the selected plate |
|
|
140
141
|
| `hs-glassbtn` | a glass button |
|
|
142
|
+
| `hs-glass-turn` | an arrow over pictures that turns a carousel or a strip of pictures |
|
|
143
|
+
| `hs-carousel`, `hs-carousel-track` | a carousel, one slide across its width at a time, and its track |
|
|
144
|
+
| `hs-carousel-dots` | the dots at a carousel's foot, one per slide |
|
|
141
145
|
| `hs-inktext`, `hs-inkmut`, `hs-inkdim`, `hs-inkbad` | the ink an element rests at, so a hover or selection rule can reach it |
|
|
142
146
|
|
|
143
147
|
## Transcript
|
|
@@ -197,7 +201,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
197
201
|
| `hs-inline-chip`, `hs-inline-chip-mark` | a file, a folder, a skill or an app's item in the editor or a sent prompt (`data-kind` is `file`, `folder`, `skill` or `mention`), its mark |
|
|
198
202
|
| `hs-composer-shelf`, `hs-shelf-tiles`, `hs-shelf-tile`, `hs-shelf-tile-open`, `hs-shelf-remove` | what rides the next prompt; its pictures, one tile, the tile's opener, a remove button |
|
|
199
203
|
| `hs-shelf-file`, `hs-shelf-file-name`, `hs-shelf-file-size` | another file on the shelf, its name, its size |
|
|
200
|
-
| `hs-shelf-chips`, `hs-shelf-chip`, `hs-shelf-chip-note`
|
|
204
|
+
| `hs-shelf-chips`, `hs-shelf-chip`, `hs-shelf-chip-note`, `hs-shelf-chip-text` | the chips (`data-kind` is `folder`, `terminal`, or `context` for what a view adds, with `data-chip` its id), the "read only" note, a context chip's words |
|
|
201
205
|
| `hs-shelf-refused` | a file the composer could not attach, or a level change the platform refused, in words |
|
|
202
206
|
| `hs-ring`, `hs-ring-panel`, `hs-ring-title`, `hs-ring-share`, `hs-ring-note` | the context ring, its popover, the popover's title, the share used, its sentence |
|
|
203
207
|
| `hs-ring-actions`, `hs-ring-answer`, `hs-ring-details-toggle`, `hs-ring-details` | Compact and the daemon's answer; the Details disclosure and what it holds |
|
|
@@ -226,6 +230,7 @@ capability variant retains `.hs-model-capabilities` / `.hs-model-capability`.
|
|
|
226
230
|
| `hs-kbd` | a key the person can press |
|
|
227
231
|
| `hs-input` | a one-line field with a box; `data-variant` is `text`, `number` or `password` |
|
|
228
232
|
| `hs-chip`, `hs-chip-mark`, `hs-chip-text` | a small named thing; `data-tone` is `neutral`, `info`, `ok`, `warn` or `bad`; a choice chip carries `data-sel` and no tone |
|
|
233
|
+
| `hs-cut` | a one-line label that fades out at its end where its box cuts it |
|
|
229
234
|
| `hs-app-icon` | an app's own icon, or the mark of an app or a plugin |
|
|
230
235
|
| `hs-system-icon` | the machine's own icon for a file or a folder |
|
|
231
236
|
| `hs-file-kind` | a file's kind as a coloured mark until its system icon arrives; `data-kind` names the kind |
|
|
@@ -340,8 +345,9 @@ and add these:
|
|
|
340
345
|
| `hs-installer-stage` | one stage of a run; `data-state` is `done`, `current`, `pending` or `failed` |
|
|
341
346
|
| `hs-installer-slot`, `hs-installer-dot` | a mark's slot at the start of a row; the dot of the current or a waiting stage |
|
|
342
347
|
| `hs-installer-label`, `hs-installer-detail` | a row's words, and the quiet detail at its end |
|
|
343
|
-
| `hs-installer-stopped`, `hs-installer-stopped-text` | a stopped run's sentence and its
|
|
344
|
-
| `hs-installer-
|
|
348
|
+
| `hs-installer-stopped`, `hs-installer-stopped-text` | a stopped run's sentence and its presses; a sentence, `data-tone="bad"` for a failed one |
|
|
349
|
+
| `hs-installer-stopped-actions` | a stopped run's presses: Retry and the failure's report |
|
|
350
|
+
| `hs-installer-folder` | the install or models folder, a glass press that opens the folder dialog |
|
|
345
351
|
| `hs-installer-offer`, `hs-installer-specs`, `hs-installer-spec`, `hs-installer-spec-mark` | the set-up's offer, the machine's facts, one fact, its mark |
|
|
346
352
|
| `hs-installer-picks`, `hs-installer-pick`, `hs-installer-tick` | the receipt's rows, one row (`data-ticked`, `data-fixed`), its tick box |
|
|
347
353
|
|
|
@@ -406,7 +412,7 @@ named shell presentation hooks. They follow these component families:
|
|
|
406
412
|
|
|
407
413
|
Selection uses `data-sel="true"`; settings buttons expose `data-strong` and
|
|
408
414
|
`data-danger`, menu items expose `data-disabled`, and selects expose `data-open`.
|
|
409
|
-
`hs-floating-tip` is a
|
|
415
|
+
`hs-floating-tip` is the box a tooltip floats in beside its mark, `hs-range-value` the
|
|
410
416
|
value beside a slider, `hs-size-step` a step of a size stepper,
|
|
411
417
|
`hs-row-anchor` a row that positions a mark over its corner, and
|
|
412
418
|
`hs-push-end` an element pushed to the end of its row.
|
|
@@ -515,8 +521,9 @@ the controls below a 470px card width without changing other settings layouts.
|
|
|
515
521
|
`.hs-key-remove`, the remove mark; `.hs-key-clash` is the line that names a key another
|
|
516
522
|
shortcut holds.
|
|
517
523
|
- `.hs-provider-title` — a provider's name behind its mark; `.hs-provider-offer` and
|
|
518
|
-
`.hs-provider-offer-name`, a computer on the
|
|
519
|
-
and its name
|
|
524
|
+
`.hs-provider-offer-name`, a computer on the network the Providers page offers to add,
|
|
525
|
+
and its name; `.hs-provider-ask`, the ask of a Server that has not let this computer
|
|
526
|
+
in, with its tip.
|
|
520
527
|
|
|
521
528
|
## Breaks
|
|
522
529
|
|
package/dist/TOKENS.md
CHANGED
|
@@ -196,7 +196,7 @@ one family apart.
|
|
|
196
196
|
| `--tabcard-w` | `calc(var(--space) * 80)` | | yes | no | `320px` at the default `--space` |
|
|
197
197
|
| `--tabcard-dip` | `0.82` | | yes | no | |
|
|
198
198
|
| `--tab-text-min` | `calc(var(--space) * 12)` | | yes | no | `48px` at the default `--space` |
|
|
199
|
-
| `--
|
|
199
|
+
| `--cut-fade` | `calc(var(--space) * 4)` | | yes | no | `16px` at the default `--space` |
|
|
200
200
|
| `--lane-arrow-w` | `calc(var(--space) * 5)` | | yes | no | `20px` at the default `--space` |
|
|
201
201
|
| `--h-lane-rule` | `calc(var(--space) * 6)` | | yes | no | `24px` at the default `--space` |
|
|
202
202
|
| `--lane-rule-alpha` | `0.22` | | yes | no | |
|
|
@@ -406,7 +406,7 @@ through its token; it selects a class only to set one family apart.
|
|
|
406
406
|
| `--r-card` | `.hs-setrow:where(:not(.hs-setrow + .hs-setrow))`, `.hs-setrow:where(:not(:has(+ .hs-setrow)))`, `.hs-menu`, `.hs-tip`, `.hs-md img`, `.hs-settings-plate`, `.hs-shelf-tile`, `.hs-shelf-file`, `.hs-ring-text`, `.hs-ask-preview-view`, `.hs-user-edit`, `.hs-user-bubble`, `.hs-user-tile`, `.hs-work-body`, `.hs-compaction-body`, `.hs-unknown-part`, `.hs-changed`, `.hs-chat-image`, `.hs-audio`, `.hs-media-text`, `.hs-md-picture`, `.hs-terminal-paste`, `.hs-tour-part`, `.hs-view-frame`, `.hs-appearance-tile`, `.hs-theme-preview`, `.hs-colourway-tile`, `.hs-colourway-editor`, `.hs-notice`, `.hs-overlay-note`, `.hs-chart, .hs-diagram`, `.hs-code-block`, `.hs-shell .hs-code-slot`, `.hs-card`, `.hs-model-tile`, `.hs-model-stat`, `.hs-settings-card`, `.hs-settings-card > .hs-setrow:first-child`, `.hs-settings-card > .hs-setrow:last-child`, `.hs-settings-card-header`, `.hs-docs-image`, `.hs-docs-image-link:focus-visible`, `.hs-docs-table`, `.hs-docs-code`, `.hs-docs-callout`, `.hs-docs-card`, `.hs-docs-tabs`, `.hs-docs-accordion`, `.hs-shell .hs-docs-pager-card`, `.hs-market-hero::before`, `.hs-market-feature`, `.hs-market-row, .hs-market-recommended-row`, `.hs-market-shots img`, `.hs-model-media-output img`, `.hs-model-runtime-row`, `.hs-server-log`, `.hs-dashboard-plate, .hs-bento-tile, .hs-figure`, `.hs-tab-card`, `.hs-popover`, `.hs-toast`, `.hs-picture-compare`, `.hs-rich-text pre` |
|
|
407
407
|
| `--r-ctl` | `.hs-glassbtn`, `.hs-sessrow`, `.hs-projrow`, `.hs-plugrow`, `.hs-chip`, `.hs-mitem`, `.hs-url`, `.hs-level-control`, `.hs-model-trigger`, `.hs-picker-row`, `.hs-nav-rail-item`, `.hs-search-result`, `.hs-turn-rail:focus-visible`, `.hs-composer-menu-row`, `.hs-ask-command`, `.hs-ask-option`, `.hs-ask-pick`, `.hs-ask-pick-press`, `.hs-input`, `.hs-user-file`, `.hs-work-line, .hs-work-toggle`, `.hs-spawn-member`, `.hs-media-actions button`, `.hs-audio-save`, `.hs-media-text-save`, `.hs-lightbox-button, .hs-lightbox-step`, `.hs-lightbox-reread`, `.hs-panel-button`, `.hs-browser-address`, `.hs-panel-picker`, `.hs-file-row`, `.hs-ta.hs-sheet-input`, `.hs-sidebar-rail-item`, `.hs-sidebar-drag`, `.hs-panel-field`, `.hs-button`, `.hs-icon-button`, `.hs-field-input`, `.hs-model-browser-row`, `.hs-selection-option`, `.hs-docs-code-copy`, `.hs-docs-card-icon`, `.hs-docs-tab`, `.hs-market-search`, `.hs-market-menu-button`, `.hs-shell .hs-signin-method`, `.hs-settings-tabs button`, `.hs-settings-input`, `.hs-settings-textarea textarea`, `.hs-settings-crumb-item button`, `.hs-segmented`, `.hs-segmented-option`, `.hs-shell .hs-dashboard-link`, `.hs-dashboard-menu`, `.hs-lane-crumb:focus-visible`, `.hs-lane-tabs-arrow` |
|
|
408
408
|
| `--r-icon` | `.hs-picture-tile`, `.hs-model-avatar`, `.hs-market-logo`, `.hs-market-logo img`, `.hs-app-icon` |
|
|
409
|
-
| `--r-pill` | `.hs-shell::-webkit-scrollbar-thumb, .hs-shell ::-webkit-scrollbar-thumb`, `.hs-sessrow[data-ins]::before`, `.hs-shell .hs-tabscroll::-webkit-scrollbar-thumb`, `.hs-range`, `.hs-jump`, `.hs-picker-row-action`, `.hs-overlay-thumb`, `.hs-turn-rail-line`, `.hs-shelf-chip`, `.hs-drop-pill`, `.hs-copy-tip`, `.hs-audio-bar`, `.hs-meter[data-variant='bar']`, `.hs-chip[data-tone]`, `.hs-menu-chip, .hs-tooltip-chip`, `.hs-colour-slider`, `.hs-colour-slider-thumb`, `.hs-model-detail-chip, .hs-model-capabilities-labeled .hs-model-capability`, `.hs-docs-callout-rail`, `.hs-docs-step::before`, `.hs-
|
|
409
|
+
| `--r-pill` | `.hs-shell::-webkit-scrollbar-thumb, .hs-shell ::-webkit-scrollbar-thumb`, `.hs-sessrow[data-ins]::before`, `.hs-shell .hs-tabscroll::-webkit-scrollbar-thumb`, `.hs-range`, `.hs-jump`, `.hs-picker-row-action`, `.hs-overlay-thumb`, `.hs-turn-rail-line`, `.hs-shelf-chip`, `.hs-drop-pill`, `.hs-copy-tip`, `.hs-audio-bar`, `.hs-meter[data-variant='bar']`, `.hs-chip[data-tone]`, `.hs-menu-chip, .hs-tooltip-chip`, `.hs-colour-slider`, `.hs-colour-slider-thumb`, `.hs-model-detail-chip, .hs-model-capabilities-labeled .hs-model-capability`, `.hs-docs-callout-rail`, `.hs-docs-step::before`, `.hs-carousel-dots`, `.hs-carousel-dots button`, `.hs-carousel-dots button::before`, `.hs-shell .hs-signin-method small`, `.hs-model-fit`, `.hs-model-execution progress::-webkit-progress-bar`, `.hs-model-execution progress::-webkit-progress-value`, `.hs-installer-bar`, `.hs-world-map-ramp`, `.hs-picture-compare-name` |
|
|
410
410
|
| `--r-round` | `.hs-range::-webkit-slider-thumb`, `.hs-drawer-dot`, `.hs-composer-tool`, `.hs-composer-stop, .hs-composer-send`, `.hs-shelf-remove`, `.hs-ring`, `.hs-audio-play`, `.hs-tab-dot`, `.hs-walk-dot`, `.hs-orb`, `.hs-orb[data-sel='true']::after`, `.hs-colourway-check, .hs-colourway-custom-check`, `.hs-installer-dot`, `.hs-rail-plate-bypass`, `.hs-lane-tab[data-fit='mark'] > .hs-tab-close`, `.hs-fan-dot, .hs-fan-item-dot`, `.hs-swatch-dot`, `.hs-swatch-choice`, `.hs-date-grid-day`, `.hs-person-mark`, `.hs-picture-compare-knob` |
|
|
411
411
|
| `--r-sm` | `.hs-md code`, `.hs-diff-act`, `.hs-inline-chip`, `.hs-ring-layer-line`, `.hs-ask-data`, `.hs-ask-picture`, `.hs-kbd`, `.hs-chat-action`, `.hs-user-edit`, `.hs-user-bubble`, `.hs-md-missing`, `.hs-panel-favicon`, `.hs-tab-close`, `.hs-site-button`, `.hs-browser-menu-button`, `.hs-path-segment`, `.hs-panel-path`, `.hs-theme-remove`, `.hs-panel-small-button`, `.hs-browser-zoom-reset`, `.hs-icon-button[data-size='sm']`, `.hs-code-copy`, `.hs-docs-prose code`, `.hs-shell .hs-market-rate-star`, `.hs-settings-number-steps button`, `.hs-key-binding`, `.hs-key-record`, `.hs-bar-series-bar`, `.hs-bar-series-fill`, `.hs-tab-card-preview`, `.hs-divider:focus-visible`, `.hs-tinted` |
|
|
412
412
|
| `--r-tile` | `.hs-window`, `.hs-drawer`, `.hs-composer-main`, `.hs-drop-overlay`, `.hs-composer-dock > .hs-ask > .hs-card`, `.hs-tour-card`, `.hs-confirm-box`, `.hs-walk[data-host='dialog'] .hs-walk-card`, `.hs-walk-image`, `.hs-sheet-box`, `.hs-view-modal-plate`, `.hs-modal`, `.hs-selection-dialog`, `.hs-tile-drop`, `.hs-surface` |
|