@birdapi/velinstyle 0.9.0 → 1.1.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/README.de.md +15 -11
- package/README.md +15 -11
- package/cli/cli-manifest.json +1 -1
- package/cli/docgen/extract-a11y.js +4 -2
- package/cli/index.js +4 -2
- package/components/index.js +2 -0
- package/components/runtime/component-loaders.js +2 -0
- package/components/velin-data-table.js +361 -0
- package/components/velin-form-summary.js +348 -0
- package/core/a11y/component-contracts.json +18 -1
- package/core/highlight/languages/go.js +28 -0
- package/core/highlight/languages/python.js +29 -0
- package/core/highlight/languages/rust.js +32 -0
- package/core/highlight/languages/yaml.js +23 -0
- package/core/highlight/registry.js +13 -2
- package/core/meta/build.js +1 -1
- package/core/search/worker-client.js +2 -3
- package/dist/chunks/attributes-353XDOAX.js +391 -0
- package/dist/chunks/attributes-ADOKLKA7.js +391 -0
- package/dist/chunks/chunk-ERF5YVP4.js +253 -0
- package/dist/chunks/chunk-IEHKRARD.js +109 -0
- package/dist/chunks/chunk-QVHYL3R4.js +111 -0
- package/dist/chunks/go-HZ6XTFCK.js +31 -0
- package/dist/chunks/highlight-IBDX4XWS.js +37 -0
- package/dist/chunks/python-BMPKDKNO.js +32 -0
- package/dist/chunks/runtime-entry.js +1 -1
- package/dist/chunks/rust-2BWKI2MN.js +35 -0
- package/dist/chunks/velin-code-block-ITCLIC6T.js +132 -0
- package/dist/chunks/velin-data-table-KK7IDGTP.js +302 -0
- package/dist/chunks/velin-form-summary-XRQ7COQH.js +273 -0
- package/dist/chunks/velin-lightbox-NXA3U2FM.js +149 -0
- package/dist/chunks/velin-search-FDHEMCSO.js +557 -0
- package/dist/chunks/worker-client-MPT7PNQ4.js +47 -0
- package/dist/chunks/yaml-O67LEQYT.js +26 -0
- package/dist/llms.txt +2 -2
- package/dist/search-index.json +28 -2
- package/dist/velin-agent.json +31 -5
- package/dist/velinstyle-components.iife.js +745 -7
- package/dist/velinstyle-components.js +746 -5
- package/dist/velinstyle-components.min.js +85 -85
- package/dist/velinstyle.css +141 -19
- package/dist/velinstyle.d.ts +2 -0
- package/dist/velinstyle.min.css +1 -1
- package/package.json +8 -2
- package/src/base/wc-placeholder.css +7 -0
- package/src/components/data-table.css +93 -0
- package/src/components/form-validation.css +40 -0
- package/src/velinstyle.css +1 -0
- package/dist/llms.test.txt +0 -40
- package/dist/search-index.test.json +0 -1773
- package/dist/velin-agent.test.json +0 -684
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@birdapi/velinstyle",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -50,8 +50,10 @@
|
|
|
50
50
|
"icons/velin-icons.svg"
|
|
51
51
|
],
|
|
52
52
|
"scripts": {
|
|
53
|
-
"build": "npm run build:css:min && npm run build:css:dev && npm run build:js:min && npm run build:js:dev && npm run build:js:iife && npm run build:js:chunks && npm run build:loaders && npm run build:types && npm run build:themes && npm run build:icons",
|
|
53
|
+
"build": "npm run build:css:min && npm run build:css:dev && npm run build:js:min && npm run build:js:dev && npm run build:js:iife && npm run build:js:chunks && npm run build:loaders && npm run build:react:src && npm run build:types && npm run build:themes && npm run build:icons",
|
|
54
54
|
"build:loaders": "node scripts/generate-component-loaders.mjs",
|
|
55
|
+
"build:react:src": "node scripts/generate-react-wrappers.mjs",
|
|
56
|
+
"build:react": "npm run build:react:src && npm --prefix packages/react run build",
|
|
55
57
|
"build:types": "node scripts/generate-types.mjs",
|
|
56
58
|
"build:js:chunks": "esbuild components/runtime-entry.js --bundle --splitting --format=esm --outdir=dist/chunks --chunk-names=[name]-[hash]",
|
|
57
59
|
"build:css:min": "lightningcss --bundle --minify src/velinstyle.css -o dist/velinstyle.min.css",
|
|
@@ -80,6 +82,10 @@
|
|
|
80
82
|
"search:index": "node cli/index.js search index",
|
|
81
83
|
"meta:build": "node cli/index.js meta",
|
|
82
84
|
"ci:checks": "node scripts/ci-checks.mjs",
|
|
85
|
+
"release:check": "node scripts/check-release-sync.mjs",
|
|
86
|
+
"release:sync": "node scripts/check-release-sync.mjs --fix",
|
|
87
|
+
"prepublishOnly": "npm run build && npm run search:index && npm run meta:build && npm run release:check -- --skip-site",
|
|
88
|
+
"pack:check": "npm pack --dry-run",
|
|
83
89
|
"docs:prepare": "npm run build && node scripts/prepare-docs-pages.js",
|
|
84
90
|
"docs:patch-nav": "node scripts/patch-docs-nav.js",
|
|
85
91
|
"docs:sync-site": "npm run build && npm run docs:generate && python ../velinstyle-site/tools/sync-framework-0.9.0.py && python ../velinstyle-site/tools/patch-site-a11y-aaa.py && python ../velinstyle-site/tools/patch-docs-090-final.py",
|
|
@@ -99,4 +99,11 @@
|
|
|
99
99
|
opacity: 0;
|
|
100
100
|
visibility: hidden;
|
|
101
101
|
}
|
|
102
|
+
|
|
103
|
+
/* The table renders before upgrade, so only reserve the block for enhancement. */
|
|
104
|
+
velin-data-table:not(:defined),
|
|
105
|
+
velin-form-summary:not(:defined) {
|
|
106
|
+
display: block;
|
|
107
|
+
contain: layout style;
|
|
108
|
+
}
|
|
102
109
|
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.velin-data-table {
|
|
3
|
+
display: block;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/*
|
|
7
|
+
* Wins over the stacked `display: block` rows in table.css so filtering and
|
|
8
|
+
* pagination keep hidden rows out of the layout and the a11y tree.
|
|
9
|
+
*/
|
|
10
|
+
.velin-data-table tr[hidden] {
|
|
11
|
+
display: none;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.velin-data-table__th {
|
|
15
|
+
padding: 0;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.velin-data-table__sort {
|
|
19
|
+
display: flex;
|
|
20
|
+
align-items: center;
|
|
21
|
+
gap: var(--velin-space-2);
|
|
22
|
+
inline-size: 100%;
|
|
23
|
+
min-block-size: 2.75rem;
|
|
24
|
+
padding: var(--velin-space-3) var(--velin-space-4);
|
|
25
|
+
border: none;
|
|
26
|
+
background: none;
|
|
27
|
+
font: inherit;
|
|
28
|
+
font-weight: var(--velin-weight-semibold);
|
|
29
|
+
color: inherit;
|
|
30
|
+
text-align: inherit;
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.velin-data-table__sort:hover {
|
|
35
|
+
background-color: var(--velin-color-surface-dim);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.velin-data-table__sort-icon {
|
|
39
|
+
flex-shrink: 0;
|
|
40
|
+
inline-size: 0.75rem;
|
|
41
|
+
color: var(--velin-color-text-muted);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* Direction is announced via aria-sort; the glyph is decorative. */
|
|
45
|
+
.velin-data-table__sort-icon::after {
|
|
46
|
+
content: "\2195";
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
[aria-sort="ascending"] .velin-data-table__sort-icon::after {
|
|
50
|
+
content: "\2191";
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[aria-sort="descending"] .velin-data-table__sort-icon::after {
|
|
54
|
+
content: "\2193";
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
[aria-sort="ascending"] .velin-data-table__sort-icon,
|
|
58
|
+
[aria-sort="descending"] .velin-data-table__sort-icon {
|
|
59
|
+
color: var(--velin-color-primary);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.velin-data-table__empty td {
|
|
63
|
+
padding-block: var(--velin-space-6);
|
|
64
|
+
color: var(--velin-color-text-muted);
|
|
65
|
+
text-align: center;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.velin-data-table__pagination {
|
|
69
|
+
display: flex;
|
|
70
|
+
align-items: center;
|
|
71
|
+
justify-content: space-between;
|
|
72
|
+
gap: var(--velin-space-3);
|
|
73
|
+
flex-wrap: wrap;
|
|
74
|
+
margin-block-start: var(--velin-space-4);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.velin-data-table__page-status {
|
|
78
|
+
margin: 0;
|
|
79
|
+
color: var(--velin-color-text-muted);
|
|
80
|
+
font-size: var(--velin-text-sm);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
@media (forced-colors: active) {
|
|
84
|
+
.velin-data-table__sort:hover {
|
|
85
|
+
background-color: Highlight;
|
|
86
|
+
color: HighlightText;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.velin-data-table__sort-icon {
|
|
90
|
+
color: CanvasText;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -58,6 +58,46 @@
|
|
|
58
58
|
white-space: normal;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
/* Error summary (velin-form-summary) */
|
|
62
|
+
.velin-form-summary {
|
|
63
|
+
display: block;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.velin-form-summary[hidden] {
|
|
67
|
+
display: none;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.velin-form-summary__panel {
|
|
71
|
+
margin-block-end: var(--velin-space-4);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.velin-form-summary__heading {
|
|
75
|
+
margin: 0 0 var(--velin-space-2);
|
|
76
|
+
font-weight: var(--velin-weight-semibold);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.velin-form-summary__list {
|
|
80
|
+
margin: 0;
|
|
81
|
+
padding-inline-start: var(--velin-space-5);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.velin-form-summary__list li + li {
|
|
85
|
+
margin-block-start: var(--velin-space-1);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/* inline-block + min-block-size keeps the target size at 24px (WCAG 2.5.8). */
|
|
89
|
+
.velin-form-summary__list a {
|
|
90
|
+
display: inline-block;
|
|
91
|
+
min-block-size: 1.5rem;
|
|
92
|
+
padding-block: var(--velin-space-1);
|
|
93
|
+
color: inherit;
|
|
94
|
+
text-decoration: underline;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.velin-field-error:empty {
|
|
98
|
+
display: none;
|
|
99
|
+
}
|
|
100
|
+
|
|
61
101
|
@supports selector(:user-invalid) {
|
|
62
102
|
.velin-form--validated .velin-input:user-valid,
|
|
63
103
|
.velin-form--validated .velin-select:user-valid,
|
package/src/velinstyle.css
CHANGED
package/dist/llms.test.txt
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
# VelinStyle 0.9.0
|
|
2
|
-
|
|
3
|
-
> VelinStyle is the WCAG 2.2 AAA CSS framework with native JavaScript runtime and Web Components.
|
|
4
|
-
> Full machine context: https://velinstyle.info/dist/velin-agent.json
|
|
5
|
-
> MIME: application/vnd.velinstyle.meta+json
|
|
6
|
-
|
|
7
|
-
## Framework
|
|
8
|
-
- npm: @birdapi/velinstyle
|
|
9
|
-
- VelinStyle is the WCAG 2.2 AAA CSS framework with native JavaScript runtime and Web Components.
|
|
10
|
-
- Components: 36 canonical Web Components (`velin-*`); 38 lazy-loader entries
|
|
11
|
-
- HTML attributes: 27 `velin-*` bridges
|
|
12
|
-
- CLI: velinstyle (scan, scaffold, docs generate, search index, meta)
|
|
13
|
-
|
|
14
|
-
## Conventions
|
|
15
|
-
- Positioning: VelinStyle is the WCAG 2.2 AAA CSS framework with native JavaScript runtime and Web Components — not a JS-only library or a utility-only CSS kit.
|
|
16
|
-
- Use only velin-* utility classes and documented Web Components.
|
|
17
|
-
- Prefer data-velin-theme on <html> for theme switching.
|
|
18
|
-
- Run velinstyle scan on generated HTML before shipping.
|
|
19
|
-
- Do not put secrets, API keys, or raw emails in velin-meta or page meta.
|
|
20
|
-
- Resolve doc links against docs root (/docs/), not the current page folder.
|
|
21
|
-
|
|
22
|
-
## Key guides
|
|
23
|
-
- [Velin-Meta](https://velinstyle.info/docs/guides/velin-meta.html)
|
|
24
|
-
- [VelinSearch](https://velinstyle.info/docs/guides/velin-search.html)
|
|
25
|
-
- [Syntax highlighting](https://velinstyle.info/docs/guides/syntax-highlight.html)
|
|
26
|
-
- [Prompt scaffolding](https://velinstyle.info/docs/guides/prompt-scaffolding.html)
|
|
27
|
-
- [API reference (generated)](https://velinstyle.info/docs/guides/api-reference.html)
|
|
28
|
-
|
|
29
|
-
## Generated reference
|
|
30
|
-
- [Components index](https://velinstyle.info/docs/generated/components/)
|
|
31
|
-
- [Tokens](https://velinstyle.info/docs/generated/tokens/)
|
|
32
|
-
- [Utilities](https://velinstyle.info/docs/generated/utilities/)
|
|
33
|
-
- [CLI commands](https://velinstyle.info/docs/generated/cli/commands.md)
|
|
34
|
-
|
|
35
|
-
## Usage for agents
|
|
36
|
-
```
|
|
37
|
-
npx velinstyle meta
|
|
38
|
-
npx velinstyle docs generate
|
|
39
|
-
npx velinstyle search index
|
|
40
|
-
```
|