dsh-vault 1.10.66 → 1.10.67
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-zh.md +16 -1
- package/README.md +17 -1
- package/lib/cli.js +34 -16
- package/lib/client.js +158 -158
- package/lib/index.js +8 -5
- package/package.json +1 -1
package/README-zh.md
CHANGED
|
@@ -228,10 +228,25 @@ echo "$DEMO_API_KEY"
|
|
|
228
228
|
"no entries are tagged for environment export";先在 UI 里给条目的标签加上 `env`,或让助手执行 `vault_update { id, tags: ["env"] }`。
|
|
229
229
|
- 名字默认由标题 + 字段推导(`DASHSCOPE` + `apiKey` → `DASHSCOPE_API_KEY`);想固定名字就在条目的 `envKeys` 里指定 —— 见[环境变量导出](#环境变量导出)。
|
|
230
230
|
|
|
231
|
+
|
|
232
|
+
**命名 —— 只有三个,其中两个故意都叫 `env`:**
|
|
233
|
+
|
|
234
|
+
| 名字 | 是什么 | 含义 |
|
|
235
|
+
|---|---|---|
|
|
236
|
+
| `env` | 条目的**标签** | 决定哪些条目会被 `dsh-vault env` 导出;不打标签就不导出 |
|
|
237
|
+
| `env` | **命令** | 打印带该标签的条目 |
|
|
238
|
+
| `envKeys` | 条目的**字段**(可选) | 固定确切名字,例如 `["DASHSCOPE_API_KEY"]`;旧的单数写法 `envKey` 仍作为"只写一个"的简写接受 |
|
|
239
|
+
|
|
240
|
+
除此之外没有任何叫 `env*` 的东西:`list --json` / `show` 只报 `envKeys`(该条目会导出的名字,也就是 `get` 接受的名字)与 `envTagged`(是否被 `env` 包含)。
|
|
241
|
+
|
|
231
242
|
### 2. 有哪些命令
|
|
232
243
|
|
|
233
244
|
```sh
|
|
234
|
-
dsh-vault list #
|
|
245
|
+
dsh-vault list # 分组显示:哪些会被 env 导出、哪些不会
|
|
246
|
+
# Exported by `env` (tag "env") — 1 entry:
|
|
247
|
+
# a1b2c3d4-… api-key DASHSCOPE → DASHSCOPE_API_KEY
|
|
248
|
+
# Not exported (no "env" tag) — 1 entry; `get <name>` still works for it:
|
|
249
|
+
# 9f8e7d6c-… api-key Example Billing → EXAMPLE_BILLING_API_KEY
|
|
235
250
|
dsh-vault get my-entry # 取该条目的主密钥,仅 stdout
|
|
236
251
|
dsh-vault get my-entry --field apiKey # 取指定字段
|
|
237
252
|
dsh-vault get my-entry --mask # 只确认存在,不打印值
|
package/README.md
CHANGED
|
@@ -243,10 +243,26 @@ Two things worth knowing:
|
|
|
243
243
|
`DASHSCOPE_API_KEY`) unless the entry sets `envKeys` — see
|
|
244
244
|
[Environment export](#environment-export).
|
|
245
245
|
|
|
246
|
+
|
|
247
|
+
**Names — there are only three, and two of them are the word `env` on purpose:**
|
|
248
|
+
|
|
249
|
+
| name | what it is | meaning |
|
|
250
|
+
|---|---|---|
|
|
251
|
+
| `env` | an entry **tag** | which entries `dsh-vault env` exports; nothing is exported without it |
|
|
252
|
+
| `env` | the **command** | prints exactly the entries carrying that tag |
|
|
253
|
+
| `envKeys` | an entry **field** (optional) | pin exact names, e.g. `["DASHSCOPE_API_KEY"]`; the old singular `envKey` is accepted as a one-element shorthand |
|
|
254
|
+
|
|
255
|
+
Nothing else is called `env*`: `list --json` / `show` report `envKeys` (the names
|
|
256
|
+
an entry exports — what `get` accepts) and `envTagged` (whether `env` includes it).
|
|
257
|
+
|
|
246
258
|
### 2. The commands
|
|
247
259
|
|
|
248
260
|
```sh
|
|
249
|
-
dsh-vault list #
|
|
261
|
+
dsh-vault list # grouped: what `env` exports vs the rest
|
|
262
|
+
# Exported by `env` (tag "env") — 1 entry:
|
|
263
|
+
# a1b2c3d4-… api-key DASHSCOPE → DASHSCOPE_API_KEY
|
|
264
|
+
# Not exported (no "env" tag) — 1 entry; `get <name>` still works for it:
|
|
265
|
+
# 9f8e7d6c-… api-key Example Billing → EXAMPLE_BILLING_API_KEY
|
|
250
266
|
dsh-vault get my-entry # the entry's primary secret, stdout only
|
|
251
267
|
dsh-vault get my-entry --field apiKey # one named field
|
|
252
268
|
dsh-vault get my-entry --mask # confirm it exists without printing it
|
package/lib/cli.js
CHANGED
|
@@ -64,6 +64,10 @@ list options:
|
|
|
64
64
|
the count of further keys in parentheses, and [env]
|
|
65
65
|
when the entry is included in "dsh-vault env")
|
|
66
66
|
|
|
67
|
+
JSON output ("list --json", "show") reports per entry:
|
|
68
|
+
envKeys the env names it exports (what "get" accepts)
|
|
69
|
+
envTagged whether "dsh-vault env" includes it
|
|
70
|
+
|
|
67
71
|
get options:
|
|
68
72
|
--field <name> apiKey | secret | accessToken | refreshToken | privateKey
|
|
69
73
|
| password | cardNumber | username | url | fields.<custom>
|
|
@@ -304,13 +308,12 @@ function publicFields(entry) {
|
|
|
304
308
|
out[key] = value;
|
|
305
309
|
}
|
|
306
310
|
out.hasSecret = primarySecret(entry) !== undefined;
|
|
307
|
-
//
|
|
308
|
-
//
|
|
309
|
-
//
|
|
310
|
-
//
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
out.exportedKeys = envPairsForEntry(entry).map(pair => pair.key);
|
|
311
|
+
// ONE name for "the env names this entry exports": `envKeys`. It used to be a
|
|
312
|
+
// configured `envKeys` plus a computed `exportedKeys`, which read as two
|
|
313
|
+
// similar things — the computed list is the useful one (it already starts with
|
|
314
|
+
// whatever was pinned), so only that is reported.
|
|
315
|
+
out.envKeys = envPairsForEntry(entry).map(pair => pair.key);
|
|
316
|
+
// Whether `dsh-vault env` includes this entry (the tag decides).
|
|
314
317
|
out.envTagged = (entry.tags ?? []).includes('env');
|
|
315
318
|
return out;
|
|
316
319
|
}
|
|
@@ -384,18 +387,33 @@ export async function runCli(argv, io) {
|
|
|
384
387
|
io.out(`${JSON.stringify(entries.map(publicFields), null, 2)}\n`);
|
|
385
388
|
return 0;
|
|
386
389
|
}
|
|
387
|
-
|
|
390
|
+
// Group by what `env` actually does, because a bare `→ NAME` column used
|
|
391
|
+
// to read as "this is exported" for every entry: the name is only
|
|
392
|
+
// POTENTIAL until the entry carries the tag.
|
|
393
|
+
const line = (entry) => {
|
|
388
394
|
const identity = [entry.username, entry.host, entry.url]
|
|
389
395
|
.filter((v) => typeof v === 'string' && v.length > 0).join(' · ');
|
|
390
|
-
// Show the env name `get`/`env` would use, so a script author can copy
|
|
391
|
-
// it straight out of the listing (plus how many more keys follow).
|
|
392
396
|
const keys = envPairsForEntry(entry).map(pair => pair.key);
|
|
393
|
-
const
|
|
394
|
-
|
|
395
|
-
: ''
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
397
|
+
const suffix = keys.length > 0 ? ` → ${keys[0]}${keys.length > 1 ? ` (+${keys.length - 1})` : ''}` : '';
|
|
398
|
+
return `${entry.id} ${(entry.kind ?? 'login').padEnd(8)} ${entry.title}`
|
|
399
|
+
+ `${identity.length > 0 ? ` (${identity})` : ''}${suffix}`;
|
|
400
|
+
};
|
|
401
|
+
const tagged = entries.filter(entry => (entry.tags ?? []).includes('env'));
|
|
402
|
+
const untagged = entries.filter(entry => !(entry.tags ?? []).includes('env'));
|
|
403
|
+
if (tagged.length > 0) {
|
|
404
|
+
io.out(`Exported by \`env\` (tag "env") — ${tagged.length} ${tagged.length === 1 ? 'entry' : 'entries'}:\n`);
|
|
405
|
+
for (const entry of tagged)
|
|
406
|
+
io.out(` ${line(entry)}\n`);
|
|
407
|
+
}
|
|
408
|
+
else {
|
|
409
|
+
io.out('Exported by `env` (tag "env"): none.\n');
|
|
410
|
+
io.out(' `env` prints only tagged entries; add the tag to one (UI: the entry\'s tags field)\n');
|
|
411
|
+
io.out(' or ask the assistant: vault_update { id, tags: ["env"] }.\n');
|
|
412
|
+
}
|
|
413
|
+
if (untagged.length > 0) {
|
|
414
|
+
io.out(`\nNot exported (no "env" tag) — ${untagged.length} ${untagged.length === 1 ? 'entry' : 'entries'}; \`get <name>\` still works for them:\n`);
|
|
415
|
+
for (const entry of untagged)
|
|
416
|
+
io.out(` ${line(entry)}\n`);
|
|
399
417
|
}
|
|
400
418
|
return 0;
|
|
401
419
|
}
|
package/lib/client.js
CHANGED
|
@@ -495,191 +495,191 @@ window.__ModuleLoader__.load({
|
|
|
495
495
|
document.head.appendChild(tag);
|
|
496
496
|
}
|
|
497
497
|
var VaultSection_module_css_default = {
|
|
498
|
-
"
|
|
499
|
-
"
|
|
500
|
-
"
|
|
501
|
-
"
|
|
502
|
-
"
|
|
503
|
-
"reportLineLink": "t_j5va_reportLineLink",
|
|
498
|
+
"revealButton": "t_j5va_revealButton",
|
|
499
|
+
"toolbarMain": "t_j5va_toolbarMain",
|
|
500
|
+
"vaultTarget": "t_j5va_vaultTarget",
|
|
501
|
+
"lockedBanner": "t_j5va_lockedBanner",
|
|
502
|
+
"deleteButton": "t_j5va_deleteButton",
|
|
504
503
|
"dupMerge": "t_j5va_dupMerge",
|
|
505
|
-
"
|
|
504
|
+
"kindIcon": "t_j5va_kindIcon",
|
|
505
|
+
"addButton": "t_j5va_addButton",
|
|
506
|
+
"searchKbd": "t_j5va_searchKbd",
|
|
507
|
+
"histNeutral": "t_j5va_histNeutral",
|
|
508
|
+
"pwHistRow": "t_j5va_pwHistRow",
|
|
509
|
+
"resultCount": "t_j5va_resultCount",
|
|
510
|
+
"editor": "t_j5va_editor",
|
|
511
|
+
"customEq": "t_j5va_customEq",
|
|
512
|
+
"detailTotp": "t_j5va_detailTotp",
|
|
513
|
+
"bulkBar": "t_j5va_bulkBar",
|
|
514
|
+
"actionGroupLabel": "t_j5va_actionGroupLabel",
|
|
506
515
|
"auditChip": "t_j5va_auditChip",
|
|
516
|
+
"badgeOk": "t_j5va_badgeOk",
|
|
517
|
+
"detailItem": "t_j5va_detailItem",
|
|
518
|
+
"reportLine": "t_j5va_reportLine",
|
|
519
|
+
"detailBox": "t_j5va_detailBox",
|
|
520
|
+
"importRow": "t_j5va_importRow",
|
|
521
|
+
"detailActions": "t_j5va_detailActions",
|
|
522
|
+
"bulkCount": "t_j5va_bulkCount",
|
|
523
|
+
"pwHistBox": "t_j5va_pwHistBox",
|
|
524
|
+
"moreMenu": "t_j5va_moreMenu",
|
|
525
|
+
"backupButton": "t_j5va_backupButton",
|
|
526
|
+
"editorBody": "t_j5va_editorBody",
|
|
527
|
+
"detailRemain": "t_j5va_detailRemain",
|
|
528
|
+
"srOnly": "t_j5va_srOnly",
|
|
529
|
+
"saveButton": "t_j5va_saveButton",
|
|
530
|
+
"moreWrap": "t_j5va_moreWrap",
|
|
531
|
+
"emptyHint": "t_j5va_emptyHint",
|
|
532
|
+
"modeAsk": "t_j5va_modeAsk",
|
|
533
|
+
"auditChipActive": "t_j5va_auditChipActive",
|
|
534
|
+
"badgeLink": "t_j5va_badgeLink",
|
|
535
|
+
"selectActive": "t_j5va_selectActive",
|
|
536
|
+
"pwHistPwd": "t_j5va_pwHistPwd",
|
|
507
537
|
"trashButton": "t_j5va_trashButton",
|
|
508
|
-
"pwLabel": "t_j5va_pwLabel",
|
|
509
538
|
"rowSelected": "t_j5va_rowSelected",
|
|
510
|
-
"
|
|
539
|
+
"policyBar": "t_j5va_policyBar",
|
|
540
|
+
"brandGlyphSm": "t_j5va_brandGlyphSm",
|
|
541
|
+
"dupGroup": "t_j5va_dupGroup",
|
|
542
|
+
"dangerButton": "t_j5va_dangerButton",
|
|
543
|
+
"healthSummary": "t_j5va_healthSummary",
|
|
544
|
+
"secretField": "t_j5va_secretField",
|
|
511
545
|
"pinOff": "t_j5va_pinOff",
|
|
512
|
-
"
|
|
513
|
-
"detailTotp": "t_j5va_detailTotp",
|
|
514
|
-
"detailItem": "t_j5va_detailItem",
|
|
515
|
-
"customFieldRows": "t_j5va_customFieldRows",
|
|
516
|
-
"toolbarMain": "t_j5va_toolbarMain",
|
|
517
|
-
"searchBox": "t_j5va_searchBox",
|
|
518
|
-
"resultCount": "t_j5va_resultCount",
|
|
519
|
-
"pinOn": "t_j5va_pinOn",
|
|
520
|
-
"copied": "t_j5va_copied",
|
|
521
|
-
"addButton": "t_j5va_addButton",
|
|
522
|
-
"kindIcon": "t_j5va_kindIcon",
|
|
523
|
-
"badge": "t_j5va_badge",
|
|
524
|
-
"genHist": "t_j5va_genHist",
|
|
546
|
+
"empty": "t_j5va_empty",
|
|
525
547
|
"emojiPicker": "t_j5va_emojiPicker",
|
|
548
|
+
"customFieldRow": "t_j5va_customFieldRow",
|
|
549
|
+
"kindChipActive": "t_j5va_kindChipActive",
|
|
550
|
+
"tabPane": "t_j5va_tabPane",
|
|
551
|
+
"favActive": "t_j5va_favActive",
|
|
552
|
+
"gridActions": "t_j5va_gridActions",
|
|
553
|
+
"gridDetail": "t_j5va_gridDetail",
|
|
554
|
+
"totpRing": "t_j5va_totpRing",
|
|
555
|
+
"recentLabel": "t_j5va_recentLabel",
|
|
556
|
+
"clearButton": "t_j5va_clearButton",
|
|
557
|
+
"pwBar": "t_j5va_pwBar",
|
|
558
|
+
"moreButton": "t_j5va_moreButton",
|
|
559
|
+
"colorPalette": "t_j5va_colorPalette",
|
|
560
|
+
"importList": "t_j5va_importList",
|
|
561
|
+
"lockedTag": "t_j5va_lockedTag",
|
|
526
562
|
"tagCount": "t_j5va_tagCount",
|
|
527
|
-
"
|
|
528
|
-
"dueBadge": "t_j5va_dueBadge",
|
|
529
|
-
"exportChip": "t_j5va_exportChip",
|
|
530
|
-
"status": "t_j5va_status",
|
|
531
|
-
"favToggle": "t_j5va_favToggle",
|
|
532
|
-
"importRow": "t_j5va_importRow",
|
|
563
|
+
"field": "t_j5va_field",
|
|
533
564
|
"importActions": "t_j5va_importActions",
|
|
534
|
-
"
|
|
535
|
-
"
|
|
536
|
-
"
|
|
537
|
-
"
|
|
538
|
-
"
|
|
539
|
-
"
|
|
540
|
-
"
|
|
541
|
-
"revealButton": "t_j5va_revealButton",
|
|
542
|
-
"attachBox": "t_j5va_attachBox",
|
|
543
|
-
"toolbarFilters": "t_j5va_toolbarFilters",
|
|
565
|
+
"riskBanner": "t_j5va_riskBanner",
|
|
566
|
+
"colorFieldWrap": "t_j5va_colorFieldWrap",
|
|
567
|
+
"list": "t_j5va_list",
|
|
568
|
+
"reportSub": "t_j5va_reportSub",
|
|
569
|
+
"auditRow": "t_j5va_auditRow",
|
|
570
|
+
"totp": "t_j5va_totp",
|
|
571
|
+
"tab": "t_j5va_tab",
|
|
544
572
|
"recentChip": "t_j5va_recentChip",
|
|
573
|
+
"badgeActive": "t_j5va_badgeActive",
|
|
545
574
|
"actionBtn": "t_j5va_actionBtn",
|
|
546
|
-
"
|
|
547
|
-
"
|
|
575
|
+
"copied": "t_j5va_copied",
|
|
576
|
+
"histLink": "t_j5va_histLink",
|
|
577
|
+
"vaultHeader": "t_j5va_vaultHeader",
|
|
578
|
+
"customKeyInput": "t_j5va_customKeyInput",
|
|
579
|
+
"healthBar": "t_j5va_healthBar",
|
|
580
|
+
"pwLabel": "t_j5va_pwLabel",
|
|
581
|
+
"inlineField": "t_j5va_inlineField",
|
|
582
|
+
"retryButton": "t_j5va_retryButton",
|
|
583
|
+
"lenChipActive": "t_j5va_lenChipActive",
|
|
584
|
+
"genOptRow": "t_j5va_genOptRow",
|
|
585
|
+
"vaultSwitch": "t_j5va_vaultSwitch",
|
|
586
|
+
"tagRow": "t_j5va_tagRow",
|
|
587
|
+
"exportChip": "t_j5va_exportChip",
|
|
548
588
|
"title": "t_j5va_title",
|
|
549
|
-
"
|
|
550
|
-
"policyField": "t_j5va_policyField",
|
|
551
|
-
"pwWeak": "t_j5va_pwWeak",
|
|
589
|
+
"totpCopy": "t_j5va_totpCopy",
|
|
552
590
|
"brandGlyph": "t_j5va_brandGlyph",
|
|
553
|
-
"
|
|
591
|
+
"pwWeak": "t_j5va_pwWeak",
|
|
592
|
+
"hit": "t_j5va_hit",
|
|
593
|
+
"vaultManageRow": "t_j5va_vaultManageRow",
|
|
554
594
|
"pwHistTime": "t_j5va_pwHistTime",
|
|
555
|
-
"
|
|
556
|
-
"clearButton": "t_j5va_clearButton",
|
|
557
|
-
"riskDanger": "t_j5va_riskDanger",
|
|
558
|
-
"customFieldRow": "t_j5va_customFieldRow",
|
|
595
|
+
"bulkItem": "t_j5va_bulkItem",
|
|
559
596
|
"row": "t_j5va_row",
|
|
560
|
-
"scoreRing": "t_j5va_scoreRing",
|
|
561
|
-
"dupGroup": "t_j5va_dupGroup",
|
|
562
|
-
"customKeyInput": "t_j5va_customKeyInput",
|
|
563
|
-
"bulkCount": "t_j5va_bulkCount",
|
|
564
|
-
"pinStar": "t_j5va_pinStar",
|
|
565
|
-
"reportLine": "t_j5va_reportLine",
|
|
566
|
-
"pwBar": "t_j5va_pwBar",
|
|
567
|
-
"attachAdd": "t_j5va_attachAdd",
|
|
568
|
-
"actionGroup": "t_j5va_actionGroup",
|
|
569
|
-
"gridDetail": "t_j5va_gridDetail",
|
|
570
|
-
"genHistItem": "t_j5va_genHistItem",
|
|
571
|
-
"reportBox": "t_j5va_reportBox",
|
|
572
|
-
"actionPrimary": "t_j5va_actionPrimary",
|
|
573
|
-
"emptyHint": "t_j5va_emptyHint",
|
|
574
|
-
"pwHistRow": "t_j5va_pwHistRow",
|
|
575
|
-
"retryButton": "t_j5va_retryButton",
|
|
576
|
-
"section": "t_j5va_section",
|
|
577
|
-
"highBadge": "t_j5va_highBadge",
|
|
578
|
-
"secretField": "t_j5va_secretField",
|
|
579
597
|
"pwStrong": "t_j5va_pwStrong",
|
|
580
|
-
"
|
|
581
|
-
"
|
|
582
|
-
"
|
|
583
|
-
"
|
|
584
|
-
"genOpts": "t_j5va_genOpts",
|
|
585
|
-
"histUpdate": "t_j5va_histUpdate",
|
|
586
|
-
"actionGroups": "t_j5va_actionGroups",
|
|
587
|
-
"listCompact": "t_j5va_listCompact",
|
|
588
|
-
"editorBody": "t_j5va_editorBody",
|
|
589
|
-
"healthBar": "t_j5va_healthBar",
|
|
590
|
-
"hit": "t_j5va_hit",
|
|
591
|
-
"vaultManageRow": "t_j5va_vaultManageRow",
|
|
592
|
-
"healthSummary": "t_j5va_healthSummary",
|
|
593
|
-
"badgeDanger": "t_j5va_badgeDanger",
|
|
594
|
-
"tabPane": "t_j5va_tabPane",
|
|
595
|
-
"favActive": "t_j5va_favActive",
|
|
596
|
-
"moreMenu": "t_j5va_moreMenu",
|
|
598
|
+
"rowDue": "t_j5va_rowDue",
|
|
599
|
+
"tabs": "t_j5va_tabs",
|
|
600
|
+
"urlGlyph": "t_j5va_urlGlyph",
|
|
601
|
+
"highBadge": "t_j5va_highBadge",
|
|
597
602
|
"tabActive": "t_j5va_tabActive",
|
|
598
|
-
"uriCode": "t_j5va_uriCode",
|
|
599
|
-
"lenChipActive": "t_j5va_lenChipActive",
|
|
600
|
-
"kindChipActive": "t_j5va_kindChipActive",
|
|
601
|
-
"vaultSwitch": "t_j5va_vaultSwitch",
|
|
602
|
-
"gridName": "t_j5va_gridName",
|
|
603
|
-
"gridInput": "t_j5va_gridInput",
|
|
604
|
-
"recentLabel": "t_j5va_recentLabel",
|
|
605
603
|
"recentClear": "t_j5va_recentClear",
|
|
606
|
-
"
|
|
607
|
-
"
|
|
608
|
-
"
|
|
609
|
-
"
|
|
610
|
-
"
|
|
611
|
-
"
|
|
612
|
-
"
|
|
613
|
-
"histAdd": "t_j5va_histAdd",
|
|
614
|
-
"rowActions": "t_j5va_rowActions",
|
|
615
|
-
"selectActive": "t_j5va_selectActive",
|
|
616
|
-
"reportSub": "t_j5va_reportSub",
|
|
617
|
-
"dupNames": "t_j5va_dupNames",
|
|
618
|
-
"checkField": "t_j5va_checkField",
|
|
619
|
-
"intro": "t_j5va_intro",
|
|
620
|
-
"rowMain": "t_j5va_rowMain",
|
|
621
|
-
"list": "t_j5va_list",
|
|
622
|
-
"totpRing": "t_j5va_totpRing",
|
|
604
|
+
"histUpdate": "t_j5va_histUpdate",
|
|
605
|
+
"genHistItem": "t_j5va_genHistItem",
|
|
606
|
+
"toolbar": "t_j5va_toolbar",
|
|
607
|
+
"policyField": "t_j5va_policyField",
|
|
608
|
+
"actionGroup": "t_j5va_actionGroup",
|
|
609
|
+
"iconFieldWrap": "t_j5va_iconFieldWrap",
|
|
610
|
+
"attachAdd": "t_j5va_attachAdd",
|
|
623
611
|
"sortButton": "t_j5va_sortButton",
|
|
624
|
-
"
|
|
625
|
-
"
|
|
626
|
-
"modeAsk": "t_j5va_modeAsk",
|
|
627
|
-
"detailRemain": "t_j5va_detailRemain",
|
|
628
|
-
"pwHistPwd": "t_j5va_pwHistPwd",
|
|
629
|
-
"srOnly": "t_j5va_srOnly",
|
|
612
|
+
"lenChip": "t_j5va_lenChip",
|
|
613
|
+
"badgeWarn": "t_j5va_badgeWarn",
|
|
630
614
|
"auditIssues": "t_j5va_auditIssues",
|
|
631
|
-
"
|
|
632
|
-
"
|
|
615
|
+
"auditWhen": "t_j5va_auditWhen",
|
|
616
|
+
"exportChips": "t_j5va_exportChips",
|
|
617
|
+
"error": "t_j5va_error",
|
|
618
|
+
"kindFilter": "t_j5va_kindFilter",
|
|
619
|
+
"gridRow": "t_j5va_gridRow",
|
|
620
|
+
"dueBadge": "t_j5va_dueBadge",
|
|
621
|
+
"badgeDanger": "t_j5va_badgeDanger",
|
|
622
|
+
"pwFair": "t_j5va_pwFair",
|
|
633
623
|
"copyAllBtn": "t_j5va_copyAllBtn",
|
|
634
|
-
"
|
|
635
|
-
"
|
|
636
|
-
"pwHistBox": "t_j5va_pwHistBox",
|
|
637
|
-
"rowCheck": "t_j5va_rowCheck",
|
|
638
|
-
"tabs": "t_j5va_tabs",
|
|
639
|
-
"emptyBox": "t_j5va_emptyBox",
|
|
640
|
-
"tab": "t_j5va_tab",
|
|
641
|
-
"inlineInput": "t_j5va_inlineInput",
|
|
624
|
+
"colorSwatch": "t_j5va_colorSwatch",
|
|
625
|
+
"tagName": "t_j5va_tagName",
|
|
642
626
|
"customValueInput": "t_j5va_customValueInput",
|
|
643
|
-
"
|
|
644
|
-
"
|
|
645
|
-
"
|
|
627
|
+
"rowExpired": "t_j5va_rowExpired",
|
|
628
|
+
"reportJump": "t_j5va_reportJump",
|
|
629
|
+
"scoreRing": "t_j5va_scoreRing",
|
|
630
|
+
"genHist": "t_j5va_genHist",
|
|
631
|
+
"inlineInput": "t_j5va_inlineInput",
|
|
632
|
+
"editorActions": "t_j5va_editorActions",
|
|
633
|
+
"checkField": "t_j5va_checkField",
|
|
646
634
|
"auditChips": "t_j5va_auditChips",
|
|
647
|
-
"
|
|
648
|
-
"
|
|
635
|
+
"intro": "t_j5va_intro",
|
|
636
|
+
"lenChips": "t_j5va_lenChips",
|
|
637
|
+
"attachBox": "t_j5va_attachBox",
|
|
638
|
+
"tagManagerHead": "t_j5va_tagManagerHead",
|
|
649
639
|
"detailCode": "t_j5va_detailCode",
|
|
640
|
+
"kindChip": "t_j5va_kindChip",
|
|
641
|
+
"toolbarFilters": "t_j5va_toolbarFilters",
|
|
642
|
+
"toolbarDivider": "t_j5va_toolbarDivider",
|
|
643
|
+
"emojiBtn": "t_j5va_emojiBtn",
|
|
644
|
+
"customFieldRows": "t_j5va_customFieldRows",
|
|
645
|
+
"emptyBox": "t_j5va_emptyBox",
|
|
646
|
+
"pinStar": "t_j5va_pinStar",
|
|
647
|
+
"identity": "t_j5va_identity",
|
|
648
|
+
"status": "t_j5va_status",
|
|
649
|
+
"uriCode": "t_j5va_uriCode",
|
|
650
|
+
"reportBox": "t_j5va_reportBox",
|
|
651
|
+
"headerMessage": "t_j5va_headerMessage",
|
|
652
|
+
"importName": "t_j5va_importName",
|
|
653
|
+
"riskDanger": "t_j5va_riskDanger",
|
|
654
|
+
"favToggle": "t_j5va_favToggle",
|
|
655
|
+
"importDesc": "t_j5va_importDesc",
|
|
650
656
|
"riskWarn": "t_j5va_riskWarn",
|
|
657
|
+
"genOpts": "t_j5va_genOpts",
|
|
658
|
+
"reportLineLink": "t_j5va_reportLineLink",
|
|
659
|
+
"rowMain": "t_j5va_rowMain",
|
|
660
|
+
"gridName": "t_j5va_gridName",
|
|
661
|
+
"tagActions": "t_j5va_tagActions",
|
|
662
|
+
"modeAuto": "t_j5va_modeAuto",
|
|
663
|
+
"modeReadonly": "t_j5va_modeReadonly",
|
|
664
|
+
"searchBox": "t_j5va_searchBox",
|
|
665
|
+
"rowActions": "t_j5va_rowActions",
|
|
666
|
+
"section": "t_j5va_section",
|
|
667
|
+
"gridInput": "t_j5va_gridInput",
|
|
651
668
|
"recentSearch": "t_j5va_recentSearch",
|
|
652
|
-
"
|
|
653
|
-
"
|
|
654
|
-
"
|
|
655
|
-
"
|
|
656
|
-
"vaultHeader": "t_j5va_vaultHeader",
|
|
669
|
+
"tagManager": "t_j5va_tagManager",
|
|
670
|
+
"actionGroups": "t_j5va_actionGroups",
|
|
671
|
+
"badge": "t_j5va_badge",
|
|
672
|
+
"dupNames": "t_j5va_dupNames",
|
|
657
673
|
"pwMeter": "t_j5va_pwMeter",
|
|
658
|
-
"
|
|
659
|
-
"
|
|
660
|
-
"
|
|
661
|
-
"
|
|
662
|
-
"
|
|
663
|
-
"reportTitle": "t_j5va_reportTitle",
|
|
664
|
-
"lockedBanner": "t_j5va_lockedBanner",
|
|
665
|
-
"empty": "t_j5va_empty",
|
|
666
|
-
"urlGlyph": "t_j5va_urlGlyph",
|
|
667
|
-
"iconFieldWrap": "t_j5va_iconFieldWrap",
|
|
668
|
-
"tagRow": "t_j5va_tagRow",
|
|
669
|
-
"searchKbd": "t_j5va_searchKbd",
|
|
670
|
-
"error": "t_j5va_error",
|
|
671
|
-
"tagName": "t_j5va_tagName",
|
|
672
|
-
"backupButton": "t_j5va_backupButton",
|
|
673
|
-
"badgeActive": "t_j5va_badgeActive",
|
|
674
|
+
"listCompact": "t_j5va_listCompact",
|
|
675
|
+
"detailDeleteBtn": "t_j5va_detailDeleteBtn",
|
|
676
|
+
"badgeBtn": "t_j5va_badgeBtn",
|
|
677
|
+
"rowCheck": "t_j5va_rowCheck",
|
|
678
|
+
"histAdd": "t_j5va_histAdd",
|
|
674
679
|
"histDanger": "t_j5va_histDanger",
|
|
675
|
-
"
|
|
676
|
-
"
|
|
677
|
-
"
|
|
678
|
-
"editor": "t_j5va_editor",
|
|
679
|
-
"colorFieldWrap": "t_j5va_colorFieldWrap",
|
|
680
|
-
"vaultTarget": "t_j5va_vaultTarget",
|
|
681
|
-
"reportJump": "t_j5va_reportJump",
|
|
682
|
-
"toolbarDivider": "t_j5va_toolbarDivider"
|
|
680
|
+
"pinOn": "t_j5va_pinOn",
|
|
681
|
+
"actionPrimary": "t_j5va_actionPrimary",
|
|
682
|
+
"reportTitle": "t_j5va_reportTitle"
|
|
683
683
|
};
|
|
684
684
|
//#endregion
|
|
685
685
|
//#region src/client/VaultSection.tsx
|
package/lib/index.js
CHANGED
|
@@ -4549,7 +4549,7 @@ export async function apply(ctx, config) {
|
|
|
4549
4549
|
const m = /^(.*)\.json$/.exec(entry);
|
|
4550
4550
|
if (!m)
|
|
4551
4551
|
continue;
|
|
4552
|
-
if (
|
|
4552
|
+
if (isNonVaultFile(m[1]) || isBackupFile(entry))
|
|
4553
4553
|
continue;
|
|
4554
4554
|
names.push(m[1]);
|
|
4555
4555
|
}
|
|
@@ -4594,7 +4594,7 @@ export async function apply(ctx, config) {
|
|
|
4594
4594
|
const m = /^(.*)\.json$/.exec(entry);
|
|
4595
4595
|
if (!m)
|
|
4596
4596
|
continue;
|
|
4597
|
-
if (
|
|
4597
|
+
if (isNonVaultFile(m[1]) || isBackupFile(entry))
|
|
4598
4598
|
continue;
|
|
4599
4599
|
names.push(m[1]);
|
|
4600
4600
|
}
|
|
@@ -6611,9 +6611,12 @@ function resolveVaultPath(config) {
|
|
|
6611
6611
|
* `access-<name>.json`, so two vaults in the same directory never share (or
|
|
6612
6612
|
* overwrite) each other's mode / auto-capture / auto-lock settings. */
|
|
6613
6613
|
/** Files that live beside vaults but are NOT vaults: sidecars and metadata. */
|
|
6614
|
+
/** Files that live beside vaults but are NOT vaults: sidecars and metadata.
|
|
6615
|
+
* Accepts the name with or without its `.json` suffix. */
|
|
6614
6616
|
function isNonVaultFile(name) {
|
|
6615
|
-
|
|
6616
|
-
|
|
6617
|
+
const base = name.replace(/\.json$/i, '');
|
|
6618
|
+
return base === 'access' || base.startsWith('access-') || base === 'tools' || base === 'meta'
|
|
6619
|
+
|| base.endsWith('-audit') || base.startsWith('vault-export-');
|
|
6617
6620
|
}
|
|
6618
6621
|
function accessPolicyFile(config) {
|
|
6619
6622
|
const path = resolveVaultPath(config);
|
|
@@ -6981,7 +6984,7 @@ async function listVaultRoster(config, activeName) {
|
|
|
6981
6984
|
const m = /^(.*)\.json$/.exec(entry);
|
|
6982
6985
|
if (!m)
|
|
6983
6986
|
continue;
|
|
6984
|
-
if (
|
|
6987
|
+
if (isNonVaultFile(m[1]) || isBackupFile(entry))
|
|
6985
6988
|
continue;
|
|
6986
6989
|
names.push(m[1]);
|
|
6987
6990
|
}
|