@social.io/catalog 2.1.0 → 2.1.2

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.hints.md DELETED
@@ -1,82 +0,0 @@
1
- # @social.io/catalog — hints
2
-
3
- ## v2 architecture (v8 design program)
4
-
5
- - Pure web-component catalog: Lit via `@design.estate/dees-element` with
6
- standard TC39 decorators (`@property({ ... }) public accessor x`,
7
- `@state() private accessor y`). No services, no recorder — the v1
8
- media-recorder stack was removed.
9
- - Every element: `@customElement('sio-...')`, a
10
- `declare global { interface HTMLElementTagNameMap }` entry, a
11
- `public static demo = () => html\`...\`` with realistic v8 content, and
12
- `static styles = [...sioElementStyles, css\`...\`]`.
13
- - Entry points:
14
- - `ts_web/index.ts` → re-exports `ts_web/elements/index.ts` (the barrel:
15
- tokens + all components).
16
- - `html/index.ts` → dees-wcctools catalog with three sections:
17
- Primitives (all `Sio*` classes except the widget suite), Chat Widget
18
- (`SioFab`, `SioCombox`, `SioConversationSelector`, `SioConversationView`,
19
- `SioMessageInput`, `SioImageLightbox`, `SioPdfViewer`), Pages.
20
- - `ts_web/pages/` — `firstpage` (widget host page with the sio-fab
21
- launcher), `mainpage` (composed v7 unified-feed showcase:
22
- segmented + ai-card + inset-list + list-rows + avatars + chips).
23
- - Build: `pnpm build` = `tsbuild tsfolders` (no skipLibCheck) + `tsbundle`.
24
- Dev: `pnpm watch` (tswatch serves `html/index.html`).
25
- - Tests: `test/test.chromium.ts` runs in real Chromium via
26
- `pnpm test` (tstest). Pattern: construct → append to body →
27
- `await updateComplete` → assert against `shadowRoot`. Gotcha: the
28
- dees-domtools base styles put `transition: background .1s, color .1s`
29
- on `*` — wait ~200ms before asserting a *changed* computed color.
30
-
31
- ## Token system (`ts_web/elements/tokens.ts`)
32
-
33
- - The only source of color/typography/radius/density values. Components
34
- never hardcode colors; tints derive with
35
- `color-mix(in oklab, var(--sio-...) N%, transparent)`. No string
36
- concatenation on `cssManager.bdTheme(...)` results (the v1 anti-pattern) —
37
- light/dark pairs live inside tokens.ts, or a component declares its own
38
- scoped custom prop via `bdTheme` when the value is component-specific
39
- (e.g. the segmented-control knob).
40
- - `sioElementStyles = [cssManager.defaultStyles, sioBaseStyles]` — spread it
41
- first in every element's `static styles`.
42
- - Custom props (all `--sio-*`): surfaces (`bg`, `bg-grouped`, `surface`,
43
- `surface-2`), 4-level labels, separators (0.5px hairline convention via
44
- `--sio-hairline`), tint `#0A84FF` (dark `#409CFF`, hover `#0071E3`/`#64B2FF`,
45
- soft 10%/18%), channel palette (mail `#0A84FF`, chats `#30D158`,
46
- calls `#FF9F0A`, letters `#A2845E`), lane palette (feed/paper/people),
47
- bucket palette (now `#FF453A`, today `#FF9F0A`, later `#8E8E93`,
48
- done `#30D158`), density row heights 78/62/48px, radii ramp, glass values.
49
- - Helper CSS fragments: `sioGlass` / `sioToolbarGlass` / `sioPillGlass`
50
- (backdrop blur 28px saturate 180%), the SF type ramp
51
- (`sioTypeLargeTitle` … `sioTypeCaption2`, `sioTypeMono`), and
52
- `sioTabularNums` for any run of digits. `sioTheme` maps token names to
53
- `var(--sio-*)` strings for inline styles.
54
- - Icons: `sio-icon` is a thin wrapper over the `lucide` npm package
55
- (never a CDN), with a small alias map (e.g. `envelope` → `mail`).
56
-
57
- ## Component inventory (28 files / 29 elements)
58
-
59
- Foundation: `sio-logo` (faceted canvas mark, theme/DPR/reduced-motion aware),
60
- `sio-icon`, `sio-button`, `sio-kbd`, `sio-chip`
61
- (channel/lane/status palettes), `sio-avatar` + `sio-avatar-stack`,
62
- `sio-unread-badge`.
63
-
64
- Chrome & navigation: `sio-glass-toolbar`, `sio-segmented`,
65
- `sio-tab-bar`, `sio-channel-rail`, `sio-dropdown-menu`.
66
-
67
- Lists & feed: `sio-list-row` (density comfortable/cozy/compact =
68
- 78/62/48px, unread gutter, hover triage actions, inset hairlines),
69
- `sio-inset-list` (iOS grouped card), `sio-bucket-header`.
70
-
71
- Content & input: `sio-ai-card`, `sio-composer` (`composer-send` /
72
- `composer-attach`), `sio-cmdk` (host-owned `open`, `cmdk-run` /
73
- `cmdk-close`), `sio-waveform`, `sio-step-timeline`, `sio-paper-thumb`.
74
-
75
- Chat-widget suite (embeddable): `sio-fab` (owns the `SioCombox`
76
- singleton), `sio-combox` (three states: home list / conversation /
77
- away email-fallback), `sio-conversation-selector`,
78
- `sio-conversation-view`, `sio-message-input`, `sio-image-lightbox`,
79
- `sio-pdf-viewer`.
80
-
81
- All interactions dispatch `CustomEvent`s with `bubbles: true,
82
- composed: true`; `render()` stays side-effect free.