@getvitops/cli 0.6.0 → 0.7.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 +169 -0
- package/README.md +6 -0
- package/package.json +5 -4
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# @getvitops/cli
|
|
2
|
+
|
|
3
|
+
## 0.7.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 44de07f: Split the button pattern into two tiers named by intent: `.cta` (persuasion) and `.btn`
|
|
8
|
+
(affordance).
|
|
9
|
+
|
|
10
|
+
**Breaking: a bare `<button>` is no longer a filled brand-primary button.** It now renders as a
|
|
11
|
+
quiet interactive control — geometry, cursor, subtle hover, focus ring — with no fill, no
|
|
12
|
+
`font-weight: 600`, and no shadow.
|
|
13
|
+
|
|
14
|
+
**Migration:** add `class="cta"` to any button that should stay prominent. Submit buttons, hero
|
|
15
|
+
actions, and anything driving a conversion are the usual candidates; dialog closes, toolbar
|
|
16
|
+
buttons, icon buttons and toggles should keep the new default. If you want the old behaviour
|
|
17
|
+
globally, set `patterns.items.btn` in your `design-system.json` back to the previous filled base.
|
|
18
|
+
|
|
19
|
+
New in this release:
|
|
20
|
+
- **`.cta`** — filled, bolder, roomier, lifts on hover. It is a class, not an element rule, so it
|
|
21
|
+
finally works on `<a>` — which is what a call to action usually is, since it navigates. Role
|
|
22
|
+
variants: `.cta-{success,danger,warning,info}`.
|
|
23
|
+
- **`.btn`** — the affordance tier. Emitted as one zero-specificity `:where(button, .btn)` rule, so
|
|
24
|
+
a bare `<button>` gets it with no class, `.btn` carries it to any other tag, and any explicit
|
|
25
|
+
class (including `.cta`, or a component's own class) overrides it without `!important`.
|
|
26
|
+
- **`:where(a, .link)`** — the link pattern now pairs its element with a class the same way.
|
|
27
|
+
- A pattern may now set **both `element` and `class`**, emitting one combined
|
|
28
|
+
`:where(<element>, .<class>)` rule. This is the general mechanism behind the above.
|
|
29
|
+
- A pattern may declare **`fill: true|false`** to state whether states and role variants drive
|
|
30
|
+
`background-color` (plus `on-solid` text) or `color`, instead of relying on the previous
|
|
31
|
+
inference from the pattern's name and base declarations. Existing configs are unaffected — the
|
|
32
|
+
old inference is still the fallback.
|
|
33
|
+
|
|
34
|
+
**Breaking: `chip` is retired as vocabulary.** The two small-label patterns are now split by
|
|
35
|
+
behaviour, not size: **`badge`** is a _static_ label (status, count, category) and **`tag`** is an
|
|
36
|
+
_editable and/or dismissable_ one (e.g. entries in a filter list).
|
|
37
|
+
- `.chip-list` → **`.tag-list`**, and its `--*-chip-list` / `--chip-list-focus-color` tokens →
|
|
38
|
+
`--*-tag-list` / `--tag-list-focus-color`.
|
|
39
|
+
- `.chip-list__chip` and `.chip-list__chip-remove` are **removed**. A tag list is a list of tags, so
|
|
40
|
+
its items are now the existing `.tag` / `.tag__remove` — which also means they pick up tag role
|
|
41
|
+
variants. **Migration:** replace `<span class="chip-list__chip">x <button
|
|
42
|
+
class="chip-list__chip-remove">` with `<span class="tag">x <button class="tag__remove">`. Note the
|
|
43
|
+
items change appearance: `.tag` is outlined (border + neutral text) where the old chip was filled
|
|
44
|
+
with `--color-surface-muted`.
|
|
45
|
+
- The `radii.chip` primitive is **removed** from the example config; it was only ever an alias of
|
|
46
|
+
`--br-tag`. Consumers who set `--br-chip` should use `--br-tag`.
|
|
47
|
+
|
|
48
|
+
**Pattern geometry now resolves through the group alias layer.** Every grouped pattern already
|
|
49
|
+
emitted `--<prop>-<name>-group` aliases (e.g. `--br-btn-group: var(--br-control)`), but most
|
|
50
|
+
patterns bypassed them and hard-coded `var(--br-control, …)` into the rule. `btn`, `cta`, `badge`,
|
|
51
|
+
`tag`, `card` and `status` now reference the alias and restate only their deviations via
|
|
52
|
+
`overrides`, so the whole chain — `--p-btn` → `--p-btn-group` → `--p-control` → `--p-default` — is
|
|
53
|
+
live CSS custom properties, inspectable and editable in the browser. Computed values are unchanged.
|
|
54
|
+
|
|
55
|
+
Also fixed:
|
|
56
|
+
- Role variants on element patterns were emitted at specificity 0-1-1 (`button.danger`), which
|
|
57
|
+
outranked any plain class. They now emit as `:where(button, .btn).danger, .btn-danger` — both at
|
|
58
|
+
class specificity, and reachable from a non-`<button>` host.
|
|
59
|
+
- The `link` pattern declared `default_role: "brand-primary"` while hard-coding a `ui-primary` base
|
|
60
|
+
colour, so hovering shifted hue instead of intensifying. Its `default_role` is now `ui-primary`.
|
|
61
|
+
- `@getvitops/astro`'s `FormRenderer` defaulted its submit button to `class="btn btn-primary"`, a
|
|
62
|
+
class that never existed and a role that is not emitted; it now defaults to `.cta`.
|
|
63
|
+
- The Tailwind bundle is no longer assembled during `css` / `bricks` builds, where it was computed
|
|
64
|
+
and discarded (it also read every framework partial off disk).
|
|
65
|
+
|
|
66
|
+
- 44de07f: Shared toolchain version + changelogs that reach consumers.
|
|
67
|
+
- **`@getvitops/astro` now shares the toolchain version** (`core`/`generator`/`utils`/`cli`/`vite`),
|
|
68
|
+
so it moves from its own `0.4.x` line onto the group's. The number changes; the package does not —
|
|
69
|
+
install it at the same version as `@getvitops/cli`. It was already being bumped on every toolchain
|
|
70
|
+
release by its dependency updates, and it depends on core, generator, utils _and_ vite, so a
|
|
71
|
+
separate version line cost the same churn while leaving the compatible pairing implicit. The
|
|
72
|
+
lockstep is load-bearing: the generator ships a snapshot of core's CSS + web-component bundles
|
|
73
|
+
while the Astro integration copies the _installed_ core's bundles, so mismatched versions can leave
|
|
74
|
+
the CSS and the components disagreeing.
|
|
75
|
+
|
|
76
|
+
- **Every package now ships its `CHANGELOG.md` in the published tarball.** npm does not include
|
|
77
|
+
changelogs by default, so none of this history previously reached anyone who installed the
|
|
78
|
+
packages. Per-package history now reads from `node_modules/@getvitops/<pkg>/CHANGELOG.md`;
|
|
79
|
+
curated toolchain-level release notes live in the repo's root `CHANGELOG.md`.
|
|
80
|
+
|
|
81
|
+
### Patch Changes
|
|
82
|
+
|
|
83
|
+
- @getvitops/generator@0.7.0
|
|
84
|
+
- @getvitops/utils@0.7.0
|
|
85
|
+
|
|
86
|
+
## 0.6.0
|
|
87
|
+
|
|
88
|
+
### Minor Changes
|
|
89
|
+
|
|
90
|
+
- 2cc847d: Package-resident agent skill + `vitops docs`:
|
|
91
|
+
- `@getvitops/cli` now ships the `vitops-design-system` agent skill inside the package
|
|
92
|
+
(`skill/SKILL.md`). `vitops agents` no longer emits a generated skill into the repo — it
|
|
93
|
+
symlinks `.agents/skills/` and `.claude/skills/` entries to the installed package (logical
|
|
94
|
+
`node_modules/@getvitops/cli/skill` target, surviving version bumps) and writes the
|
|
95
|
+
AGENTS.md pointer block. Old generated-skill directories are migrated automatically;
|
|
96
|
+
`--docs-dir` keeps the emit-files layout.
|
|
97
|
+
- New `vitops docs [topic]` command prints reference docs to stdout, rendered live from the
|
|
98
|
+
project's `design-system.json` (topics: classes, authoring, formats, color, scales,
|
|
99
|
+
patterns, elements; `--all` concatenates).
|
|
100
|
+
- `renderSkill()` removed from `@getvitops/generator` (superseded by the packaged skill).
|
|
101
|
+
|
|
102
|
+
### Patch Changes
|
|
103
|
+
|
|
104
|
+
- Updated dependencies [2cc847d]
|
|
105
|
+
- @getvitops/generator@0.6.0
|
|
106
|
+
- @getvitops/utils@0.6.0
|
|
107
|
+
|
|
108
|
+
## 0.5.0
|
|
109
|
+
|
|
110
|
+
### Minor Changes
|
|
111
|
+
|
|
112
|
+
- Ship design-system context to downstream agents:
|
|
113
|
+
- JSON Schema descriptions: every `design-system.json` and site-config field now carries a
|
|
114
|
+
`description` (authored in the zod schemas via `desc()`), emitted into `schema.json` /
|
|
115
|
+
`site.schema.json` for editor hovers and agent consumption.
|
|
116
|
+
- New generated OKF docs: `authoring.md` (field reference walked from the JSON Schema),
|
|
117
|
+
`formats.md` (tailwind vs css vs bricks, including the TW_CLASH utilities Tailwind
|
|
118
|
+
provides natively), and `concepts/{color,scales,patterns}.md` (seeded OKLCH colour
|
|
119
|
+
system, fluid modular scales, pattern token cascade + override hooks).
|
|
120
|
+
- `vitops agents` now emits a generated `vitops-design-system` agent skill into
|
|
121
|
+
`.agents/skills/vitops-design-system/` (SKILL.md + the docs bundle as `references/`,
|
|
122
|
+
with an idempotent `.claude/skills/` symlink) and writes a compact pointer block into
|
|
123
|
+
`AGENTS.md`. Pass `--docs-dir` for the legacy docs-only layout.
|
|
124
|
+
- `TW_CLASH` and `BASE_HOOK` are exported from `@getvitops/generator`.
|
|
125
|
+
|
|
126
|
+
### Patch Changes
|
|
127
|
+
|
|
128
|
+
- Updated dependencies
|
|
129
|
+
- @getvitops/generator@0.5.0
|
|
130
|
+
- @getvitops/utils@0.5.0
|
|
131
|
+
|
|
132
|
+
## 0.4.0
|
|
133
|
+
|
|
134
|
+
### Patch Changes
|
|
135
|
+
|
|
136
|
+
- Updated dependencies [d7e6491]
|
|
137
|
+
- @getvitops/utils@0.4.0
|
|
138
|
+
- @getvitops/generator@0.4.0
|
|
139
|
+
|
|
140
|
+
## 0.3.0
|
|
141
|
+
|
|
142
|
+
### Patch Changes
|
|
143
|
+
|
|
144
|
+
- Updated dependencies
|
|
145
|
+
- @getvitops/utils@0.3.0
|
|
146
|
+
- @getvitops/generator@0.3.0
|
|
147
|
+
|
|
148
|
+
## 0.2.1
|
|
149
|
+
|
|
150
|
+
### Patch Changes
|
|
151
|
+
|
|
152
|
+
- Updated dependencies [d28aae7]
|
|
153
|
+
- @getvitops/generator@0.2.1
|
|
154
|
+
- @getvitops/utils@0.2.1
|
|
155
|
+
|
|
156
|
+
## 0.2.0
|
|
157
|
+
|
|
158
|
+
### Minor Changes
|
|
159
|
+
|
|
160
|
+
- d35515e: Add `vitops agents` — writes a managed, marker-delimited block into a consumer's `AGENTS.md`
|
|
161
|
+
(or `--out CLAUDE.md`) so AI coding agents can discover the CLI and the design-system class/element
|
|
162
|
+
vocabulary. Idempotent (re-run to update between the `<!-- vitops:start -->`/`<!-- vitops:end -->`
|
|
163
|
+
markers) and also emits the OKF docs bundle it points at (`--docs-dir`, default `.vitops/docs`).
|
|
164
|
+
|
|
165
|
+
### Patch Changes
|
|
166
|
+
|
|
167
|
+
- Updated dependencies
|
|
168
|
+
- @getvitops/generator@0.2.0
|
|
169
|
+
- @getvitops/utils@0.2.0
|
package/README.md
CHANGED
|
@@ -113,3 +113,9 @@ layout still works: `vitops agents --docs-dir .vitops/docs` writes the full docs
|
|
|
113
113
|
and points the AGENTS.md block at them (no skill link).
|
|
114
114
|
|
|
115
115
|
Powered by [`@getvitops/generator`](https://www.npmjs.com/package/@getvitops/generator).
|
|
116
|
+
|
|
117
|
+
## Changelog
|
|
118
|
+
|
|
119
|
+
This package's history: [`CHANGELOG.md`](./CHANGELOG.md) (shipped in the npm tarball, so it
|
|
120
|
+
also reads from `node_modules/@getvitops/cli/CHANGELOG.md`). `@getvitops/core`, `generator`,
|
|
121
|
+
`utils`, `cli`, `vite` and `astro` share one version and are released together.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getvitops/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "CLI for the Vitops design-system generator: generate, init, and validate a design-system.json.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
},
|
|
9
9
|
"files": [
|
|
10
10
|
"dist",
|
|
11
|
-
"skill"
|
|
11
|
+
"skill",
|
|
12
|
+
"CHANGELOG.md"
|
|
12
13
|
],
|
|
13
14
|
"type": "module",
|
|
14
15
|
"exports": {
|
|
@@ -21,8 +22,8 @@
|
|
|
21
22
|
"access": "public"
|
|
22
23
|
},
|
|
23
24
|
"dependencies": {
|
|
24
|
-
"@getvitops/generator": "0.
|
|
25
|
-
"@getvitops/utils": "0.
|
|
25
|
+
"@getvitops/generator": "0.7.0",
|
|
26
|
+
"@getvitops/utils": "0.7.0"
|
|
26
27
|
},
|
|
27
28
|
"devDependencies": {
|
|
28
29
|
"vitest": "^4.1.9"
|