@aurodesignsystem/auro-library

中文文档
5.14.4发布于 2026/10/09Apache-2.0CommonJS构建来源已验证近 30 天下载 2.9万

该存放处拥有Auro设计系统各存放处共用的脚本、公用事业和工作流程.

中文使用文档
文档目录10 节
  1. 脚本
  2. 发布 Surge Demo
  3. 猛烈降级
  4. 依赖性标签版本
  5. 同步所有模板
  6. 如何运行 syncAllTemplates.mjs 脚本
  7. 准备构建 api.md
  8. 示例调用
  9. 向 CEM 字段插件折旧
  10. 使用量

奥罗图书馆

该存放处拥有Auro设计系统各存放处共用的脚本、公用事业和工作流程.

脚本

发布 Surge Demo

这是一个使用 GitHub 动作生成突起演示的自动化工作流程 。 在对公关作任何修改时,将会在公关上添加或更新一个与演示内容相类似的链接:

Surge demo deployment succeeded! 🚀🚀🚀

[Auro Web Component Generator](https://surge.sh/)

此工作流程使用文件 ./scripts/config/useBundles.js 以更新演示 HTML 文件,以使用组件的捆绑版本,从而能够在突起时静态支持它们.

要将这个功能添加到 auro 组件中, 您只需要将以下片段添加到 publishDemo.yml 文档中 ./.github/workflows 目录.

name: Deploy Demo

on:
  pull_request:
    branches: [ main ]


jobs:
  call-publish-demo-workflow:
    uses: AlaskaAirlines/auro-library/.github/workflows/publishDemo.yml@main
    secrets:
      SURGE_TOKEN: ${{secrets.AURO_SURGE_TOKEN}}

说明: 这只会在位于“阿拉斯加空行”组织的组件中正常工作,因为依赖于整个 Org 行动的秘密 AURO_SURGE_TOKEN。 。 。 .

之后,您将想要确保更新您想要的脚本标签, 在您的捆绑中替换 ./demo/*.html 带有 data-demo-scripts="true" 属性.

--    <script type="module" src="../index.js"></script>
++    <script type="module" src="../index.js" data-demo-script="true"></script>

注意: 如果您未能做到这一点, 组件将无法在您的演示中注册 .


猛烈降级

这个工作流程可以自动删除并清除任何活动超过2+月的突起演示. 理论上的突起可以让我们有无限数量的活页,但是通过清理未使用和被打磨的演示,我们在未来可以更组织地保存我们的突起账户.

说明: 这个工作流程在每月第一个月的月工作上执行.

为了清理我们所有的激增项目 此 GitHub 动作 用于处理删除逻辑.


依赖性标签版本

这是用于生成依赖组件标记命名自定义字符串的两部分工具. 这对防止 版本冲突 当一个给定的Auro组件的多版本可能被装入一页时.

说明: 下面所有代码样本中使用的示例配置假设 auro-dropdown 是依赖部分。 根据需要替换示例代码中的任何Auro组件.

第1部分:建筑

配置
  1. 创建新文件 ./scripts/version.js 内容如下:
const versionWriter = require("./versionWriter"); // need to update this with the right path when used from node_modules

versionWriter.writeDepVersionFile('@aurodesignsystem/auro-dropdown'); // duplicate this line for each Auro dependency.
  1. 在组件中添加以下脚本 package.json 文件 :
"build:version": "node scripts/version.js"
  1. 这个 build:version 脚本在 package.json 应作为第一个步骤添加 build 剧本.
"build": "npm-run-all build:version ... etc.",
执行

一旦配置完成, 执行 npm run build。必须在此之前完成一次 npm run dev 在本地开发时。 当Auro依赖性被初始安装或更新到新版本时 npm run build:version 或一个完整 npm run build 必须执行.

执行时 build:version中定义的 Auro 依赖 ./scripts/version.js 文件,将创建一个包含已安装的依赖性版本的新JS文件.

例如,遵循这些步骤:

  1. 运行 npm i @aurodesignsystem/[email protected]
  2. 添加以下内容: ./scripts/version.js 脚本文件 :
versionWriter.writeDepVersionFile('@aurodesignsystem/auro-dropdown');
  1. 运行 npm run build

将导致:

  • 创建新文件 : ./src/dropdownVersion.js
  • 文件内容将导出已安装组件的版本 。 在这种情况下: export default '1.0.0'

第二部分:运行时间

配置

在主要组成部分JS档案中 ./src 目录添加以下内容:

import { AuroDependencyVersioning } from "../scripts/dependencyTagVersioning.mjs";
import { AuroDropdown } from '@aurodesignsystem/auro-dropdown/src/auro-dropdown.js';
import dropdownVersion from './dropdownVersion';

在组件构造器中添加以下内容:

const versioning = new AuroDependencyVersioning();
this.dropdownTag = versioning.generateTag('auro-dropdown', dropdownVersion, AuroDropdown);

在组件属性中增加以下内容:

/**
 * @private
 */
dropdownTag: { type: Object }
使用量

新的动态命名版本 auro-dropdown 可以在您的组件模板中使用如下:

render() {
  return html`
    <div>
      <${this.dropdownTag}></${this.dropdownTag}>
    </div>
  `;
}

当组件在运行期间完成时,DOM现在显示如下:

<div>
  <auro-dropdown_1_0_0></auro-dropdown_1_0_0>
</div>

注意:标签名所附加的数字将匹配所安装的依赖的版本.

使用联署材料访问动态命名元素

动态组件在 JS 查询选择器中使用以下字符串可访问:

this.dropdownTag._$litStatic$
firstUpdated() {
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
};

同步所有模板

如何运行 syncAllTemplates.mjs 脚本

要运行 syncAllTemplates.mjs 脚本,您需要将一个新的节点脚本添加到链接的组件中,并将其指向 syncAllTemplates.mjs 文档。 您可以通过指向 syncAllTemplates.mjs 文件并添加一个 --github 参数。 对linter 配置也可以增加一个 --linters 参数.

示例调用

// Default
"syncTemplates": "./node_modules/@aurodesignsystem/auro-library/scripts/config/syncAllTemplates.mjs"
// Only sync github workflow templates
"syncTemplates": "./node_modules/@aurodesignsystem/auro-library/scripts/config/syncAllTemplates.mjs --github"
// Only sync linter configuration templates
"syncTemplates": "./node_modules/@aurodesignsystem/auro-library/scripts/config/syncAllTemplates.mjs --linters"

准备构建 api.md

如何运行 generateWcaComponent.mjs 脚本

要运行 generateWcaComponent.mjs 脚本,您需要为您想要用 WCA 处理的组件提供文件路径 。 此脚本只应在项目添加新组件后执行一次 。 在运行剧本时, .js 文件将在 scripts/wca 文件夹.

示例调用

// Common case: 1 component in 1 project
"build:api:prepare": "node ./node_modules/@aurodesignsystem/auro-library/scripts/generateWcaComponent.mjs 'src/auro-flight.js'"
// multiple components in 1 project
"build:api:prepare": "node ./node_modules/@aurodesignsystem/auro-library/scripts/config/syncAllTemplates.mjs 'src/auro-flight*.js'"

向 CEM 字段插件折旧

这个 deprecatedProseToFieldPlugin 是一个共享的 自定义元素外观 分析器插件。 它提倡在下列文字上写作的淫秽的口语: @event 财务报告和审定财务报表 @slot 标记输入机器可读 deprecated 生成字段 custom-elements.json,因此编辑工具可以打击被贬损的事件和插槽.

CEM分析器已经发出一个 deprecated 字段,用于属性和明确声明的成员 @deprecated JSDoc标签,但它确实 没有 对被宣布为内入类的事件和空档这样做 @event 编号 : @slot 标签。 此插件通过扫描每个声明的 events 财务报告和审定财务报表 slots 并且,如果说明中包含一个折旧标记((Deprecated) …, (中文(简体) ), **DEPRECATED** …或线索 deprecated 单词 :

  • 套装 deprecated 标记和分隔符之后的指南文本(-, (中文(简体) ), :, (中文(简体) ), –,或 ———例如, "Use the \输入“事件”改为“事件”
  • 套装 deprecated 改为 true 当传教士不作任何引导的时候.

属性和成员被故意置之不理——分析器已经给那些正确标记了. 已携带的条目 deprecated 值永远不会被覆盖.

使用量

将插件导入您的组件库 custom-elements-manifest.config.mjs 并加进 plugins 数组 :

import { deprecatedProseToFieldPlugin } from '@aurodesignsystem/auro-library/scripts/build/deprecatedProseToFieldPlugin.mjs';

export default {
  globs: ['components/**/src/*.js'],
  litelement: true,
  plugins: [deprecatedProseToFieldPlugin()]
};

重现你的 custom-elements.json 现在将用他们的指导信息标记被侵蚀的事件和时间档.

版本与发布记录

@aurodesignsystem/auro-library 共发布 114 个版本,首次发布于 2023/07/14;过去 12 个月发布了 25 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
5.14.4latest2026/10/0930 天前
5.14.32026/10/051 个月前
5.14.22026/09/101 个月前
5.14.12026/09/022 个月前
5.14.02026/08/302 个月前
5.13.32026/08/083 个月前

其他发布通道:beta → 4.4.0-beta.1。

关于 @aurodesignsystem/auro-library 的常见问题

@aurodesignsystem/auro-library 是什么?

该存放处拥有Auro设计系统各存放处共用的脚本、公用事业和工作流程.

如何安装 @aurodesignsystem/auro-library?

在项目目录运行 npm install @aurodesignsystem/auro-library,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 generateDocs,可以用 npx generateDocs 直接运行。

@aurodesignsystem/auro-library 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/aurodesignsystem__auro-library 是否存在。

@aurodesignsystem/auro-library 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@aurodesignsystem/auro-library 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^20.x || ^22.x。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@aurodesignsystem/auro-library 可以商用吗?

@aurodesignsystem/auro-library 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@aurodesignsystem/auro-library 的下载量有多少?

根据 npm 官方下载统计,@aurodesignsystem/auro-library 在 2026/10/07 – 2026/11/05 这 30 天内被下载 29,185 次,日均约 973 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aurodesignsystem/auro-library 还在维护吗?

最新版本 5.14.4 发布于 2026/10/09(30 天前);至今共发布 114 个版本,其中过去 12 个月发布了 25 个;首次发布于 2023/07/14。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。