@aalis/schema-config 0.16.0 → 0.16.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/README.md +1 -1
- package/dist/index.d.ts +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -85,7 +85,7 @@ export default definePlugin({
|
|
|
85
85
|
|
|
86
86
|
## 密钥字段(`secret`)
|
|
87
87
|
|
|
88
|
-
`secret: true` 表示字段的值是凭据(API key、token、可能带账号密码的连接串),由本包声明,各宿主都按它处理:值不放在配置文档里,存进宿主的密钥存储(Node 宿主 `@aalis/runtime`
|
|
88
|
+
`secret: true` 表示字段的值是凭据(API key、token、可能带账号密码的连接串),由本包声明,各宿主都按它处理:值不放在配置文档里,存进宿主的密钥存储(Node 宿主 `@aalis/runtime` 用数据目录的 `secrets.yaml`),文档里只写引用 `{ $secret: '<键>' }`(类型 `SecretRef`),宿主把配置交给插件之前解析回原值,展示与回传都不给原值。标在 `map`、`list` 等非标量字段上时整个值算一个密钥。本包只声明词汇,不读写密钥存储。
|
|
89
89
|
|
|
90
90
|
- **`isSecretRef(value)`**:是不是引用,即只有 `$secret` 一个自有键、值为非空字符串的纯对象。只在 `secret: true` 的字段上有这层含义。
|
|
91
91
|
- **`mapSecretFields(schema, config, fn)`**:逐个处理配置里密钥字段上的值(顶层、分组内、数组元素内;值为 `undefined` 的跳过),`fn` 收到值与位置 `SecretPosition`(`path` 是点号路径,数组元素里的不带下标;`inArray` 表示在数组元素里),`fn` 返回 `undefined` 时删掉这个键。不改入参:有改动时返回浅拷贝(没动到的部分与入参共享),没有改动时返回入参本身,调用方要改写结果请先复制。宿主拆出、解析密钥与给呈现方去掉密钥都用它。
|
package/dist/index.d.ts
CHANGED
|
@@ -98,7 +98,7 @@ export interface SchemaField {
|
|
|
98
98
|
format?: 'absolute-path' | 'executable';
|
|
99
99
|
/**
|
|
100
100
|
* 值是凭据(API key、token、带账号密码的连接串)。宿主不把它放在配置文档里:值存进宿主的密钥存储
|
|
101
|
-
* (Node
|
|
101
|
+
* (Node 宿主是数据目录的 `secrets.yaml`),文档里只写引用 {@link SecretRef},交给插件之前解析回原值;
|
|
102
102
|
* 展示与回传都不给原值。标在 map、list 上时整个值算一个密钥。插件照常经 parseConfig 读到原值;
|
|
103
103
|
* 引用没被宿主解析(键不在密钥存储里)时 parseConfig 拒绝激活,不回落默认值。
|
|
104
104
|
* `false` 与不写在运行时相同;仓内第一方的声明守卫要名字像凭据的字段写 `false` 表明判断过
|