@runappsai/sdk 0.7.9 → 0.8.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.
package/README.md CHANGED
@@ -78,9 +78,11 @@ await client.signIn(); // resolves once the user has signed in; re
78
78
  ```
79
79
 
80
80
  The popup lands back on your origin with the token and closes itself; the
81
- page keeps everything it had and the pending call goes through. Call it from
82
- a click handler so the browser allows the popup; a blocked popup falls back
83
- to the redirect.
81
+ page keeps everything it had and the pending call goes through. After
82
+ `signOut()` the next call that needs a token opens the popup again instead of
83
+ throwing. Call it from a click handler so the browser allows the popup; a
84
+ popup blocked for lack of a user gesture opens on the user's next click or
85
+ key press, and one blocked on a real gesture falls back to the redirect.
84
86
 
85
87
  The SDK holds one token per user per app. It draws a small activity badge while it works; turn it off with `showIdentityBadge: false`, or move it with `badgePosition`.
86
88
 
@@ -267,6 +269,8 @@ The tokens of every round and each tool call are billed together, and `usage.tot
267
269
 
268
270
  Each app has a file space for each signed-in user. Paths look like POSIX paths, and every file has a public `url` you can use in `<img src>`.
269
271
 
272
+ File calls go to the files host, `https://files.runapps.ai/u/<hash>/…`, where `<hash>` stands for the signed-in user (the SDK asks the gateway for it once per sign-in). Every file URL is therefore unique to its user and its app, and file traffic stays off the main site. Responses are never cached, since files change. Pass `filesBase: false` to keep the classic `/v1/files` paths on the main base, or a URL to use another base.
273
+
270
274
  ```ts
271
275
  // Write. body: Blob | File | ArrayBuffer | Uint8Array | ReadableStream | string
272
276
  const obj = await client.files.put("assets/logo.png", pngBlob, { contentType: "image/png" });
package/dist/client.d.ts CHANGED
@@ -89,6 +89,13 @@ export interface ClientOptions {
89
89
  * pair.
90
90
  */
91
91
  project?: string;
92
+ /**
93
+ * Where file calls go. By default the SDK asks the gateway for a
94
+ * per-user base on the files host (`https://files.runapps.ai/u/<hash>`)
95
+ * and falls back to the classic `/v1/files` paths on older gateways.
96
+ * `false` keeps the classic paths; a URL overrides the base.
97
+ */
98
+ filesBase?: string | false;
92
99
  /** Override the default base URL, `https://www.runapps.ai` (the
93
100
  * platform: personal keys and app tokens are both accepted there). */
94
101
  baseURL?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -149,7 +149,7 @@ export class RunApps {
149
149
  // `project` also scopes the file URLs (/v1/p/<project>/files/...),
150
150
  // so two apps never issue byte-identical file requests. Omitted →
151
151
  // legacy unscoped /v1/files/... paths.
152
- this.files = new FilesService(transport, options.project, this.events);
152
+ this.files = new FilesService(transport, options.project, this.events, options.filesBase);
153
153
  this.embeddings = new EmbeddingsService(transport, this.events);
154
154
  this.realtime = new RealtimeService(transport, this.events);
155
155
  // Sync: an app on RunApps gets it unless it says no. It
@@ -161,7 +161,7 @@ export class RunApps {
161
161
  const engine = new SyncEngine({
162
162
  // Its own file service, without the event bus: sync traffic
163
163
  // must not spin the badge every minute.
164
- remote: new FilesRemote(new FilesService(transport, options.project)),
164
+ remote: new FilesRemote(new FilesService(transport, options.project, undefined, options.filesBase)),
165
165
  events: this.events,
166
166
  userId: () => auth.ownerId(),
167
167
  onAuthChange: (cb) => auth.onTokenChange(() => cb()),
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAoC,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,wEAAwE;AACxE,0EAA0E;AAC1E,qCAAqC;AACrC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAsGlD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,OAAO;IACT,IAAI,CAAc;IAClB,MAAM,CAAgB;IACtB,KAAK,CAAe;IACpB,KAAK,CAAe;IACpB,KAAK,CAAe;IACpB,QAAQ,CAAkB;IAC1B,KAAK,CAAe;IACpB,UAAU,CAAoB;IACvC,8EAA8E;IACrE,QAAQ,CAAkB;IAEnC;;;;;OAKG;IACM,IAAI,GAAuB,IAAI,CAAC;IACzC;;;;;OAKG;IACM,IAAI,GAAyG,IAAI,CAAC;IAE3H;;;;;;;;;;;OAWG;IACM,MAAM,GAAc,IAAI,SAAS,EAAE,CAAC;IAE7C,YAAY,UAAyB,EAAE;QACrC,sEAAsE;QACtE,mEAAmE;QACnE,+DAA+D;QAC/D,MAAM,QAAQ,GACZ,OAAO,CAAC,YAAY;YACpB,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,MAAM,KAAK,WAAW;gBAC1E,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QAC5C,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,IAAI,cAAwC,CAAC;QAE7C,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACrD,+DAA+D;YAC/D,sDAAsD;YACtD,OAAO,GAAG,OAAO,IAAI,wBAAwB,CAAC;YAC9C,8DAA8D;YAC9D,6DAA6D;YAC7D,6DAA6D;YAC7D,6DAA6D;YAC7D,gDAAgD;YAChD,4DAA4D;YAC5D,8DAA8D;YAC9D,MAAM,SAAS,GACb,OAAO,CAAC,iBAAiB,KAAK,SAAS;gBACrC,CAAC,CAAC,OAAO,CAAC,iBAAiB;gBAC3B,CAAC,CAAC,OAAO,CAAC,iBAAiB,KAAK,SAAS;oBACvC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB;oBAC5B,CAAC,CAAC,IAAI,CAAC;YACb,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC;gBAC3B,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,CAAC,SAAS;gBACrB,8DAA8D;gBAC9D,8DAA8D;gBAC9D,6DAA6D;gBAC7D,0CAA0C;gBAC1C,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;gBACpF,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;aAC5E,CAAC,CAAC;YACF,IAAqC,CAAC,IAAI,GAAG,IAAI,CAAC;YACnD,8DAA8D;YAC9D,mEAAmE;YACnE,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,kEAAkE;YAClE,kEAAkE;YAClE,kEAAkE;YAClE,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;YAC9B,OAAO,EAAE,OAAO,IAAI,gBAAgB;YACpC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/D,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,cAAc,EAAE,CAAC;YACvD,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,cAAc,EAAE,CAAC;YACvD,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,iEAAiE;QACjE,6DAA6D;QAC7D,kEAAkE;QAClE,4DAA4D;QAC5D,8DAA8D;QAC9D,+BAA+B;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,mEAAmE;QACnE,mEAAmE;QACnE,uCAAuC;QACvC,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5D,wDAAwD;QACxD,oEAAoE;QACpE,uBAAuB;QACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;QACpD,IAAI,QAAQ,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,UAAU,CAC3B;gBACE,4DAA4D;gBAC5D,wCAAwC;gBACxC,MAAM,EAAE,IAAI,WAAW,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACrE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE;gBAC5B,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;aACrD,EACD,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAC7C,CAAC;YACD,IAAkC,CAAC,IAAI,GAAG,MAAM,CAAC;QACpD,CAAC;IACH,CAAC;IAED;gCAC4B;IAC5B,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACH,OAAO;QACL,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,iEAAiE;IACjE,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/files.d.ts CHANGED
@@ -117,12 +117,32 @@ export declare class FilesService {
117
117
  * rejects a scope that disagrees with it, so this is a correctness
118
118
  * measure, not a permission one.
119
119
  */
120
- private readonly base;
120
+ private readonly legacyBase;
121
+ private readonly project;
122
+ private readonly filesBase;
123
+ private baseCache;
124
+ private basePending;
121
125
  constructor(transport: Transport, project?: string,
122
126
  /** When given, every call emits request:start / end / error so the
123
127
  * badge can show it in flight; the sync engine's own file traffic
124
128
  * uses a service without one. */
125
- events?: SDKEvents | undefined);
129
+ events?: SDKEvents | undefined,
130
+ /** `false`: stay on the classic /v1 paths; a string: use this as the
131
+ * per-user base instead of asking the gateway. */
132
+ filesBase?: string | false);
133
+ /**
134
+ * The URL prefix for file calls, resolved once per signed-in user.
135
+ *
136
+ * Newer gateways answer `GET /v1/files-base` with a per-user base on
137
+ * the files host — `https://files.runapps.ai/u/<hash>` — so every
138
+ * file URL is unique to its user as well as to its app, and file
139
+ * traffic leaves the main site. The `/files` or `/p/<app>/files` tail
140
+ * is appended here. A gateway without that endpoint, or a failure to
141
+ * reach it, falls back to the classic path on the main base. The
142
+ * result is cached against a fingerprint of the token: a different
143
+ * user signing in gets their own base.
144
+ */
145
+ private base;
126
146
  /** Run one file call, with badge events when the service has a bus. */
127
147
  private run;
128
148
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
package/dist/files.js CHANGED
@@ -32,18 +32,65 @@ export class FilesService {
32
32
  * rejects a scope that disagrees with it, so this is a correctness
33
33
  * measure, not a permission one.
34
34
  */
35
- base;
35
+ legacyBase;
36
+ project;
37
+ filesBase;
38
+ baseCache = null;
39
+ basePending = null;
36
40
  constructor(transport, project,
37
41
  /** When given, every call emits request:start / end / error so the
38
42
  * badge can show it in flight; the sync engine's own file traffic
39
43
  * uses a service without one. */
40
- events) {
44
+ events,
45
+ /** `false`: stay on the classic /v1 paths; a string: use this as the
46
+ * per-user base instead of asking the gateway. */
47
+ filesBase) {
41
48
  this.transport = transport;
42
49
  this.events = events;
43
- this.base = project
50
+ this.project = project;
51
+ this.filesBase = filesBase;
52
+ this.legacyBase = project
44
53
  ? "/v1/p/" + encodeURIComponent(project) + "/files"
45
54
  : "/v1/files";
46
55
  }
56
+ /**
57
+ * The URL prefix for file calls, resolved once per signed-in user.
58
+ *
59
+ * Newer gateways answer `GET /v1/files-base` with a per-user base on
60
+ * the files host — `https://files.runapps.ai/u/<hash>` — so every
61
+ * file URL is unique to its user as well as to its app, and file
62
+ * traffic leaves the main site. The `/files` or `/p/<app>/files` tail
63
+ * is appended here. A gateway without that endpoint, or a failure to
64
+ * reach it, falls back to the classic path on the main base. The
65
+ * result is cached against a fingerprint of the token: a different
66
+ * user signing in gets their own base.
67
+ */
68
+ async base() {
69
+ if (this.filesBase === false)
70
+ return this.legacyBase;
71
+ const tail = this.project ? "/p/" + encodeURIComponent(this.project) + "/files" : "/files";
72
+ if (typeof this.filesBase === "string")
73
+ return this.filesBase.replace(/\/+$/, "") + tail;
74
+ const fp = await this.transport.tokenFingerprint();
75
+ if (this.baseCache && this.baseCache.fp === fp)
76
+ return this.baseCache.base;
77
+ if (!this.basePending) {
78
+ this.basePending = (async () => {
79
+ let base = this.legacyBase;
80
+ try {
81
+ const r = await this.transport.getJSON("/v1/files-base");
82
+ if (r && typeof r.base === "string" && /^https?:\/\//i.test(r.base))
83
+ base = r.base.replace(/\/+$/, "") + tail;
84
+ }
85
+ catch {
86
+ // Older gateway or a transient failure: the classic path still works.
87
+ }
88
+ this.baseCache = { fp, base };
89
+ return base;
90
+ })().finally(() => { this.basePending = null; });
91
+ }
92
+ return this.basePending;
93
+ }
47
94
  /** Run one file call, with badge events when the service has a bus. */
48
95
  run(op, fn) {
49
96
  return this.events ? wrapEvents(this.events, { model: op, capability: "files" }, fn) : fn();
@@ -62,7 +109,7 @@ export class FilesService {
62
109
  headers["If-None-Match"] = "*";
63
110
  if (opts?.ifMatch)
64
111
  headers["If-Match"] = `"${cleanETag(opts.ifMatch)}"`;
65
- return this.run("files.put", () => this.transport.putBytes(pathToURL(this.base, path), body, {
112
+ return this.run("files.put", async () => this.transport.putBytes(pathToURL(await this.base(), path), body, {
66
113
  contentType: opts?.contentType,
67
114
  headers: Object.keys(headers).length ? headers : undefined,
68
115
  signal: opts?.signal,
@@ -93,7 +140,7 @@ export class FilesService {
93
140
  return this.run("files.read", () => this.readRaw(path, init));
94
141
  }
95
142
  async readRaw(path, init) {
96
- const { data, contentType, etag, notModified } = await this.transport.getRaw(pathToURL(this.base, path), init);
143
+ const { data, contentType, etag, notModified } = await this.transport.getRaw(pathToURL(await this.base(), path), init);
97
144
  return {
98
145
  blob: new Blob([new Uint8Array(data)], { type: contentType || "application/octet-stream" }),
99
146
  contentType,
@@ -124,7 +171,7 @@ export class FilesService {
124
171
  }
125
172
  /** Stat: HEAD-only object metadata. */
126
173
  async stat(path, init) {
127
- const { status, headers } = await this.run("files.stat", () => this.transport.head(pathToURL(this.base, path), init));
174
+ const { status, headers } = await this.run("files.stat", async () => this.transport.head(pathToURL(await this.base(), path), init));
128
175
  if (status === 404) {
129
176
  throw Object.assign(new Error("not found"), { status: 404 });
130
177
  }
@@ -142,12 +189,12 @@ export class FilesService {
142
189
  }
143
190
  /** Returns true iff the path resolves to an existing object. */
144
191
  async exists(path, init) {
145
- const { status } = await this.run("files.exists", () => this.transport.head(pathToURL(this.base, path), init));
192
+ const { status } = await this.run("files.exists", async () => this.transport.head(pathToURL(await this.base(), path), init));
146
193
  return status >= 200 && status < 400;
147
194
  }
148
195
  /** Delete the object at `path`. Idempotent. */
149
196
  async del(path, init) {
150
- await this.run("files.del", () => this.transport.deletePath(pathToURL(this.base, path), init));
197
+ await this.run("files.del", async () => this.transport.deletePath(pathToURL(await this.base(), path), init));
151
198
  }
152
199
  /** List objects. Pass an empty / omitted prefix for the root. */
153
200
  async list(opts) {
@@ -161,7 +208,7 @@ export class FilesService {
161
208
  if (opts?.glob)
162
209
  params.set("glob", opts.glob);
163
210
  const qs = params.toString();
164
- return this.run("files.list", () => this.transport.getJSON(this.base + (qs ? "?" + qs : ""), opts?.signal ? { signal: opts.signal } : undefined));
211
+ return this.run("files.list", async () => this.transport.getJSON((await this.base()) + (qs ? "?" + qs : ""), opts?.signal ? { signal: opts.signal } : undefined));
165
212
  }
166
213
  /**
167
214
  * Bulk delete: removes every object whose path starts with `prefix`
@@ -174,15 +221,15 @@ export class FilesService {
174
221
  * client.files.deleteMany({ prefix: "logs/", glob: "*.bak" })
175
222
  */
176
223
  async deleteMany(opts, init) {
177
- return this.run("files.deleteMany", () => this.transport.postJSON(this.base + "/delete", { prefix: opts.prefix ?? "", glob: opts.glob ?? "" }, init));
224
+ return this.run("files.deleteMany", async () => this.transport.postJSON((await this.base()) + "/delete", { prefix: opts.prefix ?? "", glob: opts.glob ?? "" }, init));
178
225
  }
179
226
  /** Atomic rename (copy + delete server-side). */
180
227
  async move(from, to, init) {
181
- return this.run("files.move", () => this.transport.postJSON(this.base + "/move", { from, to }, init));
228
+ return this.run("files.move", async () => this.transport.postJSON((await this.base()) + "/move", { from, to }, init));
182
229
  }
183
230
  /** Server-side copy. */
184
231
  async copy(from, to, init) {
185
- return this.run("files.copy", () => this.transport.postJSON(this.base + "/copy", { from, to }, init));
232
+ return this.run("files.copy", async () => this.transport.postJSON((await this.base()) + "/copy", { from, to }, init));
186
233
  }
187
234
  /**
188
235
  * Ask the gateway to fetch `srcURL` and store the body at `path`.
@@ -190,7 +237,7 @@ export class FilesService {
190
237
  * must be a public http(s) URL (private/loopback hosts rejected).
191
238
  */
192
239
  async putFromURL(path, srcURL, opts) {
193
- return this.run("files.putFromURL", () => this.transport.postJSON(this.base + "/put-url", {
240
+ return this.run("files.putFromURL", async () => this.transport.postJSON((await this.base()) + "/put-url", {
194
241
  path,
195
242
  src_url: srcURL,
196
243
  content_type: opts?.contentType,
@@ -218,13 +265,13 @@ export class FilesService {
218
265
  async batchRaw(ops, init) {
219
266
  const chunkSize = 30;
220
267
  if (ops.length <= chunkSize) {
221
- const resp = await this.transport.postJSON(this.base + "/batch", { ops }, init);
268
+ const resp = await this.transport.postJSON((await this.base()) + "/batch", { ops }, init);
222
269
  return resp.results;
223
270
  }
224
271
  const all = [];
225
272
  for (let i = 0; i < ops.length; i += chunkSize) {
226
273
  const chunk = ops.slice(i, i + chunkSize);
227
- const resp = await this.transport.postJSON(this.base + "/batch", { ops: chunk }, init);
274
+ const resp = await this.transport.postJSON((await this.base()) + "/batch", { ops: chunk }, init);
228
275
  all.push(...resp.results);
229
276
  }
230
277
  return all;
package/dist/files.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,qEAAqE;AACrE,gEAAgE;AAChE,iDAAiD;AACjD,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAE1C,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAsF7C,SAAS,SAAS,CAAC,IAAY,EAAE,CAAS;IACxC,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,OAAO,IAAI,GAAG,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,OAAO,YAAY;IAqBJ;IAKA;IAzBnB;;;;;;;;;;;;;;;;OAgBG;IACc,IAAI,CAAS;IAE9B,YACmB,SAAoB,EACrC,OAAgB;IAChB;;sCAEkC;IACjB,MAAkB;QALlB,cAAS,GAAT,SAAS,CAAW;QAKpB,WAAM,GAAN,MAAM,CAAY;QAEnC,IAAI,CAAC,IAAI,GAAG,OAAO;YACjB,CAAC,CAAC,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,QAAQ;YACnD,CAAC,CAAC,WAAW,CAAC;IAClB,CAAC;IAED,uEAAuE;IAC/D,GAAG,CAAI,EAAU,EAAE,EAAoB;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC9F,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,GAAG,CACP,IAAY,EACZ,IAAc,EACd,IAAiB;QAEjB,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,IAAI,EAAE,WAAW;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;QACtD,IAAI,IAAI,EAAE,OAAO;YAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QACxE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAa,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE;YACvG,WAAW,EAAE,IAAI,EAAE,WAAW;YAC9B,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;YAC1D,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,SAAS,CACb,IAAY,EACZ,OAAe,EACf,IAAiB;QAEjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE;YAC7B,GAAG,IAAI;YACP,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,2BAA2B;SAC9D,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,IAA+B;QACrD,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,IAAqD;QAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAAqD;QACvF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/G,OAAO;YACL,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,IAAI,0BAA0B,EAAE,CAAC;YAC3F,WAAW;YACX,IAAI;YACJ,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CACZ,IAAY,EACZ,IAAqD;QAErD,IAAI,CAAuC,CAAC;QAC5C,IAAI,CAAC;YACH,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAK,CAA8C,EAAE,UAAU,KAAK,GAAG;gBAClE,CAA8C,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;gBACpE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC/C,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;QACD,IAAI,CAAC,CAAC,WAAW;YAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAChF,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvE,CAAC;IAED,uCAAuC;IACvC,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,IAA+B;QACtD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QACtH,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YAClB,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAChE,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI;YACxC,IAAI;YACJ,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,SAAS;YACtD,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,SAAS;YAChE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE;SACrC,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,IAA+B;QACxD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/G,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC;IACvC,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,IAA+B;QACrD,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAkB,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAClH,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,IAAI,CAAC,IAAkB;QAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,IAAI,EAAE,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,IAAI,EAAE,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,IAAI,EAAE,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,IAAI,IAAI,EAAE,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CACxD,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CACnD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CACd,IAAwC,EACxC,IAA+B;QAE/B,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC/D,IAAI,CAAC,IAAI,GAAG,SAAS,EACrB,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EACpD,IAAI,CACL,CAAC,CAAC;IACL,CAAC;IAED,iDAAiD;IACjD,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,EAAU,EAAE,IAA+B;QAClE,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAa,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACpH,CAAC;IAED,wBAAwB;IACxB,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,EAAU,EAAE,IAA+B;QAClE,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAa,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACpH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CACd,IAAY,EACZ,MAAc,EACd,IAAwB;QAExB,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC/D,IAAI,CAAC,IAAI,GAAG,UAAU,EACtB;YACE,IAAI;YACJ,OAAO,EAAE,MAAM;YACf,YAAY,EAAE,IAAI,EAAE,WAAW;YAC/B,aAAa,EAAE,IAAI,EAAE,WAAW;YAChC,QAAQ,EAAE,IAAI,EAAE,OAAO;SACxB,EACD,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CACnD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK,CACT,GAAc,EACd,IAA+B;QAE/B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,GAAc,EAAE,IAA+B;QACpE,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CACxC,IAAI,CAAC,IAAI,GAAG,QAAQ,EACpB,EAAE,GAAG,EAAE,EACP,IAAI,CACL,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QACD,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CACxC,IAAI,CAAC,IAAI,GAAG,QAAQ,EACpB,EAAE,GAAG,EAAE,KAAK,EAAE,EACd,IAAI,CACL,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}