agentcss 0.11.16 → 0.13.1
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/01-tokens/README.md +54 -3
- package/01-tokens/market.css +48 -0
- package/01-tokens/tokens.css +66 -0
- package/02-primitives/delta/README.md +92 -0
- package/02-primitives/delta/delta.css +113 -0
- package/02-primitives/delta/demo.html +162 -0
- package/02-primitives/metric/README.md +93 -0
- package/02-primitives/metric/demo.html +176 -0
- package/02-primitives/metric/metric.css +157 -0
- package/03-patterns/overlay/overlay.js +10 -4
- package/04-recipes/table/README.md +45 -7
- package/04-recipes/table/demo.html +92 -5
- package/04-recipes/tierA-tokens.css +12 -6
- package/API.md +15 -0
- package/CHANGELOG.md +295 -0
- package/CONTRIBUTING.md +54 -2
- package/README.zh-CN.md +8 -6
- package/START-HERE.md +3 -1
- package/ai/START-HERE.md +1 -1
- package/ai/cli.js +149 -0
- package/ai/components.json +96 -5
- package/ai/components.meta.json +8 -0
- package/ai/tokens.audience.json +3 -2
- package/ai/tokens.json +21 -2
- package/ai/tokens.tree.json +20 -2
- package/dist/01-tokens/market.css +1 -0
- package/dist/01-tokens/tokens.css +1 -1
- package/dist/02-primitives/delta/delta.css +1 -0
- package/dist/02-primitives/metric/metric.css +1 -0
- package/dist/04-recipes/tierA-tokens.css +1 -1
- package/dist/COSTS.md +35 -33
- package/docs/A11Y-MANUAL-PROTOCOL.md +8 -0
- package/docs/ACCESSIBILITY.md +5 -5
- package/docs/CONVENTIONS.md +36 -2
- package/index.html +4 -2
- package/package.json +1 -1
package/docs/ACCESSIBILITY.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
| 项目 | 值 |
|
|
7
7
|
|---|---|
|
|
8
|
-
| 声明适用版本 | agentcss `0.
|
|
8
|
+
| 声明适用版本 | agentcss `0.13.1` |
|
|
9
9
|
| 声明日期 | 2026-10-29 |
|
|
10
10
|
| 复核节奏 | 每次发版前重跑(`npm run gate` 内含全部证据) |
|
|
11
11
|
| 范围 | 本库交付的 CSS / JS、全部 `demo.html`(组件页 + 图表页 + 组合页)、以及文档站生成的页面 |
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
| 3.3.2 | 标签或说明 | ✅ | 必填项有可见标记 + `required` |
|
|
68
68
|
| 3.3.7 | 冗余输入(2.2 A) | — | 由业务表单决定,库不承载 |
|
|
69
69
|
| 3.3.8 | 可访问的认证(2.2 AA) | — | 库不含登录流程 |
|
|
70
|
-
| 4.1.2 | 名称、角色、值 | ✅ | `a11y-ax.js`:**全部
|
|
70
|
+
| 4.1.2 | 名称、角色、值 | ✅ | `a11y-ax.js`:**全部 40 个 demo 页**的可访问性树逐节点判,每个可交互控件有非空名称;朗读序列逐页存快照防回归 |
|
|
71
71
|
| 4.1.3 | 状态消息 | ◐ | toast / 表单错误用 `role="status"` / `alert`;**未**在真实读屏里验证播报时机 |
|
|
72
72
|
|
|
73
73
|
**统计:✅ 27 条 · ◐ 7 条 · ✗ 0 条 · — 12 条。**
|
|
@@ -80,11 +80,11 @@
|
|
|
80
80
|
|
|
81
81
|
| 手段 | 覆盖 | 最近结果 |
|
|
82
82
|
|---|---|---|
|
|
83
|
-
| `axe-core`(`a11y-scan.js`) |
|
|
83
|
+
| `axe-core`(`a11y-scan.js`) | 39 页(37 组件 demo + 2 个非组件页) | **0 类违规**,991 条规则通过 |
|
|
84
84
|
| 反向控制(注入 5 类典型违规) | 证明上一条不是"没查" | 5 类全部抓到 |
|
|
85
|
-
| `a11y-ax.js` 可访问性树 | **全部 `demo.html`(现
|
|
85
|
+
| `a11y-ax.js` 可访问性树 | **全部 `demo.html`(现 40 个)**;清单与磁盘不一致即红 | 0 个无名控件;40 份朗读序列快照在 `10-review/a11y-tree/` |
|
|
86
86
|
| `contrast.py` / `dark-contrast.js` | 亮 / 暗两套,逐对实算 | 正文 ≥ 4.5:1 |
|
|
87
|
-
| `zoom-reflow.js` |
|
|
87
|
+
| `zoom-reflow.js` | 40 页 × 3 条 AA 硬项 | 320px 不横滚 · 200% 不裁字 · 焦点不被遮挡 |
|
|
88
88
|
| `focus-ring-check` / `focus-return-check` / `keyboard-nav` | 焦点可见、焦点归还、键盘路径 | 全绿 |
|
|
89
89
|
|
|
90
90
|
### 人工(**尚未执行** —— 这是本声明最大的空白)
|
package/docs/CONVENTIONS.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
本文是它们的**唯一说明书** —— 规则写在这里,判据在仓库里,两边一一对应。
|
|
6
6
|
|
|
7
7
|
读法:如果你只想知道「我该写哪个变量」,看第一节和第二节;
|
|
8
|
-
|
|
8
|
+
如果你想改这套东西,看第十一节,那里列了每条规则由什么挡住。
|
|
9
9
|
|
|
10
10
|
## 一 · 令牌分三层,你只用中间层
|
|
11
11
|
|
|
@@ -172,7 +172,37 @@
|
|
|
172
172
|
- 不要用更深的选择器去压(`.page .btn.btn--primary`)—— 那是把特异性当版本管理,
|
|
173
173
|
下次改版必然打架。
|
|
174
174
|
|
|
175
|
-
## 十 ·
|
|
175
|
+
## 十 · 涨跌:语义在令牌层,口径是全局的
|
|
176
|
+
|
|
177
|
+
红绿有两个完全不同的来处,**不许共用一个名字**:
|
|
178
|
+
|
|
179
|
+
| 令牌 | 语义 | 例子 |
|
|
180
|
+
|---|---|---|
|
|
181
|
+
| `--danger` / `--success` | **评价**:错了 / 成了 | 审计失败、已停牌 |
|
|
182
|
+
| `--dir-up` / `--dir-down` | **事实**:涨了 / 跌了 | 同比 +12.4% |
|
|
183
|
+
|
|
184
|
+
「研发费用同比 +38%」是涨,但那是坏消息 —— 用 `--danger` 渲染它,
|
|
185
|
+
颜色说"错了"、语义说"涨了",读者收到矛盾信号。
|
|
186
|
+
|
|
187
|
+
三条规则:
|
|
188
|
+
|
|
189
|
+
- **组件只写 `color: var(--dir-up)`**,不许出现 `[data-market]` 分支。
|
|
190
|
+
口径切换改的是**令牌指向**,跟暗色同构(换底层值,语义名不动)。
|
|
191
|
+
- **口径是全局约定**:`data-market="intl"` 加在任意祖先上,整块对调。
|
|
192
|
+
交换规则在选配文件 `01-tokens/market.css`,**不在 `tokens.css`** ——
|
|
193
|
+
条件规则进核心令牌会让六个靠词法读 CSS 的工具静默读错。
|
|
194
|
+
- **方向必须有非颜色的载体**:`delta` 用 `+` / `−`(U+2212)符号,
|
|
195
|
+
且符号必须真的进可访问性树(CSS `::before` 生成的字符不在元素 name 里,
|
|
196
|
+
但会作为独立 StaticText 出现 —— 换空串/背景图/`visibility:hidden` 就会没)。
|
|
197
|
+
- **容器不许再加一套方向类**。表格里只有会计正负(`num--pos` / `num--neg`),
|
|
198
|
+
市场涨跌一律嵌 `<span class="delta delta--up">`
|
|
199
|
+
—— 否则 `table` 会有四组颜色类,调用方每列都要记"这列用哪组"。
|
|
200
|
+
表格只管对齐(`td.num`),不管判色。
|
|
201
|
+
- **零值不带符号**:符号必须跟**打印出来的数字**同号。
|
|
202
|
+
`0` 与「四舍五入到 0」(如精度 1 下的 `0.0004`)都不加 `+` / `−`
|
|
203
|
+
—— 「+0.0%」等于把持平念成上涨。会计列与市场列是同一条规则。
|
|
204
|
+
|
|
205
|
+
## 十一 · 每条规则由什么挡住
|
|
176
206
|
|
|
177
207
|
规则只有落到判据上才会被遵守。对应关系如下(文件都在 `05-audit/`):
|
|
178
208
|
|
|
@@ -189,6 +219,10 @@
|
|
|
189
219
|
| `@layer` 计数与 `!important` 分类 | `cascade-layer-gate.py` |
|
|
190
220
|
| 触控目标 44px | `a11y.py`(静态) + 行为脚本(运行时) |
|
|
191
221
|
| 页面骨架只有一份(改令牌能牵动全部页面) | `skeleton-lever-check.js` |
|
|
222
|
+
| 涨跌方向色对、口径可切、符号进可访问性树 | `delta-check.js` |
|
|
223
|
+
| 表格里的方向语义(涨跌嵌 `delta`、零值不带符号、口径只翻市场列) | `table-check.js` ⑫⑬⑭ |
|
|
224
|
+
| 指标缺数是显式状态、数字等宽对齐 | `metric-check.js` |
|
|
225
|
+
| 文档里的数字与实际一致(组件数/门禁数/精简档令牌数) | `doc-facts-gate.py` |
|
|
192
226
|
|
|
193
227
|
想加一条新规则?先在门禁里加判据、确认它会红,再写进本文 ——
|
|
194
228
|
**顺序反了就会得到一条"写在文档里、没人执行"的规则。**
|
package/index.html
CHANGED
|
@@ -26,7 +26,7 @@ li a:active { background: var(--surface-sunken); }
|
|
|
26
26
|
<main id="main" class="wrap">
|
|
27
27
|
<h1>agentcss · 演示</h1>
|
|
28
28
|
<p class="lede">
|
|
29
|
-
|
|
29
|
+
37 个组件,每一页都能直接打开看。
|
|
30
30
|
<strong>手机上也一样</strong> —— 布局、触控尺寸、暗色都是按移动端调的。
|
|
31
31
|
</p>
|
|
32
32
|
|
|
@@ -39,7 +39,9 @@ li a:active { background: var(--surface-sunken); }
|
|
|
39
39
|
<li><a href="02-primitives/choice/demo.html">checkbox / radio / select</a><span class="r__p">单选/多选/原生 select 外观的统一控件</span></li>
|
|
40
40
|
<li><a href="02-primitives/combobox/demo.html">combobox · 组合框 / 标签输入</a><span class="r__p">可搜索 + 可多选标签的输入控件</span></li>
|
|
41
41
|
<li><a href="02-primitives/date-range/demo.html">date-range · 日期区间</a><span class="r__p">日期区间选择,含预设快捷范围</span></li>
|
|
42
|
+
<li><a href="02-primitives/delta/demo.html">delta · 变化量</a><span class="r__p">变化量:涨跌方向 + 符号 + 颜色。只描述往哪边变,不判断好坏(等于好恶是 badge 的事,会计正负是 ta</span></li>
|
|
42
43
|
<li><a href="02-primitives/input/demo.html">input / field</a><span class="r__p">文本输入及其标签/帮助/错误三件套</span></li>
|
|
44
|
+
<li><a href="02-primitives/metric/demo.html">metric · 指标块</a><span class="r__p">指标块:一个标签 + 一个值 + 一句上下文。数字等宽、单位分离、缺数是一等状态</span></li>
|
|
43
45
|
<li><a href="02-primitives/popover/demo.html">popover · 气泡卡片</a><span class="r__p">锚定到触发元素的浮层</span></li>
|
|
44
46
|
<li><a href="02-primitives/progress/demo.html">progress · 进度条</a><span class="r__p">进度条与进度环</span></li>
|
|
45
47
|
<li><a href="02-primitives/select/demo.html">select · 自建下拉选择</a><span class="r__p">自定义下拉选择(非原生)</span></li>
|
|
@@ -92,7 +94,7 @@ li a:active { background: var(--surface-sunken); }
|
|
|
92
94
|
</p>
|
|
93
95
|
</main>
|
|
94
96
|
<footer class="wrap">
|
|
95
|
-
<p class="note">0.
|
|
97
|
+
<p class="note">0.13.1 · 零第三方运行时依赖</p>
|
|
96
98
|
</footer>
|
|
97
99
|
</body>
|
|
98
100
|
</html>
|