@ponchia/ui 0.14.0 → 0.15.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.
- package/CHANGELOG.md +20 -0
- package/README.md +1 -1
- package/classes/classes.json +5 -1
- package/classes/index.d.ts +6 -0
- package/classes/index.js +10 -1
- package/css/blocknote.css +14 -0
- package/css/primitives.css +13 -0
- package/dist/bronto.css +1 -1
- package/dist/css/blocknote.css +1 -1
- package/dist/css/primitives.css +1 -1
- package/dist/css/tool.css +1 -1
- package/docs/compositions.md +2 -2
- package/docs/interop/blocknote.md +5 -0
- package/docs/reference.md +3 -1
- package/docs/reporting.md +8 -8
- package/docs/stability.md +1 -1
- package/llms.txt +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,26 @@
|
|
|
5
5
|
|> `^0` / `*` wildcard does **not** protect you. See README → Versioning, and
|
|
6
6
|
|> the deprecation policy in CONTRIBUTING.md.
|
|
7
7
|
|
|
8
|
+
## 0.15.0 — 2026-10-02
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **`ui-eyebrow--caps` and `ui-eyebrow--mono`**, the label voice of a tool
|
|
13
|
+
surface, taken from Spatial. `--caps` sets capitals on the wide tracking step,
|
|
14
|
+
for a label that names a region (a panel, a section, a gate); `--mono` sets the
|
|
15
|
+
mono face, for a label over data, code or a readout. Both compose with
|
|
16
|
+
`--muted` and `--sm`, and `ui.eyebrow({ caps, mono })` emits them. A tool that
|
|
17
|
+
restated this voice by hand can use the base eyebrow and keep only its spacing.
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
- **`css/blocknote.css` draws the nested-block guide in `--line`.** BlockNote
|
|
22
|
+
draws the rule beside a nested block in its side-menu colour, which the leaf
|
|
23
|
+
maps to `--text-dim` for the drag handle. In 0.13 that made the guide as dark as
|
|
24
|
+
a control: light mode went from BlockNote's `#cfcfcf` to `#686863`. The guide
|
|
25
|
+
now takes the border token and the handle keeps `--text-dim`. The rule mirrors
|
|
26
|
+
BlockNote 0.54's selector under `.bn-root`, and a test pins that shape.
|
|
27
|
+
|
|
8
28
|
## 0.14.0 — 2026-10-01
|
|
9
29
|
|
|
10
30
|
### Added
|
package/README.md
CHANGED
|
@@ -93,7 +93,7 @@ Or drop it in with no build step, straight from a CDN (replace the version only
|
|
|
93
93
|
when deliberately upgrading across a breaking pre-1.0 minor):
|
|
94
94
|
|
|
95
95
|
```html
|
|
96
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@ponchia/ui@0.
|
|
96
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@ponchia/ui@0.15.0/dist/bronto.css">
|
|
97
97
|
```
|
|
98
98
|
|
|
99
99
|
## Quick start
|
package/classes/classes.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$comment": "@ponchia/ui class vocabulary as language-neutral data — validate emitted markup without executing the ESM cls map or parsing the .d.ts. Generated from classes/index.js — do not edit by hand; run `npm run classes:json:build`. Drift-checked in CI. `groups[].base` is null for a parts-only namespace (no standalone base class — do NOT emit it). A modifier whose name contains `__` (e.g. `ui-spark__bar--pos`) attaches to THAT part, not the base host. `states` is the author-applied `is-*` hooks (runtime/behavior-managed hooks are excluded); `behaviorAttributes` are the `data-bronto-*` wiring hooks the optional behaviors delegate on; `requiredAria` is the role/aria a generator must emit per component. `states` + `customProperties` are documented in docs/reference.md and ship outside `cls` by design.",
|
|
3
3
|
"counts": {
|
|
4
|
-
"classes":
|
|
4
|
+
"classes": 702,
|
|
5
5
|
"groups": 188
|
|
6
6
|
},
|
|
7
7
|
"groups": {
|
|
@@ -620,6 +620,8 @@
|
|
|
620
620
|
"ui-eyebrow": {
|
|
621
621
|
"base": "ui-eyebrow",
|
|
622
622
|
"modifiers": [
|
|
623
|
+
"ui-eyebrow--caps",
|
|
624
|
+
"ui-eyebrow--mono",
|
|
623
625
|
"ui-eyebrow--muted",
|
|
624
626
|
"ui-eyebrow--sm"
|
|
625
627
|
],
|
|
@@ -1891,6 +1893,8 @@
|
|
|
1891
1893
|
"ui-evidence-item__window",
|
|
1892
1894
|
"ui-evidence-ledger",
|
|
1893
1895
|
"ui-eyebrow",
|
|
1896
|
+
"ui-eyebrow--caps",
|
|
1897
|
+
"ui-eyebrow--mono",
|
|
1894
1898
|
"ui-eyebrow--muted",
|
|
1895
1899
|
"ui-eyebrow--sm",
|
|
1896
1900
|
"ui-field",
|
package/classes/index.d.ts
CHANGED
|
@@ -243,6 +243,8 @@ export declare const cls: {
|
|
|
243
243
|
readonly eyebrow: 'ui-eyebrow';
|
|
244
244
|
readonly eyebrowMuted: 'ui-eyebrow--muted';
|
|
245
245
|
readonly eyebrowSm: 'ui-eyebrow--sm';
|
|
246
|
+
readonly eyebrowCaps: 'ui-eyebrow--caps';
|
|
247
|
+
readonly eyebrowMono: 'ui-eyebrow--mono';
|
|
246
248
|
readonly prose: 'ui-prose';
|
|
247
249
|
readonly proseCompact: 'ui-prose--compact';
|
|
248
250
|
readonly proseBlocks: 'ui-prose--blocks';
|
|
@@ -791,6 +793,10 @@ export interface TableOpts {
|
|
|
791
793
|
export interface EyebrowOpts {
|
|
792
794
|
muted?: boolean;
|
|
793
795
|
sm?: boolean;
|
|
796
|
+
/** Capitals on the wide tracking step: a label that names a region. */
|
|
797
|
+
caps?: boolean;
|
|
798
|
+
/** The mono face: a label over data, code or a readout. */
|
|
799
|
+
mono?: boolean;
|
|
794
800
|
}
|
|
795
801
|
export interface HintOpts {
|
|
796
802
|
error?: boolean;
|
package/classes/index.js
CHANGED
|
@@ -257,6 +257,8 @@ export const cls = Object.freeze({
|
|
|
257
257
|
eyebrow: 'ui-eyebrow',
|
|
258
258
|
eyebrowMuted: 'ui-eyebrow--muted',
|
|
259
259
|
eyebrowSm: 'ui-eyebrow--sm',
|
|
260
|
+
eyebrowCaps: 'ui-eyebrow--caps',
|
|
261
|
+
eyebrowMono: 'ui-eyebrow--mono',
|
|
260
262
|
prose: 'ui-prose',
|
|
261
263
|
proseCompact: 'ui-prose--compact',
|
|
262
264
|
proseBlocks: 'ui-prose--blocks',
|
|
@@ -1031,7 +1033,14 @@ export const ui = {
|
|
|
1031
1033
|
lined && cls.tableLined,
|
|
1032
1034
|
breakAnywhere && cls.tableBreakAnywhere,
|
|
1033
1035
|
),
|
|
1034
|
-
eyebrow: ({ muted, sm } = {}) =>
|
|
1036
|
+
eyebrow: ({ muted, sm, caps, mono } = {}) =>
|
|
1037
|
+
j(
|
|
1038
|
+
cls.eyebrow,
|
|
1039
|
+
muted && cls.eyebrowMuted,
|
|
1040
|
+
sm && cls.eyebrowSm,
|
|
1041
|
+
caps && cls.eyebrowCaps,
|
|
1042
|
+
mono && cls.eyebrowMono,
|
|
1043
|
+
),
|
|
1035
1044
|
hint: ({ error } = {}) => j(cls.hint, error && cls.hintError),
|
|
1036
1045
|
cluster: ({ between } = {}) => j(cls.cluster, between && cls.clusterBetween),
|
|
1037
1046
|
stagger: ({ auto } = {}) => j(cls.stagger, auto && cls.staggerAuto),
|
package/css/blocknote.css
CHANGED
|
@@ -59,3 +59,17 @@
|
|
|
59
59
|
--bn-colors-highlights-pink-text: var(--cat-5-ink, var(--danger));
|
|
60
60
|
--bn-colors-highlights-pink-background: var(--cat-5-tint, var(--panel-soft));
|
|
61
61
|
}
|
|
62
|
+
|
|
63
|
+
/* The rule beside a nested block. BlockNote draws it in --bn-colors-side-menu,
|
|
64
|
+
the drag handle's ink, which is --text-dim here: a structural hairline as
|
|
65
|
+
dark as a control. The guide takes the border token instead and the handle
|
|
66
|
+
keeps its colour. The selector is BlockNote 0.54's own (packages/react
|
|
67
|
+
editor/styles.css) under .bn-root, so it outranks it in either order. */
|
|
68
|
+
.bn-root
|
|
69
|
+
.bn-block-group
|
|
70
|
+
.bn-block:not(:has(.bn-toggle-wrapper))
|
|
71
|
+
.bn-block-group
|
|
72
|
+
.bn-block-outer:not([data-prev-depth-changed])::before {
|
|
73
|
+
/* stylelint-disable-next-line csstools/use-logical -- BlockNote draws a physical border-left; a logical override would miss it in RTL. */
|
|
74
|
+
border-left-color: var(--line);
|
|
75
|
+
}
|
package/css/primitives.css
CHANGED
|
@@ -355,6 +355,19 @@
|
|
|
355
355
|
font-size: var(--text-2xs);
|
|
356
356
|
}
|
|
357
357
|
|
|
358
|
+
/* The label voice of a tool surface: capitals on the wide tracking step, for a
|
|
359
|
+
section or panel label that names a region rather than introducing prose.
|
|
360
|
+
Composes with --muted, --sm and --mono. */
|
|
361
|
+
.ui-eyebrow--caps {
|
|
362
|
+
letter-spacing: var(--tracking-wide);
|
|
363
|
+
text-transform: uppercase;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
/* The same label in the mono face, for a label over data, code or a readout. */
|
|
367
|
+
.ui-eyebrow--mono {
|
|
368
|
+
font-family: var(--mono);
|
|
369
|
+
}
|
|
370
|
+
|
|
358
371
|
/* --- Buttons --- */
|
|
359
372
|
|
|
360
373
|
.ui-button {
|