@veilio-inc/cli 0.5.3 → 0.6.0

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.
Files changed (69) hide show
  1. package/README.md +45 -15
  2. package/dist/args.d.ts +20 -2
  3. package/dist/args.d.ts.map +1 -1
  4. package/dist/args.js +47 -2
  5. package/dist/args.js.map +1 -1
  6. package/dist/client/index.d.ts +8 -0
  7. package/dist/client/index.d.ts.map +1 -0
  8. package/dist/client/index.js +12 -0
  9. package/dist/client/index.js.map +1 -0
  10. package/dist/client/keys.d.ts +22 -0
  11. package/dist/client/keys.d.ts.map +1 -0
  12. package/dist/client/keys.js +170 -0
  13. package/dist/client/keys.js.map +1 -0
  14. package/dist/client/maps.d.ts +107 -0
  15. package/dist/client/maps.d.ts.map +1 -0
  16. package/dist/client/maps.js +702 -0
  17. package/dist/client/maps.js.map +1 -0
  18. package/dist/client/personal-maps-key.d.ts +42 -0
  19. package/dist/client/personal-maps-key.d.ts.map +1 -0
  20. package/dist/client/personal-maps-key.js +168 -0
  21. package/dist/client/personal-maps-key.js.map +1 -0
  22. package/dist/client/projects.d.ts +23 -0
  23. package/dist/client/projects.d.ts.map +1 -0
  24. package/dist/client/projects.js +68 -0
  25. package/dist/client/projects.js.map +1 -0
  26. package/dist/client/status.d.ts +19 -0
  27. package/dist/client/status.d.ts.map +1 -0
  28. package/dist/client/status.js +62 -0
  29. package/dist/client/status.js.map +1 -0
  30. package/dist/client/team-key-bootstrap.d.ts +55 -0
  31. package/dist/client/team-key-bootstrap.d.ts.map +1 -0
  32. package/dist/client/team-key-bootstrap.js +127 -0
  33. package/dist/client/team-key-bootstrap.js.map +1 -0
  34. package/dist/client/vault-key.d.ts +5 -0
  35. package/dist/client/vault-key.d.ts.map +1 -0
  36. package/dist/client/vault-key.js +35 -0
  37. package/dist/client/vault-key.js.map +1 -0
  38. package/dist/client/wording.d.ts +59 -0
  39. package/dist/client/wording.d.ts.map +1 -0
  40. package/dist/client/wording.js +336 -0
  41. package/dist/client/wording.js.map +1 -0
  42. package/dist/cloud-commands.d.ts +30 -41
  43. package/dist/cloud-commands.d.ts.map +1 -1
  44. package/dist/cloud-commands.js +271 -461
  45. package/dist/cloud-commands.js.map +1 -1
  46. package/dist/cloud.d.ts +101 -2
  47. package/dist/cloud.d.ts.map +1 -1
  48. package/dist/cloud.js +91 -7
  49. package/dist/cloud.js.map +1 -1
  50. package/dist/commands.d.ts +1 -1
  51. package/dist/commands.d.ts.map +1 -1
  52. package/dist/commands.js +15 -0
  53. package/dist/commands.js.map +1 -1
  54. package/dist/credential.d.ts +7 -0
  55. package/dist/credential.d.ts.map +1 -1
  56. package/dist/credential.js +4 -0
  57. package/dist/credential.js.map +1 -1
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +33 -16
  60. package/dist/index.js.map +1 -1
  61. package/dist/secret-input.d.ts +23 -0
  62. package/dist/secret-input.d.ts.map +1 -0
  63. package/dist/secret-input.js +47 -0
  64. package/dist/secret-input.js.map +1 -0
  65. package/dist/team-namespace.d.ts +37 -0
  66. package/dist/team-namespace.d.ts.map +1 -1
  67. package/dist/team-namespace.js +61 -17
  68. package/dist/team-namespace.js.map +1 -1
  69. package/package.json +3 -2
@@ -60,47 +60,30 @@ export declare function runWhoami(io: Io): number;
60
60
  *
61
61
  * Prints the id, because `pull` takes one. A name would be friendlier and is
62
62
  * wrong: names are not unique, and picking "the first one that matches" is how
63
- * somebody pulls a different map over the one they were using.
63
+ * somebody pulls a different map over the one they were using. A teammate's
64
+ * team map is marked, because it is theirs to update or remove.
64
65
  */
65
66
  export declare function runMapsList(io: Io): Promise<number>;
66
67
  /**
67
- * Pull a map into the local store: decrypt FIRST, write second.
68
- *
69
- * The ordering is the control (Constitution IV). Writing before decrypting means
70
- * a wrong passphrase leaves a half-built store behind — and the store is the one
71
- * thing that can restore text already anonymized, so a partial write there is
72
- * not an inconvenience, it is unrecoverable text.
73
- *
74
- * A personal map is opened HERE. The server holds the salt and a verifier and
75
- * nothing else; the passphrase never leaves this machine, and there is no code
76
- * path in this package that could send it.
68
+ * Pull a map into the local store: decrypt FIRST, write second (see
69
+ * `pullCloudMap`). A personal map is opened HERE - the passphrase never leaves
70
+ * this machine, and there is no code path in this package that could send it.
77
71
  */
78
72
  export declare function runMapsPull(id: string | null, mapPath: string, io: Io, options?: {
79
73
  force?: boolean;
80
74
  }): Promise<number>;
75
+ /** Upload the local map, personal or the team's. Same endpoint, same quotas,
76
+ * same validation as the web app. */
77
+ export declare function runMapsPush(name: string | null, mapPath: string, io: Io, toTeam?: boolean): Promise<number>;
78
+ /** Replace a Cloud map's entries with the local map's, in place (spec 052). */
79
+ export declare function runMapsUpdate(id: string | null, mapPath: string, io: Io, options?: {
80
+ allowDrop?: boolean;
81
+ }): Promise<number>;
81
82
  /**
82
- * Placeholders the local map and the team's namespace use for DIFFERENT names.
83
- *
84
- * Publishing one of these creates a DISPUTED placeholder, and
85
- * `restoreLayers.disputedIn` then refuses to restore it for every member of
86
- * the team until somebody deletes a map. One person's push, a cost paid by
87
- * everyone, and nothing errors at the time - so it is checked before anything
88
- * is sealed rather than reported afterwards.
89
- *
90
- * An identifier the team holds under a DIFFERENT placeholder is an alias, not
91
- * a conflict: both still restore (spec 017), so those pass.
92
- *
93
- * A map anonymized with `reservedAnonymizeOverTeam` cannot reach this, because
94
- * its numbers came out of the team's own allocation. This is for maps that
95
- * predate it - numbered locally, possibly before this account joined a team.
83
+ * Remove a map from Cloud. Renaming and removing are allowed while a key
84
+ * rotation is owed, because neither stores anything under the key.
96
85
  */
97
- export declare function conflictsWithTeam(local: Record<string, string>, teamNamespace: Record<string, string>): {
98
- placeholder: string;
99
- mine: string;
100
- theirs: string;
101
- }[];
102
- /** Upload the local map. Same endpoint, same quotas, same validation. */
103
- export declare function runMapsPush(name: string | null, mapPath: string, io: Io, toTeam?: boolean): Promise<number>;
86
+ export declare function runMapsRm(id: string | null, io: Io): Promise<number>;
104
87
  /**
105
88
  * Fetch the account's custom rules so `veilio scrub` can apply them offline.
106
89
  *
@@ -121,6 +104,18 @@ export declare function runRulesPull(io: Io): Promise<number>;
121
104
  export declare function runTeamUnlock(io: Io, days?: number): Promise<number>;
122
105
  /** Remove the unlocked team keys. */
123
106
  export declare function runTeamLock(io: Io): number;
107
+ /** The team's projects, the one in use marked with `*`. */
108
+ export declare function runProjectsList(io: Io): Promise<number>;
109
+ /** Choose the project this sign-in works in. */
110
+ export declare function runProjectsUse(ref: string | null, io: Io): Promise<number>;
111
+ /**
112
+ * Unlock the personal-maps key for processes that cannot ask for a passphrase
113
+ * (spec 052 FR-011). See `client/keys.ts` for what is kept: that key, and
114
+ * nothing else the vault protects.
115
+ */
116
+ export declare function runVaultUnlock(io: Io, days?: number): Promise<number>;
117
+ /** Remove the personal-maps key from this machine. */
118
+ export declare function runVaultLock(io: Io): number;
124
119
  /**
125
120
  * The team's maps for `veilio restore` (spec 028), handed to the local command
126
121
  * as a callback so that command stays unlinked from the network. Signed out:
@@ -133,13 +128,7 @@ export declare function teamLayerFor(home: string | undefined, missing: readonly
133
128
  /** What `veilio scrub` numbers from (spec 030): the team's namespace, or this
134
129
  * project's map with the reason. Signed out or in no team: no request, no note. */
135
130
  export declare function teamNamespaceForScrub(home: string | undefined): Promise<Awaited<ReturnType<TeamNamespaceSource>>>;
136
- /**
137
- * Remove a map from Cloud.
138
- *
139
- * Who may remove a team map is the server's decision and is not second-guessed
140
- * here - this says what each refusal means and changes nothing locally either
141
- * way. Renaming and removing are allowed while a key rotation is owed, because
142
- * neither stores anything under the key.
143
- */
144
- export declare function runMapsRm(id: string | null, io: Io): Promise<number>;
131
+ /** Kept importable from here: tests and callers written before spec 052 moved
132
+ * it into the shared client. */
133
+ export { conflictsWithTeam } from './client/maps.js';
145
134
  //# sourceMappingURL=cloud-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-commands.d.ts","sourceRoot":"","sources":["../src/cloud-commands.ts"],"names":[],"mappings":"AA2BA,OAAO,EAgBL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAA;AAa3B,OAAO,EAAuB,KAAK,EAAE,EAAE,KAAK,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAetF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAoE1E;AAsBD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,EAAE,EAAE,EAAE,EACN,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,OAAO,CAAC,MAAM,CAAC,CA+FjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAgFvD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAQxC;AAyDD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAqBzD;AA+CD;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAC/B,EAAE,EAAE,MAAM,GAAG,IAAI,EACjB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,EAAE,EACN,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,MAAM,CAAC,CA8HjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,CAOzD;AAED,yEAAyE;AACzE,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,EAAE,EACN,MAAM,UAAQ,GACb,OAAO,CAAC,MAAM,CAAC,CAkEjB;AAcD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAqC1D;AAID;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmH1E;AAED,qCAAqC;AACrC,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAgB1C;AAID;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAO1D;AAID;oFACoF;AACpF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAoCnD;AAqID;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAoC1E"}
1
+ {"version":3,"file":"cloud-commands.d.ts","sourceRoot":"","sources":["../src/cloud-commands.ts"],"names":[],"mappings":"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"}