@uniformdev/next-app-router 20.50.2-alpha.149 → 20.50.2-alpha.180

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/index.mjs CHANGED
@@ -4,6 +4,10 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __typeError = (msg) => {
8
+ throw TypeError(msg);
9
+ };
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
11
  var __commonJS = (cb, mod) => function __require() {
8
12
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
9
13
  };
@@ -23,12 +27,25 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
23
27
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
24
28
  mod
25
29
  ));
30
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
31
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
32
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
33
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
34
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
35
+ var __privateWrapper = (obj, member, setter, getter) => ({
36
+ set _(value) {
37
+ __privateSet(obj, member, value, setter);
38
+ },
39
+ get _() {
40
+ return __privateGet(obj, member, getter);
41
+ }
42
+ });
26
43
 
27
44
  // ../../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js
28
45
  var require_yocto_queue = __commonJS({
29
46
  "../../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js"(exports, module) {
30
47
  "use strict";
31
- var Node = class {
48
+ var Node2 = class {
32
49
  /// value;
33
50
  /// next;
34
51
  constructor(value) {
@@ -36,7 +53,7 @@ var require_yocto_queue = __commonJS({
36
53
  this.next = void 0;
37
54
  }
38
55
  };
39
- var Queue = class {
56
+ var Queue2 = class {
40
57
  // TODO: Use private class fields when targeting Node.js 12.
41
58
  // #_head;
42
59
  // #_tail;
@@ -45,7 +62,7 @@ var require_yocto_queue = __commonJS({
45
62
  this.clear();
46
63
  }
47
64
  enqueue(value) {
48
- const node = new Node(value);
65
+ const node = new Node2(value);
49
66
  if (this._head) {
50
67
  this._tail.next = node;
51
68
  this._tail = node;
@@ -80,7 +97,7 @@ var require_yocto_queue = __commonJS({
80
97
  }
81
98
  }
82
99
  };
83
- module.exports = Queue;
100
+ module.exports = Queue2;
84
101
  }
85
102
  });
86
103
 
@@ -88,12 +105,12 @@ var require_yocto_queue = __commonJS({
88
105
  var require_p_limit = __commonJS({
89
106
  "../../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js"(exports, module) {
90
107
  "use strict";
91
- var Queue = require_yocto_queue();
92
- var pLimit2 = (concurrency) => {
108
+ var Queue2 = require_yocto_queue();
109
+ var pLimit3 = (concurrency) => {
93
110
  if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) {
94
111
  throw new TypeError("Expected `concurrency` to be a number from 1 and up");
95
112
  }
96
- const queue = new Queue();
113
+ const queue = new Queue2();
97
114
  let activeCount = 0;
98
115
  const next = () => {
99
116
  activeCount--;
@@ -138,7 +155,238 @@ var require_p_limit = __commonJS({
138
155
  });
139
156
  return generator;
140
157
  };
141
- module.exports = pLimit2;
158
+ module.exports = pLimit3;
159
+ }
160
+ });
161
+
162
+ // ../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.js
163
+ var require_retry_operation = __commonJS({
164
+ "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.js"(exports, module) {
165
+ "use strict";
166
+ function RetryOperation(timeouts, options) {
167
+ if (typeof options === "boolean") {
168
+ options = { forever: options };
169
+ }
170
+ this._originalTimeouts = JSON.parse(JSON.stringify(timeouts));
171
+ this._timeouts = timeouts;
172
+ this._options = options || {};
173
+ this._maxRetryTime = options && options.maxRetryTime || Infinity;
174
+ this._fn = null;
175
+ this._errors = [];
176
+ this._attempts = 1;
177
+ this._operationTimeout = null;
178
+ this._operationTimeoutCb = null;
179
+ this._timeout = null;
180
+ this._operationStart = null;
181
+ this._timer = null;
182
+ if (this._options.forever) {
183
+ this._cachedTimeouts = this._timeouts.slice(0);
184
+ }
185
+ }
186
+ module.exports = RetryOperation;
187
+ RetryOperation.prototype.reset = function() {
188
+ this._attempts = 1;
189
+ this._timeouts = this._originalTimeouts.slice(0);
190
+ };
191
+ RetryOperation.prototype.stop = function() {
192
+ if (this._timeout) {
193
+ clearTimeout(this._timeout);
194
+ }
195
+ if (this._timer) {
196
+ clearTimeout(this._timer);
197
+ }
198
+ this._timeouts = [];
199
+ this._cachedTimeouts = null;
200
+ };
201
+ RetryOperation.prototype.retry = function(err) {
202
+ if (this._timeout) {
203
+ clearTimeout(this._timeout);
204
+ }
205
+ if (!err) {
206
+ return false;
207
+ }
208
+ var currentTime = (/* @__PURE__ */ new Date()).getTime();
209
+ if (err && currentTime - this._operationStart >= this._maxRetryTime) {
210
+ this._errors.push(err);
211
+ this._errors.unshift(new Error("RetryOperation timeout occurred"));
212
+ return false;
213
+ }
214
+ this._errors.push(err);
215
+ var timeout = this._timeouts.shift();
216
+ if (timeout === void 0) {
217
+ if (this._cachedTimeouts) {
218
+ this._errors.splice(0, this._errors.length - 1);
219
+ timeout = this._cachedTimeouts.slice(-1);
220
+ } else {
221
+ return false;
222
+ }
223
+ }
224
+ var self = this;
225
+ this._timer = setTimeout(function() {
226
+ self._attempts++;
227
+ if (self._operationTimeoutCb) {
228
+ self._timeout = setTimeout(function() {
229
+ self._operationTimeoutCb(self._attempts);
230
+ }, self._operationTimeout);
231
+ if (self._options.unref) {
232
+ self._timeout.unref();
233
+ }
234
+ }
235
+ self._fn(self._attempts);
236
+ }, timeout);
237
+ if (this._options.unref) {
238
+ this._timer.unref();
239
+ }
240
+ return true;
241
+ };
242
+ RetryOperation.prototype.attempt = function(fn, timeoutOps) {
243
+ this._fn = fn;
244
+ if (timeoutOps) {
245
+ if (timeoutOps.timeout) {
246
+ this._operationTimeout = timeoutOps.timeout;
247
+ }
248
+ if (timeoutOps.cb) {
249
+ this._operationTimeoutCb = timeoutOps.cb;
250
+ }
251
+ }
252
+ var self = this;
253
+ if (this._operationTimeoutCb) {
254
+ this._timeout = setTimeout(function() {
255
+ self._operationTimeoutCb();
256
+ }, self._operationTimeout);
257
+ }
258
+ this._operationStart = (/* @__PURE__ */ new Date()).getTime();
259
+ this._fn(this._attempts);
260
+ };
261
+ RetryOperation.prototype.try = function(fn) {
262
+ console.log("Using RetryOperation.try() is deprecated");
263
+ this.attempt(fn);
264
+ };
265
+ RetryOperation.prototype.start = function(fn) {
266
+ console.log("Using RetryOperation.start() is deprecated");
267
+ this.attempt(fn);
268
+ };
269
+ RetryOperation.prototype.start = RetryOperation.prototype.try;
270
+ RetryOperation.prototype.errors = function() {
271
+ return this._errors;
272
+ };
273
+ RetryOperation.prototype.attempts = function() {
274
+ return this._attempts;
275
+ };
276
+ RetryOperation.prototype.mainError = function() {
277
+ if (this._errors.length === 0) {
278
+ return null;
279
+ }
280
+ var counts = {};
281
+ var mainError = null;
282
+ var mainErrorCount = 0;
283
+ for (var i = 0; i < this._errors.length; i++) {
284
+ var error = this._errors[i];
285
+ var message = error.message;
286
+ var count = (counts[message] || 0) + 1;
287
+ counts[message] = count;
288
+ if (count >= mainErrorCount) {
289
+ mainError = error;
290
+ mainErrorCount = count;
291
+ }
292
+ }
293
+ return mainError;
294
+ };
295
+ }
296
+ });
297
+
298
+ // ../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.js
299
+ var require_retry = __commonJS({
300
+ "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.js"(exports) {
301
+ "use strict";
302
+ var RetryOperation = require_retry_operation();
303
+ exports.operation = function(options) {
304
+ var timeouts = exports.timeouts(options);
305
+ return new RetryOperation(timeouts, {
306
+ forever: options && (options.forever || options.retries === Infinity),
307
+ unref: options && options.unref,
308
+ maxRetryTime: options && options.maxRetryTime
309
+ });
310
+ };
311
+ exports.timeouts = function(options) {
312
+ if (options instanceof Array) {
313
+ return [].concat(options);
314
+ }
315
+ var opts = {
316
+ retries: 10,
317
+ factor: 2,
318
+ minTimeout: 1 * 1e3,
319
+ maxTimeout: Infinity,
320
+ randomize: false
321
+ };
322
+ for (var key in options) {
323
+ opts[key] = options[key];
324
+ }
325
+ if (opts.minTimeout > opts.maxTimeout) {
326
+ throw new Error("minTimeout is greater than maxTimeout");
327
+ }
328
+ var timeouts = [];
329
+ for (var i = 0; i < opts.retries; i++) {
330
+ timeouts.push(this.createTimeout(i, opts));
331
+ }
332
+ if (options && options.forever && !timeouts.length) {
333
+ timeouts.push(this.createTimeout(i, opts));
334
+ }
335
+ timeouts.sort(function(a, b) {
336
+ return a - b;
337
+ });
338
+ return timeouts;
339
+ };
340
+ exports.createTimeout = function(attempt, opts) {
341
+ var random = opts.randomize ? Math.random() + 1 : 1;
342
+ var timeout = Math.round(random * Math.max(opts.minTimeout, 1) * Math.pow(opts.factor, attempt));
343
+ timeout = Math.min(timeout, opts.maxTimeout);
344
+ return timeout;
345
+ };
346
+ exports.wrap = function(obj, options, methods) {
347
+ if (options instanceof Array) {
348
+ methods = options;
349
+ options = null;
350
+ }
351
+ if (!methods) {
352
+ methods = [];
353
+ for (var key in obj) {
354
+ if (typeof obj[key] === "function") {
355
+ methods.push(key);
356
+ }
357
+ }
358
+ }
359
+ for (var i = 0; i < methods.length; i++) {
360
+ var method = methods[i];
361
+ var original = obj[method];
362
+ obj[method] = function retryWrapper(original2) {
363
+ var op = exports.operation(options);
364
+ var args = Array.prototype.slice.call(arguments, 1);
365
+ var callback = args.pop();
366
+ args.push(function(err) {
367
+ if (op.retry(err)) {
368
+ return;
369
+ }
370
+ if (err) {
371
+ arguments[0] = op.mainError();
372
+ }
373
+ callback.apply(this, arguments);
374
+ });
375
+ op.attempt(function() {
376
+ original2.apply(obj, args);
377
+ });
378
+ }.bind(obj, original);
379
+ obj[method].options = options;
380
+ }
381
+ };
382
+ }
383
+ });
384
+
385
+ // ../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.js
386
+ var require_retry2 = __commonJS({
387
+ "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.js"(exports, module) {
388
+ "use strict";
389
+ module.exports = require_retry();
142
390
  }
143
391
  });
144
392
 
@@ -151,14 +399,14 @@ import "server-only";
151
399
  // ../context/dist/api/api.mjs
152
400
  var import_p_limit = __toESM(require_p_limit(), 1);
153
401
  var __defProp2 = Object.defineProperty;
154
- var __typeError = (msg) => {
402
+ var __typeError2 = (msg) => {
155
403
  throw TypeError(msg);
156
404
  };
157
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
158
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
159
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
160
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
161
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
405
+ var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
406
+ var __publicField2 = (obj, key, value) => __defNormalProp2(obj, typeof key !== "symbol" ? key + "" : key, value);
407
+ var __accessCheck2 = (obj, member, msg) => member.has(obj) || __typeError2("Cannot " + msg);
408
+ var __privateGet2 = (obj, member, getter) => (__accessCheck2(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
409
+ var __privateAdd2 = (obj, member, value) => member.has(obj) ? __typeError2("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
162
410
  var defaultLimitPolicy = (0, import_p_limit.default)(6);
163
411
  var ApiClientError = class _ApiClientError extends Error {
164
412
  constructor(errorMessage, fetchMethod, fetchUri, statusCode, statusText, requestId) {
@@ -166,18 +414,18 @@ var ApiClientError = class _ApiClientError extends Error {
166
414
  `${errorMessage}
167
415
  ${statusCode}${statusText ? " " + statusText : ""} (${fetchMethod} ${fetchUri}${requestId ? ` Request ID: ${requestId}` : ""})`
168
416
  );
169
- this.errorMessage = errorMessage;
170
- this.fetchMethod = fetchMethod;
171
- this.fetchUri = fetchUri;
172
- this.statusCode = statusCode;
173
- this.statusText = statusText;
174
- this.requestId = requestId;
417
+ __publicField2(this, "errorMessage", errorMessage);
418
+ __publicField2(this, "fetchMethod", fetchMethod);
419
+ __publicField2(this, "fetchUri", fetchUri);
420
+ __publicField2(this, "statusCode", statusCode);
421
+ __publicField2(this, "statusText", statusText);
422
+ __publicField2(this, "requestId", requestId);
175
423
  Object.setPrototypeOf(this, _ApiClientError.prototype);
176
424
  }
177
425
  };
178
426
  var ApiClient = class _ApiClient {
179
427
  constructor(options) {
180
- __publicField(this, "options");
428
+ __publicField2(this, "options");
181
429
  var _a, _b, _c, _d, _e;
182
430
  if (!options.apiKey && !options.bearerToken) {
183
431
  throw new Error("You must provide an API key or a bearer token");
@@ -347,12 +595,12 @@ var _AggregateClient = class _AggregateClient2 extends ApiClient {
347
595
  /** Fetches all aggregates for a project */
348
596
  async get(options) {
349
597
  const { projectId } = this.options;
350
- const fetchUri = this.createUrl(__privateGet(_AggregateClient2, _url), { ...options, projectId });
598
+ const fetchUri = this.createUrl(__privateGet2(_AggregateClient2, _url), { ...options, projectId });
351
599
  return await this.apiClient(fetchUri);
352
600
  }
353
601
  /** Updates or creates (based on id) an Aggregate */
354
602
  async upsert(body) {
355
- const fetchUri = this.createUrl(__privateGet(_AggregateClient2, _url));
603
+ const fetchUri = this.createUrl(__privateGet2(_AggregateClient2, _url));
356
604
  await this.apiClient(fetchUri, {
357
605
  method: "PUT",
358
606
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -361,7 +609,7 @@ var _AggregateClient = class _AggregateClient2 extends ApiClient {
361
609
  }
362
610
  /** Deletes an Aggregate */
363
611
  async remove(body) {
364
- const fetchUri = this.createUrl(__privateGet(_AggregateClient2, _url));
612
+ const fetchUri = this.createUrl(__privateGet2(_AggregateClient2, _url));
365
613
  await this.apiClient(fetchUri, {
366
614
  method: "DELETE",
367
615
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -370,7 +618,7 @@ var _AggregateClient = class _AggregateClient2 extends ApiClient {
370
618
  }
371
619
  };
372
620
  _url = /* @__PURE__ */ new WeakMap();
373
- __privateAdd(_AggregateClient, _url, "/api/v2/aggregate");
621
+ __privateAdd2(_AggregateClient, _url, "/api/v2/aggregate");
374
622
  var _url2;
375
623
  var _DimensionClient = class _DimensionClient2 extends ApiClient {
376
624
  constructor(options) {
@@ -379,12 +627,12 @@ var _DimensionClient = class _DimensionClient2 extends ApiClient {
379
627
  /** Fetches the known score dimensions for a project */
380
628
  async get(options) {
381
629
  const { projectId } = this.options;
382
- const fetchUri = this.createUrl(__privateGet(_DimensionClient2, _url2), { ...options, projectId });
630
+ const fetchUri = this.createUrl(__privateGet2(_DimensionClient2, _url2), { ...options, projectId });
383
631
  return await this.apiClient(fetchUri);
384
632
  }
385
633
  };
386
634
  _url2 = /* @__PURE__ */ new WeakMap();
387
- __privateAdd(_DimensionClient, _url2, "/api/v2/dimension");
635
+ __privateAdd2(_DimensionClient, _url2, "/api/v2/dimension");
388
636
  var _url3;
389
637
  var _valueUrl;
390
638
  var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
@@ -394,12 +642,12 @@ var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
394
642
  /** Fetches all enrichments and values for a project, grouped by category */
395
643
  async get(options) {
396
644
  const { projectId } = this.options;
397
- const fetchUri = this.createUrl(__privateGet(_EnrichmentClient2, _url3), { ...options, projectId });
645
+ const fetchUri = this.createUrl(__privateGet2(_EnrichmentClient2, _url3), { ...options, projectId });
398
646
  return await this.apiClient(fetchUri);
399
647
  }
400
648
  /** Updates or creates (based on id) an enrichment category */
401
649
  async upsertCategory(body) {
402
- const fetchUri = this.createUrl(__privateGet(_EnrichmentClient2, _url3));
650
+ const fetchUri = this.createUrl(__privateGet2(_EnrichmentClient2, _url3));
403
651
  await this.apiClient(fetchUri, {
404
652
  method: "PUT",
405
653
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -408,7 +656,7 @@ var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
408
656
  }
409
657
  /** Deletes an enrichment category */
410
658
  async removeCategory(body) {
411
- const fetchUri = this.createUrl(__privateGet(_EnrichmentClient2, _url3));
659
+ const fetchUri = this.createUrl(__privateGet2(_EnrichmentClient2, _url3));
412
660
  await this.apiClient(fetchUri, {
413
661
  method: "DELETE",
414
662
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -417,7 +665,7 @@ var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
417
665
  }
418
666
  /** Updates or creates (based on id) an enrichment value within an enrichment category */
419
667
  async upsertValue(body) {
420
- const fetchUri = this.createUrl(__privateGet(_EnrichmentClient2, _valueUrl));
668
+ const fetchUri = this.createUrl(__privateGet2(_EnrichmentClient2, _valueUrl));
421
669
  await this.apiClient(fetchUri, {
422
670
  method: "PUT",
423
671
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -426,7 +674,7 @@ var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
426
674
  }
427
675
  /** Deletes an enrichment value within an enrichment category. The category is left alone. */
428
676
  async removeValue(body) {
429
- const fetchUri = this.createUrl(__privateGet(_EnrichmentClient2, _valueUrl));
677
+ const fetchUri = this.createUrl(__privateGet2(_EnrichmentClient2, _valueUrl));
430
678
  await this.apiClient(fetchUri, {
431
679
  method: "DELETE",
432
680
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -436,8 +684,8 @@ var _EnrichmentClient = class _EnrichmentClient2 extends ApiClient {
436
684
  };
437
685
  _url3 = /* @__PURE__ */ new WeakMap();
438
686
  _valueUrl = /* @__PURE__ */ new WeakMap();
439
- __privateAdd(_EnrichmentClient, _url3, "/api/v1/enrichments");
440
- __privateAdd(_EnrichmentClient, _valueUrl, "/api/v1/enrichment-values");
687
+ __privateAdd2(_EnrichmentClient, _url3, "/api/v1/enrichments");
688
+ __privateAdd2(_EnrichmentClient, _valueUrl, "/api/v1/enrichment-values");
441
689
  var _url4;
442
690
  var _ManifestClient = class _ManifestClient2 extends ApiClient {
443
691
  constructor(options) {
@@ -446,7 +694,7 @@ var _ManifestClient = class _ManifestClient2 extends ApiClient {
446
694
  /** Fetches the Context manifest for a project */
447
695
  async get(options) {
448
696
  const { projectId } = this.options;
449
- const fetchUri = this.createUrl(__privateGet(_ManifestClient2, _url4), { ...options, projectId });
697
+ const fetchUri = this.createUrl(__privateGet2(_ManifestClient2, _url4), { ...options, projectId });
450
698
  return await this.apiClient(fetchUri);
451
699
  }
452
700
  /** Publishes the Context manifest for a project */
@@ -460,7 +708,7 @@ var _ManifestClient = class _ManifestClient2 extends ApiClient {
460
708
  }
461
709
  };
462
710
  _url4 = /* @__PURE__ */ new WeakMap();
463
- __privateAdd(_ManifestClient, _url4, "/api/v2/manifest");
711
+ __privateAdd2(_ManifestClient, _url4, "/api/v2/manifest");
464
712
  var ManifestClient = _ManifestClient;
465
713
  var _url5;
466
714
  var _QuirkClient = class _QuirkClient2 extends ApiClient {
@@ -470,480 +718,281 @@ var _QuirkClient = class _QuirkClient2 extends ApiClient {
470
718
  /** Fetches all Quirks for a project */
471
719
  async get(options) {
472
720
  const { projectId } = this.options;
473
- const fetchUri = this.createUrl(__privateGet(_QuirkClient2, _url5), { ...options, projectId });
721
+ const fetchUri = this.createUrl(__privateGet2(_QuirkClient2, _url5), { ...options, projectId });
474
722
  return await this.apiClient(fetchUri);
475
723
  }
476
724
  /** Updates or creates (based on id) a Quirk */
477
725
  async upsert(body) {
478
- const fetchUri = this.createUrl(__privateGet(_QuirkClient2, _url5));
726
+ const fetchUri = this.createUrl(__privateGet2(_QuirkClient2, _url5));
479
727
  await this.apiClient(fetchUri, {
480
728
  method: "PUT",
481
729
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
482
730
  expectNoContent: true
483
731
  });
484
732
  }
485
- /** Deletes a Quirk */
486
- async remove(body) {
487
- const fetchUri = this.createUrl(__privateGet(_QuirkClient2, _url5));
488
- await this.apiClient(fetchUri, {
489
- method: "DELETE",
490
- body: JSON.stringify({ ...body, projectId: this.options.projectId }),
491
- expectNoContent: true
492
- });
493
- }
494
- };
495
- _url5 = /* @__PURE__ */ new WeakMap();
496
- __privateAdd(_QuirkClient, _url5, "/api/v2/quirk");
497
- var _url6;
498
- var _SignalClient = class _SignalClient2 extends ApiClient {
499
- constructor(options) {
500
- super(options);
501
- }
502
- /** Fetches all Signals for a project */
503
- async get(options) {
504
- const { projectId } = this.options;
505
- const fetchUri = this.createUrl(__privateGet(_SignalClient2, _url6), { ...options, projectId });
506
- return await this.apiClient(fetchUri);
507
- }
508
- /** Updates or creates (based on id) a Signal */
509
- async upsert(body) {
510
- const fetchUri = this.createUrl(__privateGet(_SignalClient2, _url6));
511
- await this.apiClient(fetchUri, {
512
- method: "PUT",
513
- body: JSON.stringify({ ...body, projectId: this.options.projectId }),
514
- expectNoContent: true
515
- });
516
- }
517
- /** Deletes a Signal */
518
- async remove(body) {
519
- const fetchUri = this.createUrl(__privateGet(_SignalClient2, _url6));
520
- await this.apiClient(fetchUri, {
521
- method: "DELETE",
522
- body: JSON.stringify({ ...body, projectId: this.options.projectId }),
523
- expectNoContent: true
524
- });
525
- }
526
- };
527
- _url6 = /* @__PURE__ */ new WeakMap();
528
- __privateAdd(_SignalClient, _url6, "/api/v2/signal");
529
- var _url7;
530
- var _TestClient = class _TestClient2 extends ApiClient {
531
- constructor(options) {
532
- super(options);
533
- }
534
- /** Fetches all Tests for a project */
535
- async get(options) {
536
- const { projectId } = this.options;
537
- const fetchUri = this.createUrl(__privateGet(_TestClient2, _url7), { ...options, projectId });
538
- return await this.apiClient(fetchUri);
539
- }
540
- /** Updates or creates (based on id) a Test */
541
- async upsert(body) {
542
- const fetchUri = this.createUrl(__privateGet(_TestClient2, _url7));
543
- await this.apiClient(fetchUri, {
544
- method: "PUT",
545
- body: JSON.stringify({ ...body, projectId: this.options.projectId }),
546
- expectNoContent: true
547
- });
548
- }
549
- /** Deletes a Test */
550
- async remove(body) {
551
- const fetchUri = this.createUrl(__privateGet(_TestClient2, _url7));
552
- await this.apiClient(fetchUri, {
553
- method: "DELETE",
554
- body: JSON.stringify({ ...body, projectId: this.options.projectId }),
555
- expectNoContent: true
556
- });
557
- }
558
- };
559
- _url7 = /* @__PURE__ */ new WeakMap();
560
- __privateAdd(_TestClient, _url7, "/api/v2/test");
561
-
562
- // ../canvas/dist/index.mjs
563
- var __create2 = Object.create;
564
- var __defProp3 = Object.defineProperty;
565
- var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
566
- var __getOwnPropNames2 = Object.getOwnPropertyNames;
567
- var __getProtoOf2 = Object.getPrototypeOf;
568
- var __hasOwnProp2 = Object.prototype.hasOwnProperty;
569
- var __typeError2 = (msg) => {
570
- throw TypeError(msg);
571
- };
572
- var __commonJS2 = (cb, mod) => function __require() {
573
- return mod || (0, cb[__getOwnPropNames2(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
574
- };
575
- var __copyProps2 = (to, from, except, desc) => {
576
- if (from && typeof from === "object" || typeof from === "function") {
577
- for (let key of __getOwnPropNames2(from))
578
- if (!__hasOwnProp2.call(to, key) && key !== except)
579
- __defProp3(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
580
- }
581
- return to;
582
- };
583
- var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
584
- // If the importer is in node compatibility mode or this is not an ESM
585
- // file that has been converted to a CommonJS file using a Babel-
586
- // compatible transform (i.e. "__esModule" has not been set), then set
587
- // "default" to the CommonJS "module.exports" for node compatibility.
588
- isNodeMode || !mod || !mod.__esModule ? __defProp3(target, "default", { value: mod, enumerable: true }) : target,
589
- mod
590
- ));
591
- var __accessCheck2 = (obj, member, msg) => member.has(obj) || __typeError2("Cannot " + msg);
592
- var __privateGet2 = (obj, member, getter) => (__accessCheck2(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
593
- var __privateAdd2 = (obj, member, value) => member.has(obj) ? __typeError2("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
594
- var require_yocto_queue2 = __commonJS2({
595
- "../../node_modules/.pnpm/yocto-queue@0.1.0/node_modules/yocto-queue/index.js"(exports, module) {
596
- "use strict";
597
- var Node = class {
598
- /// value;
599
- /// next;
600
- constructor(value) {
601
- this.value = value;
602
- this.next = void 0;
603
- }
604
- };
605
- var Queue = class {
606
- // TODO: Use private class fields when targeting Node.js 12.
607
- // #_head;
608
- // #_tail;
609
- // #_size;
610
- constructor() {
611
- this.clear();
612
- }
613
- enqueue(value) {
614
- const node = new Node(value);
615
- if (this._head) {
616
- this._tail.next = node;
617
- this._tail = node;
618
- } else {
619
- this._head = node;
620
- this._tail = node;
621
- }
622
- this._size++;
623
- }
624
- dequeue() {
625
- const current = this._head;
626
- if (!current) {
627
- return;
628
- }
629
- this._head = this._head.next;
630
- this._size--;
631
- return current.value;
632
- }
633
- clear() {
634
- this._head = void 0;
635
- this._tail = void 0;
636
- this._size = 0;
637
- }
638
- get size() {
639
- return this._size;
640
- }
641
- *[Symbol.iterator]() {
642
- let current = this._head;
643
- while (current) {
644
- yield current.value;
645
- current = current.next;
646
- }
647
- }
648
- };
649
- module.exports = Queue;
650
- }
651
- });
652
- var require_p_limit2 = __commonJS2({
653
- "../../node_modules/.pnpm/p-limit@3.1.0/node_modules/p-limit/index.js"(exports, module) {
654
- "use strict";
655
- var Queue = require_yocto_queue2();
656
- var pLimit2 = (concurrency) => {
657
- if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) {
658
- throw new TypeError("Expected `concurrency` to be a number from 1 and up");
659
- }
660
- const queue = new Queue();
661
- let activeCount = 0;
662
- const next = () => {
663
- activeCount--;
664
- if (queue.size > 0) {
665
- queue.dequeue()();
666
- }
667
- };
668
- const run = async (fn, resolve, ...args) => {
669
- activeCount++;
670
- const result = (async () => fn(...args))();
671
- resolve(result);
672
- try {
673
- await result;
674
- } catch (e) {
675
- }
676
- next();
677
- };
678
- const enqueue = (fn, resolve, ...args) => {
679
- queue.enqueue(run.bind(null, fn, resolve, ...args));
680
- (async () => {
681
- await Promise.resolve();
682
- if (activeCount < concurrency && queue.size > 0) {
683
- queue.dequeue()();
684
- }
685
- })();
686
- };
687
- const generator = (fn, ...args) => new Promise((resolve) => {
688
- enqueue(fn, resolve, ...args);
689
- });
690
- Object.defineProperties(generator, {
691
- activeCount: {
692
- get: () => activeCount
693
- },
694
- pendingCount: {
695
- get: () => queue.size
696
- },
697
- clearQueue: {
698
- value: () => {
699
- queue.clear();
700
- }
701
- }
702
- });
703
- return generator;
704
- };
705
- module.exports = pLimit2;
706
- }
707
- });
708
- var require_retry_operation = __commonJS2({
709
- "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.js"(exports, module) {
710
- "use strict";
711
- function RetryOperation(timeouts, options) {
712
- if (typeof options === "boolean") {
713
- options = { forever: options };
714
- }
715
- this._originalTimeouts = JSON.parse(JSON.stringify(timeouts));
716
- this._timeouts = timeouts;
717
- this._options = options || {};
718
- this._maxRetryTime = options && options.maxRetryTime || Infinity;
719
- this._fn = null;
720
- this._errors = [];
721
- this._attempts = 1;
722
- this._operationTimeout = null;
723
- this._operationTimeoutCb = null;
724
- this._timeout = null;
725
- this._operationStart = null;
726
- this._timer = null;
727
- if (this._options.forever) {
728
- this._cachedTimeouts = this._timeouts.slice(0);
729
- }
730
- }
731
- module.exports = RetryOperation;
732
- RetryOperation.prototype.reset = function() {
733
- this._attempts = 1;
734
- this._timeouts = this._originalTimeouts.slice(0);
735
- };
736
- RetryOperation.prototype.stop = function() {
737
- if (this._timeout) {
738
- clearTimeout(this._timeout);
739
- }
740
- if (this._timer) {
741
- clearTimeout(this._timer);
742
- }
743
- this._timeouts = [];
744
- this._cachedTimeouts = null;
745
- };
746
- RetryOperation.prototype.retry = function(err) {
747
- if (this._timeout) {
748
- clearTimeout(this._timeout);
749
- }
750
- if (!err) {
751
- return false;
752
- }
753
- var currentTime = (/* @__PURE__ */ new Date()).getTime();
754
- if (err && currentTime - this._operationStart >= this._maxRetryTime) {
755
- this._errors.push(err);
756
- this._errors.unshift(new Error("RetryOperation timeout occurred"));
757
- return false;
758
- }
759
- this._errors.push(err);
760
- var timeout = this._timeouts.shift();
761
- if (timeout === void 0) {
762
- if (this._cachedTimeouts) {
763
- this._errors.splice(0, this._errors.length - 1);
764
- timeout = this._cachedTimeouts.slice(-1);
765
- } else {
766
- return false;
767
- }
768
- }
769
- var self = this;
770
- this._timer = setTimeout(function() {
771
- self._attempts++;
772
- if (self._operationTimeoutCb) {
773
- self._timeout = setTimeout(function() {
774
- self._operationTimeoutCb(self._attempts);
775
- }, self._operationTimeout);
776
- if (self._options.unref) {
777
- self._timeout.unref();
778
- }
779
- }
780
- self._fn(self._attempts);
781
- }, timeout);
782
- if (this._options.unref) {
783
- this._timer.unref();
784
- }
785
- return true;
786
- };
787
- RetryOperation.prototype.attempt = function(fn, timeoutOps) {
788
- this._fn = fn;
789
- if (timeoutOps) {
790
- if (timeoutOps.timeout) {
791
- this._operationTimeout = timeoutOps.timeout;
792
- }
793
- if (timeoutOps.cb) {
794
- this._operationTimeoutCb = timeoutOps.cb;
795
- }
796
- }
797
- var self = this;
798
- if (this._operationTimeoutCb) {
799
- this._timeout = setTimeout(function() {
800
- self._operationTimeoutCb();
801
- }, self._operationTimeout);
802
- }
803
- this._operationStart = (/* @__PURE__ */ new Date()).getTime();
804
- this._fn(this._attempts);
805
- };
806
- RetryOperation.prototype.try = function(fn) {
807
- console.log("Using RetryOperation.try() is deprecated");
808
- this.attempt(fn);
809
- };
810
- RetryOperation.prototype.start = function(fn) {
811
- console.log("Using RetryOperation.start() is deprecated");
812
- this.attempt(fn);
813
- };
814
- RetryOperation.prototype.start = RetryOperation.prototype.try;
815
- RetryOperation.prototype.errors = function() {
816
- return this._errors;
817
- };
818
- RetryOperation.prototype.attempts = function() {
819
- return this._attempts;
820
- };
821
- RetryOperation.prototype.mainError = function() {
822
- if (this._errors.length === 0) {
823
- return null;
824
- }
825
- var counts = {};
826
- var mainError = null;
827
- var mainErrorCount = 0;
828
- for (var i = 0; i < this._errors.length; i++) {
829
- var error = this._errors[i];
830
- var message = error.message;
831
- var count = (counts[message] || 0) + 1;
832
- counts[message] = count;
833
- if (count >= mainErrorCount) {
834
- mainError = error;
835
- mainErrorCount = count;
836
- }
837
- }
838
- return mainError;
839
- };
733
+ /** Deletes a Quirk */
734
+ async remove(body) {
735
+ const fetchUri = this.createUrl(__privateGet2(_QuirkClient2, _url5));
736
+ await this.apiClient(fetchUri, {
737
+ method: "DELETE",
738
+ body: JSON.stringify({ ...body, projectId: this.options.projectId }),
739
+ expectNoContent: true
740
+ });
840
741
  }
841
- });
842
- var require_retry = __commonJS2({
843
- "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.js"(exports) {
844
- "use strict";
845
- var RetryOperation = require_retry_operation();
846
- exports.operation = function(options) {
847
- var timeouts = exports.timeouts(options);
848
- return new RetryOperation(timeouts, {
849
- forever: options && (options.forever || options.retries === Infinity),
850
- unref: options && options.unref,
851
- maxRetryTime: options && options.maxRetryTime
852
- });
853
- };
854
- exports.timeouts = function(options) {
855
- if (options instanceof Array) {
856
- return [].concat(options);
857
- }
858
- var opts = {
859
- retries: 10,
860
- factor: 2,
861
- minTimeout: 1 * 1e3,
862
- maxTimeout: Infinity,
863
- randomize: false
864
- };
865
- for (var key in options) {
866
- opts[key] = options[key];
867
- }
868
- if (opts.minTimeout > opts.maxTimeout) {
869
- throw new Error("minTimeout is greater than maxTimeout");
870
- }
871
- var timeouts = [];
872
- for (var i = 0; i < opts.retries; i++) {
873
- timeouts.push(this.createTimeout(i, opts));
874
- }
875
- if (options && options.forever && !timeouts.length) {
876
- timeouts.push(this.createTimeout(i, opts));
742
+ };
743
+ _url5 = /* @__PURE__ */ new WeakMap();
744
+ __privateAdd2(_QuirkClient, _url5, "/api/v2/quirk");
745
+ var _url6;
746
+ var _SignalClient = class _SignalClient2 extends ApiClient {
747
+ constructor(options) {
748
+ super(options);
749
+ }
750
+ /** Fetches all Signals for a project */
751
+ async get(options) {
752
+ const { projectId } = this.options;
753
+ const fetchUri = this.createUrl(__privateGet2(_SignalClient2, _url6), { ...options, projectId });
754
+ return await this.apiClient(fetchUri);
755
+ }
756
+ /** Updates or creates (based on id) a Signal */
757
+ async upsert(body) {
758
+ const fetchUri = this.createUrl(__privateGet2(_SignalClient2, _url6));
759
+ await this.apiClient(fetchUri, {
760
+ method: "PUT",
761
+ body: JSON.stringify({ ...body, projectId: this.options.projectId }),
762
+ expectNoContent: true
763
+ });
764
+ }
765
+ /** Deletes a Signal */
766
+ async remove(body) {
767
+ const fetchUri = this.createUrl(__privateGet2(_SignalClient2, _url6));
768
+ await this.apiClient(fetchUri, {
769
+ method: "DELETE",
770
+ body: JSON.stringify({ ...body, projectId: this.options.projectId }),
771
+ expectNoContent: true
772
+ });
773
+ }
774
+ };
775
+ _url6 = /* @__PURE__ */ new WeakMap();
776
+ __privateAdd2(_SignalClient, _url6, "/api/v2/signal");
777
+ var _url7;
778
+ var _TestClient = class _TestClient2 extends ApiClient {
779
+ constructor(options) {
780
+ super(options);
781
+ }
782
+ /** Fetches all Tests for a project */
783
+ async get(options) {
784
+ const { projectId } = this.options;
785
+ const fetchUri = this.createUrl(__privateGet2(_TestClient2, _url7), { ...options, projectId });
786
+ return await this.apiClient(fetchUri);
787
+ }
788
+ /** Updates or creates (based on id) a Test */
789
+ async upsert(body) {
790
+ const fetchUri = this.createUrl(__privateGet2(_TestClient2, _url7));
791
+ await this.apiClient(fetchUri, {
792
+ method: "PUT",
793
+ body: JSON.stringify({ ...body, projectId: this.options.projectId }),
794
+ expectNoContent: true
795
+ });
796
+ }
797
+ /** Deletes a Test */
798
+ async remove(body) {
799
+ const fetchUri = this.createUrl(__privateGet2(_TestClient2, _url7));
800
+ await this.apiClient(fetchUri, {
801
+ method: "DELETE",
802
+ body: JSON.stringify({ ...body, projectId: this.options.projectId }),
803
+ expectNoContent: true
804
+ });
805
+ }
806
+ };
807
+ _url7 = /* @__PURE__ */ new WeakMap();
808
+ __privateAdd2(_TestClient, _url7, "/api/v2/test");
809
+
810
+ // ../../node_modules/.pnpm/yocto-queue@1.2.2/node_modules/yocto-queue/index.js
811
+ var Node = class {
812
+ constructor(value) {
813
+ __publicField(this, "value");
814
+ __publicField(this, "next");
815
+ this.value = value;
816
+ }
817
+ };
818
+ var _head, _tail, _size;
819
+ var Queue = class {
820
+ constructor() {
821
+ __privateAdd(this, _head);
822
+ __privateAdd(this, _tail);
823
+ __privateAdd(this, _size);
824
+ this.clear();
825
+ }
826
+ enqueue(value) {
827
+ const node = new Node(value);
828
+ if (__privateGet(this, _head)) {
829
+ __privateGet(this, _tail).next = node;
830
+ __privateSet(this, _tail, node);
831
+ } else {
832
+ __privateSet(this, _head, node);
833
+ __privateSet(this, _tail, node);
834
+ }
835
+ __privateWrapper(this, _size)._++;
836
+ }
837
+ dequeue() {
838
+ const current = __privateGet(this, _head);
839
+ if (!current) {
840
+ return;
841
+ }
842
+ __privateSet(this, _head, __privateGet(this, _head).next);
843
+ __privateWrapper(this, _size)._--;
844
+ if (!__privateGet(this, _head)) {
845
+ __privateSet(this, _tail, void 0);
846
+ }
847
+ return current.value;
848
+ }
849
+ peek() {
850
+ if (!__privateGet(this, _head)) {
851
+ return;
852
+ }
853
+ return __privateGet(this, _head).value;
854
+ }
855
+ clear() {
856
+ __privateSet(this, _head, void 0);
857
+ __privateSet(this, _tail, void 0);
858
+ __privateSet(this, _size, 0);
859
+ }
860
+ get size() {
861
+ return __privateGet(this, _size);
862
+ }
863
+ *[Symbol.iterator]() {
864
+ let current = __privateGet(this, _head);
865
+ while (current) {
866
+ yield current.value;
867
+ current = current.next;
868
+ }
869
+ }
870
+ *drain() {
871
+ while (__privateGet(this, _head)) {
872
+ yield this.dequeue();
873
+ }
874
+ }
875
+ };
876
+ _head = new WeakMap();
877
+ _tail = new WeakMap();
878
+ _size = new WeakMap();
879
+
880
+ // ../../node_modules/.pnpm/p-limit@6.2.0/node_modules/p-limit/index.js
881
+ function pLimit2(concurrency) {
882
+ validateConcurrency(concurrency);
883
+ const queue = new Queue();
884
+ let activeCount = 0;
885
+ const resumeNext = () => {
886
+ if (activeCount < concurrency && queue.size > 0) {
887
+ queue.dequeue()();
888
+ activeCount++;
889
+ }
890
+ };
891
+ const next = () => {
892
+ activeCount--;
893
+ resumeNext();
894
+ };
895
+ const run = async (function_, resolve, arguments_) => {
896
+ const result = (async () => function_(...arguments_))();
897
+ resolve(result);
898
+ try {
899
+ await result;
900
+ } catch (e) {
901
+ }
902
+ next();
903
+ };
904
+ const enqueue = (function_, resolve, arguments_) => {
905
+ new Promise((internalResolve) => {
906
+ queue.enqueue(internalResolve);
907
+ }).then(
908
+ run.bind(void 0, function_, resolve, arguments_)
909
+ );
910
+ (async () => {
911
+ await Promise.resolve();
912
+ if (activeCount < concurrency) {
913
+ resumeNext();
877
914
  }
878
- timeouts.sort(function(a, b) {
879
- return a - b;
880
- });
881
- return timeouts;
882
- };
883
- exports.createTimeout = function(attempt, opts) {
884
- var random = opts.randomize ? Math.random() + 1 : 1;
885
- var timeout = Math.round(random * Math.max(opts.minTimeout, 1) * Math.pow(opts.factor, attempt));
886
- timeout = Math.min(timeout, opts.maxTimeout);
887
- return timeout;
888
- };
889
- exports.wrap = function(obj, options, methods) {
890
- if (options instanceof Array) {
891
- methods = options;
892
- options = null;
915
+ })();
916
+ };
917
+ const generator = (function_, ...arguments_) => new Promise((resolve) => {
918
+ enqueue(function_, resolve, arguments_);
919
+ });
920
+ Object.defineProperties(generator, {
921
+ activeCount: {
922
+ get: () => activeCount
923
+ },
924
+ pendingCount: {
925
+ get: () => queue.size
926
+ },
927
+ clearQueue: {
928
+ value() {
929
+ queue.clear();
893
930
  }
894
- if (!methods) {
895
- methods = [];
896
- for (var key in obj) {
897
- if (typeof obj[key] === "function") {
898
- methods.push(key);
931
+ },
932
+ concurrency: {
933
+ get: () => concurrency,
934
+ set(newConcurrency) {
935
+ validateConcurrency(newConcurrency);
936
+ concurrency = newConcurrency;
937
+ queueMicrotask(() => {
938
+ while (activeCount < concurrency && queue.size > 0) {
939
+ resumeNext();
899
940
  }
900
- }
901
- }
902
- for (var i = 0; i < methods.length; i++) {
903
- var method = methods[i];
904
- var original = obj[method];
905
- obj[method] = function retryWrapper(original2) {
906
- var op = exports.operation(options);
907
- var args = Array.prototype.slice.call(arguments, 1);
908
- var callback = args.pop();
909
- args.push(function(err) {
910
- if (op.retry(err)) {
911
- return;
912
- }
913
- if (err) {
914
- arguments[0] = op.mainError();
915
- }
916
- callback.apply(this, arguments);
917
- });
918
- op.attempt(function() {
919
- original2.apply(obj, args);
920
- });
921
- }.bind(obj, original);
922
- obj[method].options = options;
941
+ });
923
942
  }
924
- };
925
- }
926
- });
927
- var require_retry2 = __commonJS2({
928
- "../../node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.js"(exports, module) {
929
- "use strict";
930
- module.exports = require_retry();
943
+ }
944
+ });
945
+ return generator;
946
+ }
947
+ function validateConcurrency(concurrency) {
948
+ if (!((Number.isInteger(concurrency) || concurrency === Number.POSITIVE_INFINITY) && concurrency > 0)) {
949
+ throw new TypeError("Expected `concurrency` to be a number from 1 and up");
931
950
  }
932
- });
933
- var import_p_limit2 = __toESM2(require_p_limit2());
934
- var import_retry = __toESM2(require_retry2(), 1);
935
- var networkErrorMsgs = /* @__PURE__ */ new Set([
936
- "Failed to fetch",
951
+ }
952
+
953
+ // ../../node_modules/.pnpm/p-retry@6.2.1/node_modules/p-retry/index.js
954
+ var import_retry = __toESM(require_retry2(), 1);
955
+
956
+ // ../../node_modules/.pnpm/is-network-error@1.3.2/node_modules/is-network-error/index.js
957
+ var objectToString = Object.prototype.toString;
958
+ var isError = (value) => objectToString.call(value) === "[object Error]";
959
+ var errorMessages = /* @__PURE__ */ new Set([
960
+ "network error",
937
961
  // Chrome
938
962
  "NetworkError when attempting to fetch resource.",
939
963
  // Firefox
940
964
  "The Internet connection appears to be offline.",
941
- // Safari
965
+ // Safari 16
942
966
  "Network request failed",
943
967
  // `cross-fetch`
944
- "fetch failed"
968
+ "fetch failed",
945
969
  // Undici (Node.js)
970
+ "terminated",
971
+ // Undici (Node.js)
972
+ " A network error occurred.",
973
+ // Bun (WebKit)
974
+ "Network connection lost"
975
+ // Cloudflare Workers (fetch)
946
976
  ]);
977
+ function isNetworkError(error) {
978
+ const isValid = error && isError(error) && error.name === "TypeError" && typeof error.message === "string";
979
+ if (!isValid) {
980
+ return false;
981
+ }
982
+ const { message, stack } = error;
983
+ if (message === "Load failed" || message.startsWith("Load failed (") && message.endsWith(")")) {
984
+ return stack === void 0 || "__sentry_captured__" in error;
985
+ }
986
+ if (message.startsWith("error sending request for url")) {
987
+ return true;
988
+ }
989
+ if (message === "Failed to fetch" || message.startsWith("Failed to fetch (") && message.endsWith(")")) {
990
+ return true;
991
+ }
992
+ return errorMessages.has(message);
993
+ }
994
+
995
+ // ../../node_modules/.pnpm/p-retry@6.2.1/node_modules/p-retry/index.js
947
996
  var AbortError = class extends Error {
948
997
  constructor(message) {
949
998
  super();
@@ -964,63 +1013,71 @@ var decorateErrorWithCounts = (error, attemptNumber, options) => {
964
1013
  error.retriesLeft = retriesLeft;
965
1014
  return error;
966
1015
  };
967
- var isNetworkError = (errorMessage) => networkErrorMsgs.has(errorMessage);
968
- var getDOMException = (errorMessage) => globalThis.DOMException === void 0 ? new Error(errorMessage) : new DOMException(errorMessage);
969
1016
  async function pRetry(input, options) {
970
1017
  return new Promise((resolve, reject) => {
971
- options = {
972
- onFailedAttempt() {
973
- },
974
- retries: 10,
975
- ...options
1018
+ var _a, _b, _c;
1019
+ options = { ...options };
1020
+ (_a = options.onFailedAttempt) != null ? _a : options.onFailedAttempt = () => {
976
1021
  };
1022
+ (_b = options.shouldRetry) != null ? _b : options.shouldRetry = () => true;
1023
+ (_c = options.retries) != null ? _c : options.retries = 10;
977
1024
  const operation = import_retry.default.operation(options);
1025
+ const abortHandler = () => {
1026
+ var _a2;
1027
+ operation.stop();
1028
+ reject((_a2 = options.signal) == null ? void 0 : _a2.reason);
1029
+ };
1030
+ if (options.signal && !options.signal.aborted) {
1031
+ options.signal.addEventListener("abort", abortHandler, { once: true });
1032
+ }
1033
+ const cleanUp = () => {
1034
+ var _a2;
1035
+ (_a2 = options.signal) == null ? void 0 : _a2.removeEventListener("abort", abortHandler);
1036
+ operation.stop();
1037
+ };
978
1038
  operation.attempt(async (attemptNumber) => {
979
1039
  try {
980
- resolve(await input(attemptNumber));
1040
+ const result = await input(attemptNumber);
1041
+ cleanUp();
1042
+ resolve(result);
981
1043
  } catch (error) {
982
- if (!(error instanceof Error)) {
983
- reject(new TypeError(`Non-error was thrown: "${error}". You should only throw errors.`));
984
- return;
985
- }
986
- if (error instanceof AbortError) {
987
- operation.stop();
988
- reject(error.originalError);
989
- } else if (error instanceof TypeError && !isNetworkError(error.message)) {
990
- operation.stop();
991
- reject(error);
992
- } else {
1044
+ try {
1045
+ if (!(error instanceof Error)) {
1046
+ throw new TypeError(`Non-error was thrown: "${error}". You should only throw errors.`);
1047
+ }
1048
+ if (error instanceof AbortError) {
1049
+ throw error.originalError;
1050
+ }
1051
+ if (error instanceof TypeError && !isNetworkError(error)) {
1052
+ throw error;
1053
+ }
993
1054
  decorateErrorWithCounts(error, attemptNumber, options);
994
- try {
995
- await options.onFailedAttempt(error);
996
- } catch (error2) {
997
- reject(error2);
998
- return;
1055
+ if (!await options.shouldRetry(error)) {
1056
+ operation.stop();
1057
+ reject(error);
999
1058
  }
1059
+ await options.onFailedAttempt(error);
1000
1060
  if (!operation.retry(error)) {
1001
- reject(operation.mainError());
1061
+ throw operation.mainError();
1002
1062
  }
1063
+ } catch (finalError) {
1064
+ decorateErrorWithCounts(finalError, attemptNumber, options);
1065
+ cleanUp();
1066
+ reject(finalError);
1003
1067
  }
1004
1068
  }
1005
1069
  });
1006
- if (options.signal && !options.signal.aborted) {
1007
- options.signal.addEventListener("abort", () => {
1008
- operation.stop();
1009
- const reason = options.signal.reason === void 0 ? getDOMException("The operation was aborted.") : options.signal.reason;
1010
- reject(reason instanceof Error ? reason : getDOMException(reason));
1011
- }, {
1012
- once: true
1013
- });
1014
- }
1015
1070
  });
1016
1071
  }
1072
+
1073
+ // ../../node_modules/.pnpm/p-throttle@6.2.0/node_modules/p-throttle/index.js
1017
1074
  var AbortError2 = class extends Error {
1018
1075
  constructor() {
1019
1076
  super("Throttled function aborted");
1020
1077
  this.name = "AbortError";
1021
1078
  }
1022
1079
  };
1023
- function pThrottle({ limit, interval, strict }) {
1080
+ function pThrottle({ limit, interval, strict, onDelay }) {
1024
1081
  if (!Number.isFinite(limit)) {
1025
1082
  throw new TypeError("Expected `limit` to be a finite number");
1026
1083
  }
@@ -1048,32 +1105,38 @@ function pThrottle({ limit, interval, strict }) {
1048
1105
  const strictTicks = [];
1049
1106
  function strictDelay() {
1050
1107
  const now = Date.now();
1051
- if (strictTicks.length < limit) {
1052
- strictTicks.push(now);
1053
- return 0;
1108
+ if (strictTicks.length > 0 && now - strictTicks.at(-1) > interval) {
1109
+ strictTicks.length = 0;
1054
1110
  }
1055
- const earliestTime = strictTicks.shift() + interval;
1056
- if (now >= earliestTime) {
1111
+ if (strictTicks.length < limit) {
1057
1112
  strictTicks.push(now);
1058
1113
  return 0;
1059
1114
  }
1060
- strictTicks.push(earliestTime);
1061
- return earliestTime - now;
1115
+ const nextExecutionTime = strictTicks[0] + interval;
1116
+ strictTicks.shift();
1117
+ strictTicks.push(nextExecutionTime);
1118
+ return Math.max(0, nextExecutionTime - now);
1062
1119
  }
1063
1120
  const getDelay = strict ? strictDelay : windowedDelay;
1064
1121
  return (function_) => {
1065
- const throttled = function(...args) {
1122
+ const throttled = function(...arguments_) {
1066
1123
  if (!throttled.isEnabled) {
1067
- return (async () => function_.apply(this, args))();
1124
+ return (async () => function_.apply(this, arguments_))();
1068
1125
  }
1069
- let timeout;
1126
+ let timeoutId;
1070
1127
  return new Promise((resolve, reject) => {
1071
1128
  const execute = () => {
1072
- resolve(function_.apply(this, args));
1073
- queue.delete(timeout);
1129
+ resolve(function_.apply(this, arguments_));
1130
+ queue.delete(timeoutId);
1074
1131
  };
1075
- timeout = setTimeout(execute, getDelay());
1076
- queue.set(timeout, reject);
1132
+ const delay = getDelay();
1133
+ if (delay > 0) {
1134
+ timeoutId = setTimeout(execute, delay);
1135
+ queue.set(timeoutId, reject);
1136
+ onDelay == null ? void 0 : onDelay(...arguments_);
1137
+ } else {
1138
+ execute();
1139
+ }
1077
1140
  });
1078
1141
  };
1079
1142
  throttled.abort = () => {
@@ -1085,16 +1148,29 @@ function pThrottle({ limit, interval, strict }) {
1085
1148
  strictTicks.splice(0, strictTicks.length);
1086
1149
  };
1087
1150
  throttled.isEnabled = true;
1151
+ Object.defineProperty(throttled, "queueSize", {
1152
+ get() {
1153
+ return queue.size;
1154
+ }
1155
+ });
1088
1156
  return throttled;
1089
1157
  };
1090
1158
  }
1159
+
1160
+ // ../canvas/dist/index.mjs
1161
+ var __typeError3 = (msg) => {
1162
+ throw TypeError(msg);
1163
+ };
1164
+ var __accessCheck3 = (obj, member, msg) => member.has(obj) || __typeError3("Cannot " + msg);
1165
+ var __privateGet3 = (obj, member, getter) => (__accessCheck3(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
1166
+ var __privateAdd3 = (obj, member, value) => member.has(obj) ? __typeError3("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
1091
1167
  function createLimitPolicy({
1092
1168
  throttle = { interval: 1e3, limit: 10 },
1093
- retry: retry2 = { retries: 1, factor: 1.66 },
1169
+ retry: retry3 = { retries: 1, factor: 1.66 },
1094
1170
  limit = 10
1095
1171
  }) {
1096
1172
  const throttler = throttle ? pThrottle(throttle) : null;
1097
- const limiter = limit ? (0, import_p_limit2.default)(limit) : null;
1173
+ const limiter = limit ? pLimit2(limit) : null;
1098
1174
  return function limitPolicy(func) {
1099
1175
  let currentFunc = async () => await func();
1100
1176
  if (throttler) {
@@ -1105,13 +1181,13 @@ function createLimitPolicy({
1105
1181
  const limitFunc = currentFunc;
1106
1182
  currentFunc = () => limiter(limitFunc);
1107
1183
  }
1108
- if (retry2) {
1184
+ if (retry3) {
1109
1185
  const retryFunc = currentFunc;
1110
1186
  currentFunc = () => pRetry(retryFunc, {
1111
- ...retry2,
1187
+ ...retry3,
1112
1188
  onFailedAttempt: async (error) => {
1113
- if (retry2.onFailedAttempt) {
1114
- await retry2.onFailedAttempt(error);
1189
+ if (retry3.onFailedAttempt) {
1190
+ await retry3.onFailedAttempt(error);
1115
1191
  }
1116
1192
  if (error instanceof ApiClientError && typeof error.statusCode === "number" && error.statusCode >= 400 && error.statusCode < 500 && error.statusCode !== 429 && error.statusCode !== 408) {
1117
1193
  throw error;
@@ -1122,6 +1198,47 @@ function createLimitPolicy({
1122
1198
  return currentFunc();
1123
1199
  };
1124
1200
  }
1201
+ var SELECT_QUERY_PREFIX = "select.";
1202
+ function appendCsv(out, key, values) {
1203
+ if (values === void 0) {
1204
+ return;
1205
+ }
1206
+ out[key] = values.join(",");
1207
+ }
1208
+ function projectionToQuery(spec) {
1209
+ const out = {};
1210
+ if (!spec) {
1211
+ return out;
1212
+ }
1213
+ const { fields, fieldTypes, slots } = spec;
1214
+ const p = SELECT_QUERY_PREFIX;
1215
+ if (fields) {
1216
+ appendCsv(out, `${p}fields[only]`, fields.only);
1217
+ appendCsv(out, `${p}fields[except]`, fields.except);
1218
+ appendCsv(out, `${p}fields[locales]`, fields.locales);
1219
+ }
1220
+ if (fieldTypes) {
1221
+ appendCsv(out, `${p}fieldTypes[only]`, fieldTypes.only);
1222
+ appendCsv(out, `${p}fieldTypes[except]`, fieldTypes.except);
1223
+ }
1224
+ if (slots) {
1225
+ appendCsv(out, `${p}slots[only]`, slots.only);
1226
+ appendCsv(out, `${p}slots[except]`, slots.except);
1227
+ if (typeof slots.depth === "number") {
1228
+ out[`${p}slots[depth]`] = String(slots.depth);
1229
+ }
1230
+ if (slots.named) {
1231
+ const slotNames = Object.keys(slots.named).sort();
1232
+ for (const slotName of slotNames) {
1233
+ const named = slots.named[slotName];
1234
+ if (named && typeof named.depth === "number") {
1235
+ out[`${p}slots.${slotName}[depth]`] = String(named.depth);
1236
+ }
1237
+ }
1238
+ }
1239
+ }
1240
+ return out;
1241
+ }
1125
1242
  var CANVAS_URL = "/api/v1/canvas";
1126
1243
  var CanvasClient = class extends ApiClient {
1127
1244
  constructor(options) {
@@ -1136,17 +1253,24 @@ var CanvasClient = class extends ApiClient {
1136
1253
  /** Fetches lists of Canvas compositions, optionally by type */
1137
1254
  async getCompositionList(params = {}) {
1138
1255
  const { projectId } = this.options;
1139
- const { resolveData, filters, ...originParams } = params;
1256
+ const { resolveData, filters, select, ...originParams } = params;
1140
1257
  const rewrittenFilters = rewriteFiltersForApi(filters);
1258
+ const rewrittenSelect = projectionToQuery(select);
1141
1259
  if (!resolveData) {
1142
- const fetchUri = this.createUrl(CANVAS_URL, { ...originParams, projectId, ...rewrittenFilters });
1260
+ const fetchUri = this.createUrl(CANVAS_URL, {
1261
+ ...originParams,
1262
+ projectId,
1263
+ ...rewrittenFilters,
1264
+ ...rewrittenSelect
1265
+ });
1143
1266
  return this.apiClient(fetchUri);
1144
1267
  }
1145
1268
  const edgeParams = {
1146
1269
  ...originParams,
1147
1270
  projectId,
1148
1271
  diagnostics: typeof params.diagnostics === "boolean" ? params.diagnostics : params.diagnostics === "no-data" ? "no-data" : void 0,
1149
- ...rewrittenFilters
1272
+ ...rewrittenFilters,
1273
+ ...rewrittenSelect
1150
1274
  };
1151
1275
  const edgeUrl = this.createUrl("/api/v1/compositions", edgeParams, this.edgeApiHost);
1152
1276
  return this.apiClient(edgeUrl, this.edgeApiRequestInit);
@@ -1251,20 +1375,26 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1251
1375
  }
1252
1376
  getContentTypes(options) {
1253
1377
  const { projectId } = this.options;
1254
- const fetchUri = this.createUrl(__privateGet2(_ContentClient2, _contentTypesUrl), { ...options, projectId });
1378
+ const fetchUri = this.createUrl(__privateGet3(_ContentClient2, _contentTypesUrl), { ...options, projectId });
1255
1379
  return this.apiClient(fetchUri);
1256
1380
  }
1257
1381
  getEntries(options) {
1258
1382
  const { projectId } = this.options;
1259
- const { skipDataResolution, filters, ...params } = options;
1383
+ const { skipDataResolution, filters, select, ...params } = options;
1260
1384
  const rewrittenFilters = rewriteFiltersForApi(filters);
1385
+ const rewrittenSelect = projectionToQuery(select);
1261
1386
  if (skipDataResolution) {
1262
- const url = this.createUrl(__privateGet2(_ContentClient2, _entriesUrl), { ...params, ...rewrittenFilters, projectId });
1387
+ const url = this.createUrl(__privateGet3(_ContentClient2, _entriesUrl), {
1388
+ ...params,
1389
+ ...rewrittenFilters,
1390
+ ...rewrittenSelect,
1391
+ projectId
1392
+ });
1263
1393
  return this.apiClient(url);
1264
1394
  }
1265
1395
  const edgeUrl = this.createUrl(
1266
- __privateGet2(_ContentClient2, _entriesUrl),
1267
- { ...this.getEdgeOptions(params), ...rewrittenFilters },
1396
+ __privateGet3(_ContentClient2, _entriesUrl),
1397
+ { ...this.getEdgeOptions(params), ...rewrittenFilters, ...rewrittenSelect },
1268
1398
  this.edgeApiHost
1269
1399
  );
1270
1400
  return this.apiClient(
@@ -1281,7 +1411,7 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1281
1411
  return this.apiClient(historyUrl);
1282
1412
  }
1283
1413
  async upsertContentType(body, opts = {}) {
1284
- const fetchUri = this.createUrl(__privateGet2(_ContentClient2, _contentTypesUrl));
1414
+ const fetchUri = this.createUrl(__privateGet3(_ContentClient2, _contentTypesUrl));
1285
1415
  if (typeof body.contentType.slugSettings === "object" && body.contentType.slugSettings !== null && Object.keys(body.contentType.slugSettings).length === 0) {
1286
1416
  delete body.contentType.slugSettings;
1287
1417
  }
@@ -1293,7 +1423,7 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1293
1423
  });
1294
1424
  }
1295
1425
  async upsertEntry(body, options) {
1296
- const fetchUri = this.createUrl(__privateGet2(_ContentClient2, _entriesUrl));
1426
+ const fetchUri = this.createUrl(__privateGet3(_ContentClient2, _entriesUrl));
1297
1427
  const headers = {};
1298
1428
  if (options == null ? void 0 : options.ifUnmodifiedSince) {
1299
1429
  headers["x-if-unmodified-since"] = options.ifUnmodifiedSince;
@@ -1307,7 +1437,7 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1307
1437
  return { modified: response.headers.get("x-modified-at") };
1308
1438
  }
1309
1439
  async deleteContentType(body) {
1310
- const fetchUri = this.createUrl(__privateGet2(_ContentClient2, _contentTypesUrl));
1440
+ const fetchUri = this.createUrl(__privateGet3(_ContentClient2, _contentTypesUrl));
1311
1441
  await this.apiClient(fetchUri, {
1312
1442
  method: "DELETE",
1313
1443
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -1315,7 +1445,7 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1315
1445
  });
1316
1446
  }
1317
1447
  async deleteEntry(body) {
1318
- const fetchUri = this.createUrl(__privateGet2(_ContentClient2, _entriesUrl));
1448
+ const fetchUri = this.createUrl(__privateGet3(_ContentClient2, _entriesUrl));
1319
1449
  await this.apiClient(fetchUri, {
1320
1450
  method: "DELETE",
1321
1451
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -1334,8 +1464,8 @@ var _ContentClient = class _ContentClient2 extends ApiClient {
1334
1464
  };
1335
1465
  _contentTypesUrl = /* @__PURE__ */ new WeakMap();
1336
1466
  _entriesUrl = /* @__PURE__ */ new WeakMap();
1337
- __privateAdd2(_ContentClient, _contentTypesUrl, "/api/v1/content-types");
1338
- __privateAdd2(_ContentClient, _entriesUrl, "/api/v1/entries");
1467
+ __privateAdd3(_ContentClient, _contentTypesUrl, "/api/v1/content-types");
1468
+ __privateAdd3(_ContentClient, _entriesUrl, "/api/v1/entries");
1339
1469
  var _url8;
1340
1470
  var _DataTypeClient = class _DataTypeClient2 extends ApiClient {
1341
1471
  constructor(options) {
@@ -1344,12 +1474,12 @@ var _DataTypeClient = class _DataTypeClient2 extends ApiClient {
1344
1474
  /** Fetches all DataTypes for a project */
1345
1475
  async get(options) {
1346
1476
  const { projectId } = this.options;
1347
- const fetchUri = this.createUrl(__privateGet2(_DataTypeClient2, _url8), { ...options, projectId });
1477
+ const fetchUri = this.createUrl(__privateGet3(_DataTypeClient2, _url8), { ...options, projectId });
1348
1478
  return await this.apiClient(fetchUri);
1349
1479
  }
1350
1480
  /** Updates or creates (based on id) a DataType */
1351
1481
  async upsert(body) {
1352
- const fetchUri = this.createUrl(__privateGet2(_DataTypeClient2, _url8));
1482
+ const fetchUri = this.createUrl(__privateGet3(_DataTypeClient2, _url8));
1353
1483
  await this.apiClient(fetchUri, {
1354
1484
  method: "PUT",
1355
1485
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -1358,7 +1488,7 @@ var _DataTypeClient = class _DataTypeClient2 extends ApiClient {
1358
1488
  }
1359
1489
  /** Deletes a DataType */
1360
1490
  async remove(body) {
1361
- const fetchUri = this.createUrl(__privateGet2(_DataTypeClient2, _url8));
1491
+ const fetchUri = this.createUrl(__privateGet3(_DataTypeClient2, _url8));
1362
1492
  await this.apiClient(fetchUri, {
1363
1493
  method: "DELETE",
1364
1494
  body: JSON.stringify({ ...body, projectId: this.options.projectId }),
@@ -1367,7 +1497,7 @@ var _DataTypeClient = class _DataTypeClient2 extends ApiClient {
1367
1497
  }
1368
1498
  };
1369
1499
  _url8 = /* @__PURE__ */ new WeakMap();
1370
- __privateAdd2(_DataTypeClient, _url8, "/api/v1/data-types");
1500
+ __privateAdd3(_DataTypeClient, _url8, "/api/v1/data-types");
1371
1501
  function getComponentPath(ancestorsAndSelf) {
1372
1502
  const path = [];
1373
1503
  for (let i = ancestorsAndSelf.length - 1; i >= 0; i--) {
@@ -1820,7 +1950,7 @@ var _IntegrationPropertyEditorsClient = class _IntegrationPropertyEditorsClient2
1820
1950
  * Gets a list of property type and hook names for the current team, including public integrations' hooks.
1821
1951
  */
1822
1952
  get(options) {
1823
- const fetchUri = this.createUrl(__privateGet2(_IntegrationPropertyEditorsClient2, _baseUrl), {
1953
+ const fetchUri = this.createUrl(__privateGet3(_IntegrationPropertyEditorsClient2, _baseUrl), {
1824
1954
  ...options,
1825
1955
  teamId: this.teamId
1826
1956
  });
@@ -1830,7 +1960,7 @@ var _IntegrationPropertyEditorsClient = class _IntegrationPropertyEditorsClient2
1830
1960
  * Creates or updates a custom AI property editor on a Mesh app.
1831
1961
  */
1832
1962
  async deploy(body) {
1833
- const fetchUri = this.createUrl(__privateGet2(_IntegrationPropertyEditorsClient2, _baseUrl));
1963
+ const fetchUri = this.createUrl(__privateGet3(_IntegrationPropertyEditorsClient2, _baseUrl));
1834
1964
  await this.apiClient(fetchUri, {
1835
1965
  method: "PUT",
1836
1966
  body: JSON.stringify({ ...body, teamId: this.teamId }),
@@ -1841,7 +1971,7 @@ var _IntegrationPropertyEditorsClient = class _IntegrationPropertyEditorsClient2
1841
1971
  * Removes a custom AI property editor from a Mesh app.
1842
1972
  */
1843
1973
  async delete(body) {
1844
- const fetchUri = this.createUrl(__privateGet2(_IntegrationPropertyEditorsClient2, _baseUrl));
1974
+ const fetchUri = this.createUrl(__privateGet3(_IntegrationPropertyEditorsClient2, _baseUrl));
1845
1975
  await this.apiClient(fetchUri, {
1846
1976
  method: "DELETE",
1847
1977
  body: JSON.stringify({ ...body, teamId: this.teamId }),
@@ -1850,7 +1980,7 @@ var _IntegrationPropertyEditorsClient = class _IntegrationPropertyEditorsClient2
1850
1980
  }
1851
1981
  };
1852
1982
  _baseUrl = /* @__PURE__ */ new WeakMap();
1853
- __privateAdd2(_IntegrationPropertyEditorsClient, _baseUrl, "/api/v1/integration-property-editors");
1983
+ __privateAdd3(_IntegrationPropertyEditorsClient, _baseUrl, "/api/v1/integration-property-editors");
1854
1984
  var _url22;
1855
1985
  var _projectsUrl;
1856
1986
  var _ProjectClient = class _ProjectClient2 extends ApiClient {
@@ -1859,7 +1989,7 @@ var _ProjectClient = class _ProjectClient2 extends ApiClient {
1859
1989
  }
1860
1990
  /** Fetches single Project */
1861
1991
  async get(options) {
1862
- const fetchUri = this.createUrl(__privateGet2(_ProjectClient2, _url22), { ...options });
1992
+ const fetchUri = this.createUrl(__privateGet3(_ProjectClient2, _url22), { ...options });
1863
1993
  return await this.apiClient(fetchUri);
1864
1994
  }
1865
1995
  /**
@@ -1868,12 +1998,12 @@ var _ProjectClient = class _ProjectClient2 extends ApiClient {
1868
1998
  * When omitted, returns all accessible teams and their projects.
1869
1999
  */
1870
2000
  async getProjects(options) {
1871
- const fetchUri = this.createUrl(__privateGet2(_ProjectClient2, _projectsUrl), options ? { ...options } : {});
2001
+ const fetchUri = this.createUrl(__privateGet3(_ProjectClient2, _projectsUrl), options ? { ...options } : {});
1872
2002
  return await this.apiClient(fetchUri);
1873
2003
  }
1874
2004
  /** Updates or creates (based on id) a Project */
1875
2005
  async upsert(body) {
1876
- const fetchUri = this.createUrl(__privateGet2(_ProjectClient2, _url22));
2006
+ const fetchUri = this.createUrl(__privateGet3(_ProjectClient2, _url22));
1877
2007
  return await this.apiClient(fetchUri, {
1878
2008
  method: "PUT",
1879
2009
  body: JSON.stringify({ ...body })
@@ -1881,7 +2011,7 @@ var _ProjectClient = class _ProjectClient2 extends ApiClient {
1881
2011
  }
1882
2012
  /** Deletes a Project */
1883
2013
  async delete(body) {
1884
- const fetchUri = this.createUrl(__privateGet2(_ProjectClient2, _url22));
2014
+ const fetchUri = this.createUrl(__privateGet3(_ProjectClient2, _url22));
1885
2015
  await this.apiClient(fetchUri, {
1886
2016
  method: "DELETE",
1887
2017
  body: JSON.stringify({ ...body }),
@@ -1891,8 +2021,8 @@ var _ProjectClient = class _ProjectClient2 extends ApiClient {
1891
2021
  };
1892
2022
  _url22 = /* @__PURE__ */ new WeakMap();
1893
2023
  _projectsUrl = /* @__PURE__ */ new WeakMap();
1894
- __privateAdd2(_ProjectClient, _url22, "/api/v1/project");
1895
- __privateAdd2(_ProjectClient, _projectsUrl, "/api/v1/projects");
2024
+ __privateAdd3(_ProjectClient, _url22, "/api/v1/project");
2025
+ __privateAdd3(_ProjectClient, _projectsUrl, "/api/v1/projects");
1896
2026
  var ROUTE_URL = "/api/v1/route";
1897
2027
  var RouteClient = class extends ApiClient {
1898
2028
  constructor(options) {
@@ -1906,7 +2036,9 @@ var RouteClient = class extends ApiClient {
1906
2036
  /** Fetches lists of Canvas compositions, optionally by type */
1907
2037
  async getRoute(options) {
1908
2038
  const { projectId } = this.options;
1909
- const fetchUri = this.createUrl(ROUTE_URL, { ...options, projectId }, this.edgeApiHost);
2039
+ const { select, ...rest } = options != null ? options : {};
2040
+ const rewrittenSelect = projectionToQuery(select);
2041
+ const fetchUri = this.createUrl(ROUTE_URL, { ...rest, projectId, ...rewrittenSelect }, this.edgeApiHost);
1910
2042
  return await this.apiClient(
1911
2043
  fetchUri,
1912
2044
  this.options.disableSWR ? { headers: { "x-disable-swr": "true" } } : void 0
@@ -2150,7 +2282,7 @@ function createLimiter(concurrency) {
2150
2282
  });
2151
2283
  };
2152
2284
  }
2153
- async function retry(fn, options) {
2285
+ async function retry2(fn, options) {
2154
2286
  let lastError;
2155
2287
  let delay = 1e3;
2156
2288
  for (let attempt = 1; attempt <= options.retries + 1; attempt++) {
@@ -2190,7 +2322,7 @@ function createLimitPolicy2({
2190
2322
  }
2191
2323
  if (retryOptions) {
2192
2324
  const retryFunc = currentFunc;
2193
- currentFunc = () => retry(retryFunc, {
2325
+ currentFunc = () => retry2(retryFunc, {
2194
2326
  ...retryOptions,
2195
2327
  onFailedAttempt: async (error) => {
2196
2328
  if (retryOptions.onFailedAttempt) {
@@ -2324,14 +2456,14 @@ var getManifest = async (options) => {
2324
2456
  import "server-only";
2325
2457
 
2326
2458
  // ../project-map/dist/index.mjs
2327
- var __typeError3 = (msg) => {
2459
+ var __typeError4 = (msg) => {
2328
2460
  throw TypeError(msg);
2329
2461
  };
2330
- var __accessCheck3 = (obj, member, msg) => member.has(obj) || __typeError3("Cannot " + msg);
2331
- var __privateGet3 = (obj, member, getter) => (__accessCheck3(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
2332
- var __privateAdd3 = (obj, member, value) => member.has(obj) ? __typeError3("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
2333
- var __privateSet = (obj, member, value, setter) => (__accessCheck3(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
2334
- var __privateMethod = (obj, member, method) => (__accessCheck3(obj, member, "access private method"), method);
2462
+ var __accessCheck4 = (obj, member, msg) => member.has(obj) || __typeError4("Cannot " + msg);
2463
+ var __privateGet4 = (obj, member, getter) => (__accessCheck4(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
2464
+ var __privateAdd4 = (obj, member, value) => member.has(obj) ? __typeError4("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
2465
+ var __privateSet2 = (obj, member, value, setter) => (__accessCheck4(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
2466
+ var __privateMethod = (obj, member, method) => (__accessCheck4(obj, member, "access private method"), method);
2335
2467
  var ProjectMapClient = class extends ApiClient {
2336
2468
  constructor(options) {
2337
2469
  super(options);
@@ -2478,12 +2610,12 @@ var isDynamicRouteSegment_fn;
2478
2610
  var _Route = class _Route2 {
2479
2611
  constructor(route) {
2480
2612
  this.route = route;
2481
- __privateAdd3(this, _routeInfo);
2613
+ __privateAdd4(this, _routeInfo);
2482
2614
  var _a;
2483
- __privateSet(this, _routeInfo, __privateMethod(_a = _Route2, _Route_static, parseRouteOrPath_fn).call(_a, this.route));
2615
+ __privateSet2(this, _routeInfo, __privateMethod(_a = _Route2, _Route_static, parseRouteOrPath_fn).call(_a, this.route));
2484
2616
  }
2485
2617
  get dynamicSegmentCount() {
2486
- return __privateGet3(this, _routeInfo).segments.reduce(
2618
+ return __privateGet4(this, _routeInfo).segments.reduce(
2487
2619
  (count, segment) => {
2488
2620
  var _a;
2489
2621
  return __privateMethod(_a = _Route2, _Route_static, isDynamicRouteSegment_fn).call(_a, segment) ? count + 1 : count;
@@ -2495,7 +2627,7 @@ var _Route = class _Route2 {
2495
2627
  matches(path) {
2496
2628
  var _a, _b;
2497
2629
  const { segments: pathSegments, queryParams: pathQuery } = __privateMethod(_a = _Route2, _Route_static, parseRouteOrPath_fn).call(_a, path);
2498
- const { segments: routeSegments } = __privateGet3(this, _routeInfo);
2630
+ const { segments: routeSegments } = __privateGet4(this, _routeInfo);
2499
2631
  if (pathSegments.length !== routeSegments.length) {
2500
2632
  return { match: false };
2501
2633
  }
@@ -2516,7 +2648,7 @@ var _Route = class _Route2 {
2516
2648
  return { match: false };
2517
2649
  }
2518
2650
  }
2519
- for (const [key, value] of __privateGet3(this, _routeInfo).queryParams) {
2651
+ for (const [key, value] of __privateGet4(this, _routeInfo).queryParams) {
2520
2652
  possibleMatch.queryParams[key] = pathQuery.has(key) ? pathQuery.get(key) : value;
2521
2653
  }
2522
2654
  return possibleMatch;
@@ -2526,7 +2658,7 @@ var _Route = class _Route2 {
2526
2658
  */
2527
2659
  expand(options) {
2528
2660
  const { dynamicInputValues = {}, allowedQueryParams = [], doNotEscapeVariables = false } = options != null ? options : {};
2529
- const path = __privateGet3(this, _routeInfo).segments.map((segment) => {
2661
+ const path = __privateGet4(this, _routeInfo).segments.map((segment) => {
2530
2662
  const dynamicSegmentName = _Route2.getDynamicRouteSegmentName(segment);
2531
2663
  if (!dynamicSegmentName) {
2532
2664
  return segment;
@@ -2577,7 +2709,7 @@ isDynamicRouteSegment_fn = function(segment) {
2577
2709
  }
2578
2710
  return segment.startsWith(_Route.dynamicSegmentPrefix);
2579
2711
  };
2580
- __privateAdd3(_Route, _Route_static);
2712
+ __privateAdd4(_Route, _Route_static);
2581
2713
  _Route.dynamicSegmentPrefix = ":";
2582
2714
  function encodeRouteComponent(value, doNotEscapeVariables) {
2583
2715
  if (!doNotEscapeVariables) {