html -验证W3C数据
该项目包含从W3C规范中抓取的数据:
- wai - aria
这个包不是供公众使用的,任何版本之间都可能发生破坏性的更改。 使用风险自负!
wai - aria
该包提供了从W3C规范中抓取的关于WAI-ARIA角色、属性和状态的机器可读数据。
使用
您可以通过两种方式访问ARIA数据。
使用工厂函数获取特定版本的ARIA数据:
import { getAriaData } from "@html-validate/w3c-data/aria";
// Get data for a specific version
const { getRoleData } = getAriaData("latest"); // "latest", "1.3" or "1.2"
// Use the data
const alert = getRoleData("alert");
console.log(alert?.category); // "live"
或者直接导入特定的ARIA版本以获得更好的摇树效果:
// Import latest ARIA data
import { getRoleData } from "@html-validate/w3c-data/aria-latest";
// Or import specific versions
import { getRoleData } from "@html-validate/w3c-data/aria-1.3";
可用的版本
"latest"- W3C最新编辑稿(https://w3c.github.io/aria/)"1.3"- wai-aria 1.3 (https://www.w3.org/TR/wai-aria-1.3/)"1.2"- wai-aria 1.2 (https://www.w3.org/TR/wai-aria-1.2/)
数据结构
这个 getRoleData() Helper返回 NormalizedRole 对象:
const alert = getRoleData("alert");
console.log(alert?.category); // "live"
console.log(alert?.superclasses); // ["section"]
console.log(alert?.properties["aria-atomic"]); // { inherited: true, required: false, deprecated: false, default: "true" }
每个角色包含:
role-角色名称category-角色类别(abstract,widget,structure,landmark,live,或者window)superclasses-该角色继承的角色列表subclasses-从该角色继承的角色列表properties-此角色可用的ARIA属性states—此角色可用的ARIA状态name-可访问的名称要求fromAuthor—名称可以从作者开始设置fromContents—名称可以根据内容设置prohibited—“名称”不能设置required-填写姓名
requiredParent-所需父角色列表allowedChildren-允许的子角色列表childrenPresentational- DOM后代是否具有表示性
中的每个属性和状态 properties 和 states 对象包含:
inherited(boolean) -属性是否继承自超类角色required(boolean) -此角色是否需要该属性deprecated(boolean) -是否弃用该属性default(string | undefined) -属性的默认值,如果有的话
注意:所有属性和状态键都包含 aria- 前缀(例如, "aria-atomic", "aria-expanded")。
辅助函数和类型
该包提供了用于ARIA角色的辅助函数和类型:
isValidRole(role: string): role is AriaRole:检查字符串是否为有效的ARIA角色名。getRoleData(role: AriaRole): NormalizedRole获取给定角色的ARIA角色元数据。getRoleData(role: string): NormalizedRole | null获取给定角色的ARIA角色元数据。
版本控制
这个包裹可以 不 遵循语义版本控制,而不是最后一次抓取的日期。 中断更改可能发生在任何更改之间。