@guanjinke/artifact-client 1.6.0 → 1.6.2

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 (66) hide show
  1. package/README.md +3 -3
  2. package/dist/environment/builder.d.ts.map +1 -1
  3. package/dist/environment/builder.js +5 -3
  4. package/dist/environment/builder.js.map +1 -1
  5. package/dist/environment/config.d.ts +1 -1
  6. package/dist/environment/config.d.ts.map +1 -1
  7. package/dist/environment/config.js +4 -4
  8. package/dist/environment/config.js.map +1 -1
  9. package/dist/environment/manager.d.ts.map +1 -1
  10. package/dist/environment/manager.js +2 -3
  11. package/dist/environment/manager.js.map +1 -1
  12. package/dist/environment/plan.d.ts +1 -1
  13. package/dist/environment/plan.d.ts.map +1 -1
  14. package/dist/environment/plan.js +19 -7
  15. package/dist/environment/plan.js.map +1 -1
  16. package/dist/environment/posix-process.d.ts +71 -0
  17. package/dist/environment/posix-process.d.ts.map +1 -0
  18. package/dist/environment/posix-process.js +393 -0
  19. package/dist/environment/posix-process.js.map +1 -0
  20. package/dist/environment/process.d.ts +3 -1
  21. package/dist/environment/process.d.ts.map +1 -1
  22. package/dist/environment/process.js +5 -2
  23. package/dist/environment/process.js.map +1 -1
  24. package/dist/environment/registry.d.ts.map +1 -1
  25. package/dist/environment/registry.js +2 -1
  26. package/dist/environment/registry.js.map +1 -1
  27. package/dist/environment/root.d.ts +24 -6
  28. package/dist/environment/root.d.ts.map +1 -1
  29. package/dist/environment/root.js +78 -24
  30. package/dist/environment/root.js.map +1 -1
  31. package/dist/environment/update.d.ts +1 -1
  32. package/dist/environment/update.d.ts.map +1 -1
  33. package/dist/environment/update.js +30 -27
  34. package/dist/environment/update.js.map +1 -1
  35. package/dist/environment/validate.d.ts.map +1 -1
  36. package/dist/environment/validate.js +5 -1
  37. package/dist/environment/validate.js.map +1 -1
  38. package/dist/index.d.ts +2 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +7 -1
  41. package/dist/index.js.map +1 -1
  42. package/dist/utils/atomic.d.ts +10 -0
  43. package/dist/utils/atomic.d.ts.map +1 -0
  44. package/dist/utils/atomic.js +65 -0
  45. package/dist/utils/atomic.js.map +1 -0
  46. package/dist/utils/local-path.d.ts +19 -0
  47. package/dist/utils/local-path.d.ts.map +1 -1
  48. package/dist/utils/local-path.js +30 -0
  49. package/dist/utils/local-path.js.map +1 -1
  50. package/dist/web/api.d.ts +5 -0
  51. package/dist/web/api.d.ts.map +1 -1
  52. package/dist/web/api.js +63 -0
  53. package/dist/web/api.js.map +1 -1
  54. package/dist/web/providers.d.ts +6 -3
  55. package/dist/web/providers.d.ts.map +1 -1
  56. package/dist/web/providers.js +94 -3
  57. package/dist/web/providers.js.map +1 -1
  58. package/dist/web/server.d.ts +2 -0
  59. package/dist/web/server.d.ts.map +1 -1
  60. package/dist/web/server.js +14 -0
  61. package/dist/web/server.js.map +1 -1
  62. package/dist/web/static/app.js +11 -11
  63. package/dist/web/static/styles.css +70 -0
  64. package/dist/web/types.d.ts +31 -1
  65. package/dist/web/types.d.ts.map +1 -1
  66. package/package.json +1 -1
@@ -1205,6 +1205,76 @@ a {
1205
1205
  background: transparent;
1206
1206
  }
1207
1207
 
1208
+ /* -------------------------------------------------------------- settings -- */
1209
+
1210
+ .settings-block {
1211
+ display: grid;
1212
+ gap: 10px;
1213
+ padding: 14px;
1214
+ background: rgba(255, 255, 255, .02);
1215
+ border: 1px solid var(--border);
1216
+ border-radius: 14px;
1217
+ }
1218
+
1219
+ .settings-title {
1220
+ margin: 0;
1221
+ font-size: 13.5px;
1222
+ font-weight: 650;
1223
+ }
1224
+
1225
+ .settings-current {
1226
+ margin: 0;
1227
+ color: var(--muted);
1228
+ font-size: 12.5px;
1229
+ word-break: break-all;
1230
+ }
1231
+
1232
+ .settings-row {
1233
+ display: flex;
1234
+ flex-wrap: wrap;
1235
+ align-items: flex-end;
1236
+ gap: 10px;
1237
+ }
1238
+
1239
+ .settings-row > .field {
1240
+ flex: 1 1 200px;
1241
+ }
1242
+
1243
+ .settings-row > .input {
1244
+ flex: 1 1 240px;
1245
+ }
1246
+
1247
+ .settings-provider {
1248
+ display: grid;
1249
+ gap: 10px;
1250
+ padding-top: 12px;
1251
+ border-top: 1px dashed var(--border);
1252
+ }
1253
+
1254
+ .settings-provider-head {
1255
+ display: flex;
1256
+ align-items: center;
1257
+ flex-wrap: wrap;
1258
+ gap: 10px;
1259
+ }
1260
+
1261
+ .settings-actions {
1262
+ display: flex;
1263
+ justify-content: flex-end;
1264
+ gap: 8px;
1265
+ }
1266
+
1267
+ /* The header chips now carry a small action button. */
1268
+ .meta-chip .btn.small {
1269
+ justify-self: start;
1270
+ padding: 3px 10px;
1271
+ }
1272
+
1273
+ .provider-hint .btn.small {
1274
+ margin: 0 6px;
1275
+ vertical-align: middle;
1276
+ }
1277
+
1208
1278
  /* --------------------------------------------------------------- responsive */
1209
1279
 
1210
1280
  @media (min-width: 861px) {
@@ -33,7 +33,31 @@ export interface WebRegistry {
33
33
  get(name: string): Promise<EnvironmentRecord>;
34
34
  read(): Promise<EnvironmentRecord[]>;
35
35
  }
36
- /** Stored-credential access, so the API never takes credentials from the browser. */
36
+ /** What the page may show about configured credentials: never a secret. */
37
+ export interface ProviderInfo {
38
+ az?: {
39
+ container: string | null;
40
+ };
41
+ oss?: {
42
+ bucket: string | null;
43
+ region: string | null;
44
+ };
45
+ }
46
+ /** Credentials a browser may submit; validated and stored, never echoed back. */
47
+ export interface SubmittedCredentials {
48
+ sasUrl?: string;
49
+ keyId?: string;
50
+ key?: string;
51
+ bucket?: string;
52
+ region?: string;
53
+ }
54
+ /**
55
+ * Stored-credential access.
56
+ *
57
+ * The page can *write* credentials (so a fresh machine needs no terminal) but
58
+ * can never read them back: `available` and `info` expose only non-secret facts,
59
+ * the same profile the CLI's `az login`/`oss login` use.
60
+ */
37
61
  export interface WebProviders {
38
62
  /** Which providers have usable stored credentials. */
39
63
  available(): {
@@ -42,6 +66,12 @@ export interface WebProviders {
42
66
  };
43
67
  /** Build the artifact client for a provider; throws with an actionable message when unconfigured. */
44
68
  client(provider: Provider): EnvironmentClient;
69
+ /** Non-secret details of what is stored, for display in the settings dialog. */
70
+ info(): ProviderInfo;
71
+ /** Validate and persist one provider's credentials. */
72
+ save(provider: Provider, credentials: SubmittedCredentials): Promise<void>;
73
+ /** Forget one provider's credentials. */
74
+ clear(provider: Provider): Promise<void>;
45
75
  }
46
76
  /** Static facts shown in the page header. */
47
77
  export interface WebStateInfo {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/web/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACtI,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEvE,iGAAiG;AACjG,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,KAAK,CAAC;AAEpC,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7F;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,EAAE,UAAU,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,GAAG,iBAAiB,CAAC,CAAC;IAC1K,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD;AAED,4DAA4D;AAC5D,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,gBAAgB,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,mBAAmB,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC7L;AAED,6DAA6D;AAC7D,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9C,IAAI,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;CACtC;AAED,qFAAqF;AACrF,MAAM,WAAW,YAAY;IAC3B,sDAAsD;IACtD,SAAS,IAAI;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3C,qGAAqG;IACrG,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,iBAAiB,CAAC;CAC/C;AAED,6CAA6C;AAC7C,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/web/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@guanjinke/artifact-client",
3
- "version": "1.6.0",
3
+ "version": "1.6.2",
4
4
  "description": "Artifact management client and CLI for Azure Storage and Aliyun OSS",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",