@ design- parity/ 检查
决定性 无障碍+国际化 光谱检查 a
(DesignReference, CandidateRender) 双人 这些是高价值的 被怀疑的
裁决的结果(见
文件/文件 原则2:目标
细节开发者通常会错过,设计工具不会强制执行.
每张支票都是一张 纯函数 表示承诺的阈值和 被俘的语义—— 没有网络呼叫和运行时间的模型 (原则1). 同样的公关总得分.
检查
| 函数 | 仁爱 | 它声称的 |
|---|---|---|
checkContrast | contrast | WCAG 1.4.3.1.4.6 每个主题的文本对比;失败 AA − error,满足 AA 但不是 AAA ~ info。 。 。 . |
checkTouchTargets | a11y | 交互式目标为:-48dp(物质3);低于24dp的WCAG 2.5.8层 error。 。 。 . |
checkSemantics | a11y | 互动/图像节点曝光可访问标签/内容描述. |
checkTextExpansion | i18n | Pseudolocale 文本增长与可用宽度 = 切变风险(warn) (中文(简体) ). |
checkLocaleFormatting | i18n | 硬码地币特有货币/日期/标签中的数字字元. |
checkRtlMirroring | i18n | 在 RTL; 从右到左文本下必须映射的方向图标 . |
checkHardcodedStrings | i18n | 未按键的用户介面文字选入 ——一个渲染无法证明一个字符串来自资源). |
runChecks(reference, candidate, config?) 运行整个套房并返回
调查结果 a11y 首先是i18n,然后是i18n各组按重度排序.
runA11yChecks 编号 : runI18nChecks 运行一组.
对比失败保留错误, 除非引用语义树包含
相同的前地/后地对失败相同的阈值。 没错
以设计为主导的匹配被报告为警告 sharedWithReference: true页:1
无障碍债务仍然显而易见,而平等并不要求代码有差异
从它的源。 缺失或无法估计的参考文献从不抑制
候选人失败.
配置
所有政策都是通过下列途径承诺和压倒一切的: ChecksConfig (连续级别,
触控-目标最小,glyph-advance估计,主题,硬码字符串选择入.
默认存在 src/thresholds.ts 和编码 WCAG 2.2
- 材料 3 + 标准伪地取向.
背书会让这些把手 design-parity.checks.json ——文件
@design-parity/baseline 写在靴子上。 读起来是决定性的
运行时, 它的调制阈值实际到达引擎( 原则 1) :
loadChecksConfig(path)读取、解析和设计验证一个配置文件; 丢出一个可读错误, 如果它缺失, 而不是 JSON, 或 schema- 无效 .loadChecksConfigOrDefault(path)- 一样,但是 缺少 文件解析为 强制的默认,所以在稳定状态下,没有设置的回放仍然有效。 A 类 目前但无效的文件仍然丢出.validateChecksConfig(value)—— 验证一个已分解对象相对于 草案07 计划。 。 。 .
配置形状镜像 ChecksConfig 准确的,所以靴子输出验证
并装入没有翻译。 见
examples/design-parity.checks.json。 。 。 .
验证 CLI
design-parity-validate-checks [path ...] 验证一个或多个配置文件
在第一个无效的装置上不设零,所以可以打开
CI 默认为 design-parity.checks.json 在阴道.
node packages/checks/dist/cli/validate-checks.js design-parity.checks.json
查找类型
此软件包引入了专用 a11y 财务报告和审定财务报表 i18n FindingKind单位
@design-parity/core 所以判决可以和他们一起做. contrast
保持自己的类型( 它带有一个数字比, 并且是标题 a11y)
寻找). 焦点顺序和状态通知空白 没有 声称:
SemanticNode 所以加上这些支票就是合同变更
在核心——跟踪而不是伪造.
开发
npm run build --workspace @design-parity/checks
npm test