@runappsai/sdk 0.7.8 → 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/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":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}