@milaboratories/pl-model-common 1.19.4 → 1.19.6

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
@@ -1,9 +1,9 @@
1
- var T = Object.defineProperty;
2
- var I = (e, n, r) => n in e ? T(e, n, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[n] = r;
3
- var f = (e, n, r) => I(e, typeof n != "symbol" ? n + "" : n, r);
4
- import { z as m } from "zod";
5
- import y from "canonicalize";
6
- function be(e) {
1
+ var te = Object.defineProperty;
2
+ var re = (e, n, t) => n in e ? te(e, n, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[n] = t;
3
+ var b = (e, n, t) => re(e, typeof n != "symbol" ? n + "" : n, t);
4
+ import { z as l } from "zod";
5
+ import F from "canonicalize";
6
+ function Be(e) {
7
7
  if (e.code !== void 0)
8
8
  return {
9
9
  code: e.code,
@@ -11,130 +11,130 @@ function be(e) {
11
11
  featureFlags: e.featureFlags
12
12
  };
13
13
  }
14
- function p(e) {
14
+ function x(e) {
15
15
  if (e !== void 0)
16
16
  return typeof e == "string" ? { __renderLambda: !0, handle: e, retentive: !1 } : e;
17
17
  }
18
- function ve(e) {
18
+ function Me(e) {
19
19
  if (e.v3 !== void 0) {
20
20
  const {
21
21
  initialArgs: n,
22
- initialUiState: r,
23
- inputsValid: t,
24
- outputs: i,
25
- renderingMode: o,
26
- sdkVersion: s,
27
- featureFlags: a,
22
+ initialUiState: t,
23
+ inputsValid: r,
24
+ outputs: o,
25
+ renderingMode: i,
26
+ sdkVersion: a,
27
+ featureFlags: s,
28
28
  sections: u,
29
29
  title: c,
30
30
  enrichmentTargets: d
31
- } = e.v3, { code: V } = e;
31
+ } = e.v3, { code: f } = e;
32
32
  return {
33
33
  initialArgs: n,
34
- initialUiState: r,
35
- inputsValid: t,
36
- outputs: i,
37
- renderingMode: o,
38
- sdkVersion: s,
39
- featureFlags: a,
34
+ initialUiState: t,
35
+ inputsValid: r,
36
+ outputs: o,
37
+ renderingMode: i,
38
+ sdkVersion: a,
39
+ featureFlags: s,
40
40
  sections: u,
41
41
  title: c,
42
- code: V,
42
+ code: f,
43
43
  enrichmentTargets: d
44
44
  };
45
45
  } else if (e.inputsValid !== void 0) {
46
- const { sdkVersion: n, renderingMode: r, outputs: t, inputsValid: i, sections: o, initialArgs: s, code: a } = e, u = Object.keys(e);
47
- if (n === void 0 || r === void 0 || t === void 0 || i === void 0 || o === void 0 || s === void 0)
46
+ const { sdkVersion: n, renderingMode: t, outputs: r, inputsValid: o, sections: i, initialArgs: a, code: s } = e, u = Object.keys(e);
47
+ if (n === void 0 || t === void 0 || r === void 0 || o === void 0 || i === void 0 || a === void 0)
48
48
  throw new Error(
49
49
  `Malformed config v2. SDK version ${n}; Fields = ${u.join(", ")}`
50
50
  );
51
51
  return {
52
52
  sdkVersion: n,
53
- renderingMode: r,
54
- initialArgs: s,
53
+ renderingMode: t,
54
+ initialArgs: a,
55
55
  outputs: Object.fromEntries(
56
- Object.entries(t).map(([c, d]) => [c, p(d)])
56
+ Object.entries(r).map(([c, d]) => [c, x(d)])
57
57
  ),
58
- inputsValid: p(i),
59
- sections: p(o),
58
+ inputsValid: x(o),
59
+ sections: x(i),
60
60
  initialUiState: void 0,
61
- code: a
61
+ code: s
62
62
  };
63
63
  } else if (e.renderingMode !== void 0) {
64
- const { sdkVersion: n, canRun: r, renderingMode: t, outputs: i, sections: o, initialArgs: s, code: a } = e, u = Object.keys(e);
65
- if (t === void 0 || i === void 0 || r === void 0 || o === void 0 || s === void 0)
64
+ const { sdkVersion: n, canRun: t, renderingMode: r, outputs: o, sections: i, initialArgs: a, code: s } = e, u = Object.keys(e);
65
+ if (r === void 0 || o === void 0 || t === void 0 || i === void 0 || a === void 0)
66
66
  throw new Error(
67
67
  `Malformed config v1. SDK version ${n}; Fields = ${u.join(", ")}`
68
68
  );
69
69
  return {
70
70
  sdkVersion: n ?? "unknown",
71
- renderingMode: t,
72
- initialArgs: s,
71
+ renderingMode: r,
72
+ initialArgs: a,
73
73
  outputs: Object.fromEntries(
74
- Object.entries(i).map(([c, d]) => [c, p(d)])
74
+ Object.entries(o).map(([c, d]) => [c, x(d)])
75
75
  ),
76
- inputsValid: p(r),
77
- sections: p(o),
76
+ inputsValid: x(t),
77
+ sections: x(i),
78
78
  initialUiState: void 0,
79
- code: a
79
+ code: s
80
80
  };
81
81
  } else {
82
- const { sdkVersion: n } = e, r = Object.keys(e);
82
+ const { sdkVersion: n } = e, t = Object.keys(e);
83
83
  throw new Error(
84
- `Config format not supported: SDK = ${n}; Fields = ${r.join(", ")}`
84
+ `Config format not supported: SDK = ${n}; Fields = ${t.join(", ")}`
85
85
  );
86
86
  }
87
87
  }
88
- function ge(e) {
88
+ function Ue(e) {
89
89
  return new URL(e).protocol == "plblob+folder:";
90
90
  }
91
- function we(e) {
91
+ function qe(e) {
92
92
  return new URL(e).protocol == "block-ui:";
93
93
  }
94
- const Pe = m.object({
94
+ const We = l.object({
95
95
  /** Included left border. */
96
- from: m.number(),
96
+ from: l.number(),
97
97
  /** Excluded right border. */
98
- to: m.number()
98
+ to: l.number()
99
99
  });
100
- function ke(e, n) {
100
+ function ze(e, n) {
101
101
  if (!(e == null || n == null))
102
102
  return { from: e, to: n };
103
103
  }
104
- function Ae(e, n) {
104
+ function He(e, n) {
105
105
  if (e.from < 0 || e.to < 0 || e.from >= e.to)
106
106
  throw new Error(`${n}: invalid bytes range: ${e}`);
107
107
  }
108
- function xe(e) {
108
+ function Ge(e) {
109
109
  return e !== void 0 && e.startsWith("log+live://log/");
110
110
  }
111
- function b(e) {
111
+ function k(e) {
112
112
  throw new Error("Unexpected object: " + e);
113
113
  }
114
- const S = "upload://upload/", O = "index://index/";
115
- function B(e) {
116
- return e.startsWith(S);
114
+ const K = "upload://upload/", V = "index://index/";
115
+ function oe(e) {
116
+ return e.startsWith(K);
117
117
  }
118
- function U(e) {
119
- return e.startsWith(O);
118
+ function ie(e) {
119
+ return e.startsWith(V);
120
120
  }
121
- function q(e) {
122
- if (U(e)) {
123
- const n = e.slice(O.length);
121
+ function ae(e) {
122
+ if (ie(e)) {
123
+ const n = e.slice(V.length);
124
124
  return JSON.parse(decodeURIComponent(n)).path;
125
- } else if (B(e)) {
126
- const n = e.slice(S.length);
125
+ } else if (oe(e)) {
126
+ const n = e.slice(K.length);
127
127
  return JSON.parse(decodeURIComponent(n)).localPath;
128
128
  }
129
- b(e);
129
+ k(e);
130
130
  }
131
- function K(e) {
131
+ function se(e) {
132
132
  return e.replace(/^.*[\\/]/, "");
133
133
  }
134
- function Ee(e) {
135
- return K(q(e));
134
+ function _e(e) {
135
+ return se(ae(e));
136
136
  }
137
- function Se(e) {
137
+ function Qe(e) {
138
138
  if (!e || typeof e != "object")
139
139
  return !1;
140
140
  const n = e;
@@ -151,44 +151,44 @@ function Se(e) {
151
151
  return !1;
152
152
  }
153
153
  }
154
- function Oe(e, n) {
154
+ function Xe(e, n) {
155
155
  if (e !== void 0)
156
156
  switch (e.type) {
157
157
  case "Json":
158
158
  return e;
159
159
  case "JsonPartitioned": {
160
- const r = {};
161
- for (const [t, i] of Object.entries(e.parts))
162
- r[t] = n(i);
160
+ const t = {};
161
+ for (const [r, o] of Object.entries(e.parts))
162
+ t[r] = n(o);
163
163
  return {
164
164
  ...e,
165
- parts: r
165
+ parts: t
166
166
  };
167
167
  }
168
168
  case "BinaryPartitioned": {
169
- const r = {};
170
- for (const [t, i] of Object.entries(e.parts))
171
- r[t] = {
172
- index: n(i.index),
173
- values: n(i.values)
169
+ const t = {};
170
+ for (const [r, o] of Object.entries(e.parts))
171
+ t[r] = {
172
+ index: n(o.index),
173
+ values: n(o.values)
174
174
  };
175
175
  return {
176
176
  ...e,
177
- parts: r
177
+ parts: t
178
178
  };
179
179
  }
180
180
  case "ParquetPartitioned": {
181
- const r = {};
182
- for (const [t, i] of Object.entries(e.parts))
183
- r[t] = n(i);
181
+ const t = {};
182
+ for (const [r, o] of Object.entries(e.parts))
183
+ t[r] = n(o);
184
184
  return {
185
185
  ...e,
186
- parts: r
186
+ parts: t
187
187
  };
188
188
  }
189
189
  }
190
190
  }
191
- function je(e, n) {
191
+ function Ye(e, n) {
192
192
  switch (e.type) {
193
193
  case "Json":
194
194
  break;
@@ -197,8 +197,8 @@ function je(e, n) {
197
197
  break;
198
198
  }
199
199
  case "BinaryPartitioned": {
200
- Object.values(e.parts).forEach((r) => {
201
- n(r.index), n(r.values);
200
+ Object.values(e.parts).forEach((t) => {
201
+ n(t.index), n(t.values);
202
202
  });
203
203
  break;
204
204
  }
@@ -208,7 +208,7 @@ function je(e, n) {
208
208
  }
209
209
  }
210
210
  }
211
- function M(e) {
211
+ function ue(e) {
212
212
  if (!e || typeof e != "object")
213
213
  return !1;
214
214
  const n = e;
@@ -225,8 +225,8 @@ function M(e) {
225
225
  return !1;
226
226
  }
227
227
  }
228
- function Ce(e) {
229
- if (!M(e)) return !1;
228
+ function Ze(e) {
229
+ if (!ue(e)) return !1;
230
230
  switch (e.type) {
231
231
  case "JsonPartitioned":
232
232
  case "BinaryPartitioned":
@@ -236,44 +236,44 @@ function Ce(e) {
236
236
  return !1;
237
237
  }
238
238
  }
239
- function Fe(e) {
239
+ function en(e) {
240
240
  switch (e.type) {
241
241
  case "Json":
242
242
  return {
243
243
  type: "Json",
244
244
  keyLength: e.keyLength,
245
- data: Object.entries(e.data).map(([n, r]) => ({ key: JSON.parse(n), value: r }))
245
+ data: Object.entries(e.data).map(([n, t]) => ({ key: JSON.parse(n), value: t }))
246
246
  };
247
247
  case "JsonPartitioned":
248
248
  return {
249
249
  type: "JsonPartitioned",
250
250
  partitionKeyLength: e.partitionKeyLength,
251
- parts: Object.entries(e.parts).map(([n, r]) => ({ key: JSON.parse(n), value: r }))
251
+ parts: Object.entries(e.parts).map(([n, t]) => ({ key: JSON.parse(n), value: t }))
252
252
  };
253
253
  case "BinaryPartitioned":
254
254
  return {
255
255
  type: "BinaryPartitioned",
256
256
  partitionKeyLength: e.partitionKeyLength,
257
- parts: Object.entries(e.parts).map(([n, r]) => ({ key: JSON.parse(n), value: r }))
257
+ parts: Object.entries(e.parts).map(([n, t]) => ({ key: JSON.parse(n), value: t }))
258
258
  };
259
259
  case "ParquetPartitioned":
260
260
  return {
261
261
  type: "ParquetPartitioned",
262
262
  partitionKeyLength: e.partitionKeyLength,
263
- parts: Object.entries(e.parts).map(([n, r]) => ({ key: JSON.parse(n), value: r }))
263
+ parts: Object.entries(e.parts).map(([n, t]) => ({ key: JSON.parse(n), value: t }))
264
264
  };
265
265
  default:
266
- b(e);
266
+ k(e);
267
267
  }
268
268
  }
269
- function Je(e) {
269
+ function nn(e) {
270
270
  switch (e.type) {
271
271
  case "Json":
272
272
  return {
273
273
  type: "Json",
274
274
  keyLength: e.keyLength,
275
275
  data: Object.fromEntries(
276
- e.data.map(({ key: n, value: r }) => [JSON.stringify(n), r])
276
+ e.data.map(({ key: n, value: t }) => [JSON.stringify(n), t])
277
277
  )
278
278
  };
279
279
  case "JsonPartitioned":
@@ -281,7 +281,7 @@ function Je(e) {
281
281
  type: "JsonPartitioned",
282
282
  partitionKeyLength: e.partitionKeyLength,
283
283
  parts: Object.fromEntries(
284
- e.parts.map(({ key: n, value: r }) => [JSON.stringify(n), r])
284
+ e.parts.map(({ key: n, value: t }) => [JSON.stringify(n), t])
285
285
  )
286
286
  };
287
287
  case "BinaryPartitioned":
@@ -289,7 +289,7 @@ function Je(e) {
289
289
  type: "BinaryPartitioned",
290
290
  partitionKeyLength: e.partitionKeyLength,
291
291
  parts: Object.fromEntries(
292
- e.parts.map(({ key: n, value: r }) => [JSON.stringify(n), r])
292
+ e.parts.map(({ key: n, value: t }) => [JSON.stringify(n), t])
293
293
  )
294
294
  };
295
295
  case "ParquetPartitioned":
@@ -297,14 +297,14 @@ function Je(e) {
297
297
  type: "ParquetPartitioned",
298
298
  partitionKeyLength: e.partitionKeyLength,
299
299
  parts: Object.fromEntries(
300
- e.parts.map(({ key: n, value: r }) => [JSON.stringify(n), r])
300
+ e.parts.map(({ key: n, value: t }) => [JSON.stringify(n), t])
301
301
  )
302
302
  };
303
303
  default:
304
- b(e);
304
+ k(e);
305
305
  }
306
306
  }
307
- function Ne(e, n) {
307
+ function tn(e, n) {
308
308
  if (e !== void 0)
309
309
  switch (e.type) {
310
310
  case "Json":
@@ -312,140 +312,457 @@ function Ne(e, n) {
312
312
  case "JsonPartitioned":
313
313
  return {
314
314
  ...e,
315
- parts: e.parts.map((r) => ({
316
- key: r.key,
317
- value: n(r.value)
315
+ parts: e.parts.map((t) => ({
316
+ key: t.key,
317
+ value: n(t.value)
318
318
  }))
319
319
  };
320
320
  case "BinaryPartitioned":
321
321
  return {
322
322
  ...e,
323
- parts: e.parts.map((r) => ({
324
- key: r.key,
323
+ parts: e.parts.map((t) => ({
324
+ key: t.key,
325
325
  value: {
326
- index: n(r.value.index),
327
- values: n(r.value.values)
326
+ index: n(t.value.index),
327
+ values: n(t.value.values)
328
328
  }
329
329
  }))
330
330
  };
331
331
  case "ParquetPartitioned":
332
332
  return {
333
333
  ...e,
334
- parts: e.parts.map((r) => ({
335
- key: r.key,
336
- value: n(r.value)
334
+ parts: e.parts.map((t) => ({
335
+ key: t.key,
336
+ value: n(t.value)
337
337
  }))
338
338
  };
339
339
  }
340
340
  }
341
- function j(e, n) {
342
- const r = Math.floor(n / 8), t = 1 << 7 - n % 8;
343
- return (e[r] & t) > 0;
341
+ class rn extends Error {
342
+ constructor() {
343
+ super(...arguments);
344
+ b(this, "name", "AbortError");
345
+ }
344
346
  }
345
- function _(e, n) {
346
- return j(e.absent, n);
347
+ class on extends Error {
348
+ constructor() {
349
+ super(...arguments);
350
+ b(this, "name", "UiError");
351
+ }
347
352
  }
348
- function z(e, n) {
349
- if (e.isNA) return j(e.isNA, n);
350
- const r = e.type, t = e.data[n];
351
- switch (r) {
352
- case "Int":
353
- return t === -2147483648;
354
- case "Long":
355
- return t === -9007199254740991n;
356
- case "Float":
357
- return Number.isNaN(t);
358
- case "Double":
359
- return Number.isNaN(t);
360
- case "String":
361
- return t === null;
362
- case "Bytes":
363
- return t === null;
364
- default:
365
- throw Error(`unsupported data type: ${r}`);
353
+ function an(e) {
354
+ return e instanceof Error && e.name === "AbortError";
355
+ }
356
+ function ce(e) {
357
+ return e instanceof Error ? e.name === "AbortError" || ce(e.cause) : !1;
358
+ }
359
+ function sn(e) {
360
+ return e instanceof Error && e.name === "AggregateError";
361
+ }
362
+ class le extends Error {
363
+ constructor() {
364
+ super(...arguments);
365
+ b(this, "name", "PFrameError");
366
366
  }
367
367
  }
368
- const H = { type: "absent" };
369
- function Re(e) {
370
- return typeof e == "object" && e !== null && "type" in e && e.type === "absent";
368
+ function un(e) {
369
+ return e instanceof Error && e.name === "PFrameError";
371
370
  }
372
- const C = null;
373
- function W(e) {
374
- return e === C;
371
+ class cn extends le {
372
+ constructor() {
373
+ super(...arguments);
374
+ b(this, "name", "PFrameError.Driver");
375
+ }
375
376
  }
376
- function $e(e, n) {
377
- return !(n ? n(e) : W(e));
377
+ function ln(e) {
378
+ return e instanceof Error && e.name === "PFrameError.Driver";
378
379
  }
379
- function F(e, n, r) {
380
- const t = e.type;
381
- if (t === "Bytes")
382
- throw Error("Bytes not yet supported");
383
- if (r && "dataType" in r && r.dataType !== void 0 && r.dataType !== t)
384
- throw Error(`expected column of type ${r.dataType}, got ${t}`);
385
- if (_(e, n))
386
- return (r == null ? void 0 : r.absent) !== void 0 ? r.absent : H;
387
- if (z(e, n))
388
- return (r == null ? void 0 : r.na) !== void 0 ? r.na : C;
389
- const i = e.data[n];
390
- switch (t) {
391
- case "Int":
392
- return i;
393
- case "Long":
394
- return Number(i);
395
- case "Float":
396
- return i;
397
- case "Double":
398
- return i;
399
- case "String":
400
- return i;
380
+ function de(e) {
381
+ if (typeof e == "string")
382
+ return `String value was thrown: ${e}`;
383
+ if (e && typeof e == "object")
384
+ try {
385
+ return `Plain object was thrown: ${JSON.stringify(e)}`;
386
+ } catch (n) {
387
+ return `Non-serializable object was thrown (JSON.stringify failed: ${n instanceof Error ? n.message : String(n)}): ${String(e)}`;
388
+ }
389
+ return `Non-Error value (${typeof e}) was thrown: ${e}`;
390
+ }
391
+ function C(e) {
392
+ return e instanceof Error ? e : new Error(de(e));
393
+ }
394
+ function J(e) {
395
+ const n = e.cause ? J(e.cause) : void 0, t = new Error(e.message, n !== void 0 ? { cause: n } : void 0);
396
+ return t.name = e.name || "Error", t.stack = e.stack, t;
397
+ }
398
+ function B(e) {
399
+ const n = C(e), t = n.cause ? B(n.cause) : void 0;
400
+ return {
401
+ name: n.name,
402
+ message: n.message,
403
+ stack: n.stack,
404
+ ...n.cause !== void 0 && { cause: t }
405
+ };
406
+ }
407
+ function dn(e) {
408
+ if (e.error)
409
+ throw e.error instanceof Error ? e.error : J(e.error);
410
+ return e.value;
411
+ }
412
+ function M(e) {
413
+ return e.error ? { error: B(e.error) } : { value: e.value };
414
+ }
415
+ function fn(e) {
416
+ return e.error ? { error: J(e.error) } : { value: e.value };
417
+ }
418
+ function fe(e) {
419
+ try {
420
+ return { value: e() };
421
+ } catch (n) {
422
+ return { error: C(n) };
423
+ }
424
+ }
425
+ async function pe(e) {
426
+ try {
427
+ return { value: await e() };
428
+ } catch (n) {
429
+ return { error: C(n) };
401
430
  }
402
431
  }
403
- function De(e, n, r) {
404
- return F(e, n, r);
432
+ function pn(e) {
433
+ const n = fe(e);
434
+ return M(n);
435
+ }
436
+ async function mn(e) {
437
+ const n = await pe(e);
438
+ return M(n);
405
439
  }
406
- function Le(e, n, r) {
407
- return F(e, n, r);
440
+ function hn(e) {
441
+ return JSON.stringify(e);
408
442
  }
409
- function Ve(e) {
443
+ function m(e) {
444
+ return F(e);
445
+ }
446
+ function me(e) {
447
+ return JSON.parse(e);
448
+ }
449
+ const g = {
450
+ Int: "Int",
451
+ Long: "Long",
452
+ Float: "Float",
453
+ Double: "Double",
454
+ String: "String",
455
+ Bytes: "Bytes"
456
+ };
457
+ function I(e, n) {
458
+ return e == null ? void 0 : e[n];
459
+ }
460
+ function j(e, n, t, r = "readMetadataJsonOrThrow") {
461
+ const o = I(e, t);
462
+ if (o === void 0) return;
463
+ const i = n[t];
464
+ try {
465
+ const a = JSON.parse(o);
466
+ return i.parse(a);
467
+ } catch (a) {
468
+ throw new Error(
469
+ `${r} failed, key: ${String(t)}, value: ${o}, error: ${C(a)}`
470
+ );
471
+ }
472
+ }
473
+ function U(e, n, t) {
474
+ try {
475
+ return j(e, n, t);
476
+ } catch {
477
+ return;
478
+ }
479
+ }
480
+ const yn = {
481
+ Alphabet: "pl7.app/alphabet",
482
+ BlockId: "pl7.app/blockId"
483
+ }, q = {};
484
+ function gn(e, n) {
485
+ return I(e == null ? void 0 : e.domain, n);
486
+ }
487
+ function bn(e, n) {
488
+ return j(e == null ? void 0 : e.domain, q, n, "readDomainJsonOrThrow");
489
+ }
490
+ function An(e, n) {
491
+ return U(e == null ? void 0 : e.domain, q, n);
492
+ }
493
+ const y = {
494
+ Alphabet: "pl7.app/alphabet",
495
+ DiscreteValues: "pl7.app/discreteValues",
496
+ Format: "pl7.app/format",
497
+ Graph: {
498
+ IsVirtual: "pl7.app/graph/isVirtual"
499
+ },
500
+ HideDataFromUi: "pl7.app/hideDataFromUi",
501
+ IsLinkerColumn: "pl7.app/isLinkerColumn",
502
+ Label: "pl7.app/label",
503
+ Max: "pl7.app/max",
504
+ Min: "pl7.app/min",
505
+ Parents: "pl7.app/parents",
506
+ Sequence: {
507
+ Annotation: {
508
+ Mapping: "pl7.app/sequence/annotation/mapping"
509
+ },
510
+ IsAnnotation: "pl7.app/sequence/isAnnotation"
511
+ },
512
+ Table: {
513
+ FontFamily: "pl7.app/table/fontFamily",
514
+ OrderPriority: "pl7.app/table/orderPriority",
515
+ Visibility: "pl7.app/table/visibility"
516
+ },
517
+ Trace: "pl7.app/trace"
518
+ }, he = l.object({
519
+ type: l.nativeEnum(g),
520
+ name: l.string(),
521
+ domain: l.record(l.string(), l.string()).optional(),
522
+ annotations: l.record(l.string(), l.string()).optional(),
523
+ parentAxes: l.array(l.number()).optional()
524
+ }).passthrough(), W = {
525
+ [y.DiscreteValues]: l.array(l.string()).or(l.array(l.number())),
526
+ [y.Graph.IsVirtual]: l.boolean(),
527
+ [y.HideDataFromUi]: l.boolean(),
528
+ [y.IsLinkerColumn]: l.boolean(),
529
+ [y.Max]: l.number(),
530
+ [y.Min]: l.number(),
531
+ [y.Parents]: l.array(he),
532
+ [y.Sequence.Annotation.Mapping]: l.record(l.string(), l.string()),
533
+ [y.Sequence.IsAnnotation]: l.boolean(),
534
+ [y.Table.OrderPriority]: l.number(),
535
+ [y.Trace]: l.record(l.string(), l.unknown())
536
+ };
537
+ function wn(e, n) {
538
+ return I(e == null ? void 0 : e.annotations, n);
539
+ }
540
+ function vn(e, n) {
541
+ return j(e == null ? void 0 : e.annotations, W, n, "readAnnotationJsonOrThrow");
542
+ }
543
+ function z(e, n) {
544
+ return U(e == null ? void 0 : e.annotations, W, n);
545
+ }
546
+ function O(e) {
547
+ return { axis: e, children: [] };
548
+ }
549
+ function P(e) {
550
+ const n = O(e);
551
+ let t = [n];
552
+ for (; t.length; ) {
553
+ const r = [];
554
+ for (const o of t)
555
+ o.children = o.axis.parentAxesSpec.map(O), r.push(...o.children);
556
+ t = r;
557
+ }
558
+ return n;
559
+ }
560
+ function xn(e) {
561
+ const n = /* @__PURE__ */ new Set([m(p(e.axis))]);
562
+ let t = [e];
563
+ for (; t.length; ) {
564
+ const r = [];
565
+ for (const o of t)
566
+ for (const i of o.children)
567
+ n.add(m(p(i.axis))), r.push(i);
568
+ t = r;
569
+ }
570
+ return n;
571
+ }
572
+ function S(e) {
573
+ const n = [e.axis];
574
+ let t = [e];
575
+ for (; t.length; ) {
576
+ const r = [];
577
+ for (const o of t)
578
+ for (const i of o.children)
579
+ n.push(i.axis), r.push(i);
580
+ t = r;
581
+ }
582
+ return n;
583
+ }
584
+ function D(e) {
585
+ return m(S(P(e)).map(p));
586
+ }
587
+ function ye(e, n) {
588
+ if (e.name !== n.name)
589
+ return e.name < n.name ? 1 : -1;
590
+ if (e.type !== n.type)
591
+ return e.type < n.type ? 1 : -1;
592
+ const t = m(e.domain ?? {}), r = m(n.domain ?? {});
593
+ if (t !== r)
594
+ return t < r ? 1 : -1;
595
+ const o = D(e), i = D(n);
596
+ if (o !== i)
597
+ return o < i ? 1 : -1;
598
+ const a = m(e.annotations ?? {}), s = m(n.annotations ?? {});
599
+ return a !== s ? a < s ? 1 : -1 : 0;
600
+ }
601
+ function ge(e) {
602
+ const n = z(e, y.Parents);
603
+ return n === void 0 ? [] : n;
604
+ }
605
+ function H(e) {
606
+ e.parentAxesSpec.forEach(H), e.parentAxesSpec.sort(ye);
607
+ }
608
+ function be(e) {
609
+ let t = [O(e)];
610
+ const r = new Set(m(p(e)));
611
+ for (; t.length; ) {
612
+ const o = [], i = /* @__PURE__ */ new Set();
613
+ for (const a of t) {
614
+ a.children = a.axis.parentAxesSpec.map(O);
615
+ for (const s of a.children) {
616
+ const u = m(p(s.axis));
617
+ if (!i.has(u)) {
618
+ if (o.push(s), i.add(u), r.has(u))
619
+ return !0;
620
+ r.add(u);
621
+ }
622
+ }
623
+ }
624
+ t = o;
625
+ }
626
+ return !1;
627
+ }
628
+ function G(e) {
629
+ if (!e.length)
630
+ return [];
631
+ const n = e.map((t) => {
632
+ const { parentAxes: r, ...o } = t;
633
+ return { ...o, annotations: { ...o.annotations }, parentAxesSpec: [] };
634
+ });
635
+ return e.forEach((t, r) => {
636
+ var i;
637
+ const o = n[r];
638
+ t.parentAxes ? o.parentAxesSpec = t.parentAxes.map((a) => n[a]) : (o.parentAxesSpec = G(ge(t)), (i = o.annotations) == null || delete i[y.Parents]);
639
+ }), n.some(be) ? n.forEach((t) => {
640
+ t.parentAxesSpec = [];
641
+ }) : n.forEach((t) => {
642
+ H(t);
643
+ }), n;
644
+ }
645
+ function kn(e) {
646
+ const n = e.map((t) => m(p(t)));
647
+ return e.map((t) => {
648
+ const o = t.parentAxesSpec.map((s) => m(p(s))).map((s) => n.indexOf(s)), { parentAxesSpec: i, ...a } = t;
649
+ return o.length ? { ...a, parentAxes: o } : a;
650
+ });
651
+ }
652
+ const Pn = {
653
+ Label: "pl7.app/label",
654
+ Table: {
655
+ RowSelection: "pl7.app/table/row-selection"
656
+ }
657
+ };
658
+ function Sn(e) {
410
659
  return {
411
660
  kind: e.kind,
412
661
  valueType: e.valueType,
413
662
  name: e.name,
414
663
  domain: e.domain,
415
664
  parentAxes: e.parentAxes,
416
- axesId: J(e.axesSpec)
665
+ axesId: _(e.axesSpec)
417
666
  };
418
667
  }
419
- function Te(e) {
668
+ function En(e) {
420
669
  return {
421
670
  columnId: e.id,
422
671
  spec: e.spec
423
672
  };
424
673
  }
425
- function h(e) {
426
- const { type: n, name: r, domain: t } = e, i = { type: n, name: r };
427
- return t && Object.entries(t).length > 0 && Object.assign(i, { domain: t }), i;
674
+ function p(e) {
675
+ const { type: n, name: t, domain: r } = e, o = { type: n, name: t };
676
+ return r && Object.entries(r).length > 0 && Object.assign(o, { domain: r }), o;
428
677
  }
429
- function J(e) {
430
- return e.map(h);
678
+ function _(e) {
679
+ return e.map(p);
431
680
  }
432
- function Ie(e) {
433
- return y(h(e));
681
+ function On(e) {
682
+ return m(p(e));
434
683
  }
435
- function G(e, n) {
684
+ function Ae(e, n) {
436
685
  if (e === void 0) return n === void 0;
437
686
  if (n === void 0) return !0;
438
- for (const r in n)
439
- if (e[r] !== n[r]) return !1;
687
+ for (const t in n)
688
+ if (e[t] !== n[t]) return !1;
440
689
  return !0;
441
690
  }
442
- function X(e, n) {
443
- return e.name === n.name && G(e.domain, n.domain);
691
+ function we(e, n) {
692
+ return e.name === n.name && Ae(e.domain, n.domain);
444
693
  }
445
- function Be(e, n) {
446
- return { ...e, src: v(e.src, n) };
694
+ function Q(e, n) {
695
+ const t = Math.floor(n / 8), r = 1 << 7 - n % 8;
696
+ return (e[t] & r) > 0;
447
697
  }
448
- function v(e, n) {
698
+ function ve(e, n) {
699
+ return Q(e.absent, n);
700
+ }
701
+ function xe(e, n) {
702
+ if (e.isNA) return Q(e.isNA, n);
703
+ const t = e.type, r = e.data[n];
704
+ switch (t) {
705
+ case g.Int:
706
+ return r === -2147483648;
707
+ case g.Long:
708
+ return r === -9007199254740991n;
709
+ case g.Float:
710
+ return Number.isNaN(r);
711
+ case g.Double:
712
+ return Number.isNaN(r);
713
+ case g.String:
714
+ return r === null;
715
+ case g.Bytes:
716
+ return r === null;
717
+ default:
718
+ throw Error(`unsupported data type: ${t}`);
719
+ }
720
+ }
721
+ const ke = { type: "absent" };
722
+ function Fn(e) {
723
+ return typeof e == "object" && e !== null && "type" in e && e.type === "absent";
724
+ }
725
+ const X = null;
726
+ function Pe(e) {
727
+ return e === X;
728
+ }
729
+ function Cn(e, n) {
730
+ return !(n ? n(e) : Pe(e));
731
+ }
732
+ function Y(e, n, t) {
733
+ const r = e.type;
734
+ if (r === g.Bytes)
735
+ throw Error("Bytes not yet supported");
736
+ if (t && "dataType" in t && t.dataType !== void 0 && t.dataType !== r)
737
+ throw Error(`expected column of type ${t.dataType}, got ${r}`);
738
+ if (ve(e, n))
739
+ return (t == null ? void 0 : t.absent) !== void 0 ? t.absent : ke;
740
+ if (xe(e, n))
741
+ return (t == null ? void 0 : t.na) !== void 0 ? t.na : X;
742
+ const o = e.data[n];
743
+ switch (r) {
744
+ case g.Int:
745
+ return o;
746
+ case g.Long:
747
+ return Number(o);
748
+ case g.Float:
749
+ return o;
750
+ case g.Double:
751
+ return o;
752
+ case g.String:
753
+ return o;
754
+ }
755
+ }
756
+ function Ln(e, n, t) {
757
+ return Y(e, n, t);
758
+ }
759
+ function Jn(e, n, t) {
760
+ return Y(e, n, t);
761
+ }
762
+ function In(e, n) {
763
+ return { ...e, src: E(e.src, n) };
764
+ }
765
+ function E(e, n) {
449
766
  switch (e.type) {
450
767
  case "column":
451
768
  return {
@@ -465,19 +782,19 @@ function v(e, n) {
465
782
  case "full":
466
783
  return {
467
784
  type: e.type,
468
- entries: e.entries.map((r) => v(r, n))
785
+ entries: e.entries.map((t) => E(t, n))
469
786
  };
470
787
  case "outer":
471
788
  return {
472
789
  type: "outer",
473
- primary: v(e.primary, n),
474
- secondary: e.secondary.map((r) => v(r, n))
790
+ primary: E(e.primary, n),
791
+ secondary: e.secondary.map((t) => E(t, n))
475
792
  };
476
793
  default:
477
- b(e);
794
+ k(e);
478
795
  }
479
796
  }
480
- function Ue(e) {
797
+ function jn(e) {
481
798
  switch (e.type) {
482
799
  case "axis":
483
800
  return {
@@ -491,49 +808,49 @@ function Ue(e) {
491
808
  };
492
809
  }
493
810
  }
494
- function Q(e) {
495
- return y(e);
811
+ function Se(e) {
812
+ return F(e);
496
813
  }
497
- function qe(e) {
814
+ function Dn(e) {
498
815
  return JSON.parse(e);
499
816
  }
500
- function k(e) {
501
- return y(h(e));
817
+ function N(e) {
818
+ return F(p(e));
502
819
  }
503
- function A(e, n) {
820
+ function R(e, n) {
504
821
  return JSON.stringify([e, n]);
505
822
  }
506
- class Ke {
823
+ class Nn {
507
824
  /**
508
825
  * Creates a new anchor context from a set of anchor column specifications
509
826
  * @param anchors Record of anchor column specifications indexed by anchor ID
510
827
  */
511
828
  constructor(n) {
512
- f(this, "domains", /* @__PURE__ */ new Map());
513
- f(this, "axes", /* @__PURE__ */ new Map());
829
+ b(this, "domains", /* @__PURE__ */ new Map());
830
+ b(this, "axes", /* @__PURE__ */ new Map());
514
831
  /**
515
832
  * Domain packs are used to group domain keys that can be anchored to the same anchor
516
833
  * This is used to optimize the lookup of domain anchors
517
834
  */
518
- f(this, "domainPacks", []);
835
+ b(this, "domainPacks", []);
519
836
  /**
520
837
  * Maps domain packs to anchors
521
838
  */
522
- f(this, "domainPackToAnchor", /* @__PURE__ */ new Map());
839
+ b(this, "domainPackToAnchor", /* @__PURE__ */ new Map());
523
840
  this.anchors = n;
524
- const r = Object.entries(n);
525
- r.sort((t, i) => t[0].localeCompare(i[0]));
526
- for (const [t, i] of r) {
527
- for (let o = 0; o < i.axesSpec.length; o++) {
528
- const s = i.axesSpec[o], a = k(s);
529
- this.axes.set(a, { anchor: t, idx: o });
841
+ const t = Object.entries(n);
842
+ t.sort((r, o) => r[0].localeCompare(o[0]));
843
+ for (const [r, o] of t) {
844
+ for (let i = 0; i < o.axesSpec.length; i++) {
845
+ const a = o.axesSpec[i], s = N(a);
846
+ this.axes.set(s, { anchor: r, idx: i });
530
847
  }
531
- if (i.domain !== void 0) {
532
- const o = Object.entries(i.domain);
533
- o.sort((s, a) => s[0].localeCompare(a[0])), this.domainPackToAnchor.set(JSON.stringify(o), t), this.domainPacks.push(o.map(([s]) => s));
534
- for (const [s, a] of o) {
535
- const u = A(s, a);
536
- this.domains.set(u, t);
848
+ if (o.domain !== void 0) {
849
+ const i = Object.entries(o.domain);
850
+ i.sort((a, s) => a[0].localeCompare(s[0])), this.domainPackToAnchor.set(JSON.stringify(i), r), this.domainPacks.push(i.map(([a]) => a));
851
+ for (const [a, s] of i) {
852
+ const u = R(a, s);
853
+ this.domains.set(u, r);
537
854
  }
538
855
  }
539
856
  }
@@ -541,57 +858,57 @@ class Ke {
541
858
  /**
542
859
  * Implementation of derive method
543
860
  */
544
- derive(n, r) {
545
- const t = {
861
+ derive(n, t) {
862
+ const r = {
546
863
  name: n.name,
547
864
  axes: []
548
865
  };
549
- let i;
866
+ let o;
550
867
  if (n.domain !== void 0)
551
868
  e:
552
- for (const s of this.domainPacks) {
553
- const a = [];
554
- for (const c of s) {
869
+ for (const a of this.domainPacks) {
870
+ const s = [];
871
+ for (const c of a) {
555
872
  const d = n.domain[c];
556
873
  if (d !== void 0)
557
- a.push([c, d]);
874
+ s.push([c, d]);
558
875
  else
559
876
  break e;
560
877
  }
561
- const u = this.domainPackToAnchor.get(JSON.stringify(a));
878
+ const u = this.domainPackToAnchor.get(JSON.stringify(s));
562
879
  if (u !== void 0) {
563
- t.domainAnchor = u, i = new Set(s);
880
+ r.domainAnchor = u, o = new Set(a);
564
881
  break;
565
882
  }
566
883
  }
567
- for (const [s, a] of Object.entries(n.domain ?? {})) {
568
- if (i !== void 0 && i.has(s))
884
+ for (const [a, s] of Object.entries(n.domain ?? {})) {
885
+ if (o !== void 0 && o.has(a))
569
886
  continue;
570
- const u = A(s, a), c = this.domains.get(u);
571
- t.domain ?? (t.domain = {}), t.domain[s] = c ? { anchor: c } : a;
887
+ const u = R(a, s), c = this.domains.get(u);
888
+ r.domain ?? (r.domain = {}), r.domain[a] = c ? { anchor: c } : s;
572
889
  }
573
- if (t.axes = n.axesSpec.map((s) => {
574
- const a = k(s), u = this.axes.get(a);
575
- return u === void 0 ? h(s) : u;
576
- }), !r || r.length === 0)
577
- return t;
578
- const o = [];
579
- for (const s of r) {
580
- const [a, u] = s;
581
- if (typeof a == "number") {
582
- if (a < 0 || a >= n.axesSpec.length)
583
- throw new Error(`Axis index ${a} is out of bounds (0-${n.axesSpec.length - 1})`);
584
- o.push([a, u]);
890
+ if (r.axes = n.axesSpec.map((a) => {
891
+ const s = N(a), u = this.axes.get(s);
892
+ return u === void 0 ? p(a) : u;
893
+ }), !t || t.length === 0)
894
+ return r;
895
+ const i = [];
896
+ for (const a of t) {
897
+ const [s, u] = a;
898
+ if (typeof s == "number") {
899
+ if (s < 0 || s >= n.axesSpec.length)
900
+ throw new Error(`Axis index ${s} is out of bounds (0-${n.axesSpec.length - 1})`);
901
+ i.push([s, u]);
585
902
  } else {
586
- const c = n.axesSpec.findIndex((d) => d.name === a);
903
+ const c = n.axesSpec.findIndex((d) => d.name === s);
587
904
  if (c === -1)
588
- throw new Error(`Axis with name "${a}" not found in the column specification`);
589
- o.push([c, u]);
905
+ throw new Error(`Axis with name "${s}" not found in the column specification`);
906
+ i.push([c, u]);
590
907
  }
591
908
  }
592
- return o.sort((s, a) => s[0] - a[0]), {
593
- source: t,
594
- axisFilters: o
909
+ return i.sort((a, s) => a[0] - s[0]), {
910
+ source: r,
911
+ axisFilters: i
595
912
  };
596
913
  }
597
914
  /**
@@ -600,155 +917,155 @@ class Ke {
600
917
  * @param axisFilters Optional axis filters to apply to the column
601
918
  * @returns A canonicalized string representation of the anchored column identifier
602
919
  */
603
- deriveS(n, r) {
604
- return Q(this.derive(n, r));
920
+ deriveS(n, t) {
921
+ return Se(this.derive(n, t));
605
922
  }
606
923
  }
607
- function Me(e, n, r) {
608
- const t = { ...n }, i = (r == null ? void 0 : r.ignoreMissingDomains) ?? !1;
609
- if (t.domainAnchor !== void 0) {
610
- const o = e[t.domainAnchor];
611
- if (!o)
612
- throw new Error(`Anchor "${t.domainAnchor}" not found`);
613
- const s = o.domain || {};
614
- t.domain = { ...s, ...t.domain }, delete t.domainAnchor;
924
+ function Rn(e, n, t) {
925
+ const r = { ...n }, o = (t == null ? void 0 : t.ignoreMissingDomains) ?? !1;
926
+ if (r.domainAnchor !== void 0) {
927
+ const i = e[r.domainAnchor];
928
+ if (!i)
929
+ throw new Error(`Anchor "${r.domainAnchor}" not found`);
930
+ const a = i.domain || {};
931
+ r.domain = { ...a, ...r.domain }, delete r.domainAnchor;
615
932
  }
616
- if (t.domain) {
617
- const o = {};
618
- for (const [s, a] of Object.entries(t.domain))
619
- if (typeof a == "string")
620
- o[s] = a;
933
+ if (r.domain) {
934
+ const i = {};
935
+ for (const [a, s] of Object.entries(r.domain))
936
+ if (typeof s == "string")
937
+ i[a] = s;
621
938
  else {
622
- const u = e[a.anchor];
939
+ const u = e[s.anchor];
623
940
  if (!u)
624
- throw new Error(`Anchor "${a.anchor}" not found for domain key "${s}"`);
625
- if (!u.domain || u.domain[s] === void 0) {
626
- if (!i)
627
- throw new Error(`Domain key "${s}" not found in anchor "${a.anchor}"`);
941
+ throw new Error(`Anchor "${s.anchor}" not found for domain key "${a}"`);
942
+ if (!u.domain || u.domain[a] === void 0) {
943
+ if (!o)
944
+ throw new Error(`Domain key "${a}" not found in anchor "${s.anchor}"`);
628
945
  continue;
629
946
  }
630
- o[s] = u.domain[s];
947
+ i[a] = u.domain[a];
631
948
  }
632
- t.domain = o;
949
+ r.domain = i;
633
950
  }
634
- return t.axes && (t.axes = t.axes.map((o) => Y(e, o))), t;
951
+ return r.axes && (r.axes = r.axes.map((i) => Ee(e, i))), r;
635
952
  }
636
- function Y(e, n) {
637
- if (!Z(n))
953
+ function Ee(e, n) {
954
+ if (!Oe(n))
638
955
  return n;
639
- const r = n.anchor, t = e[r];
640
- if (!t)
641
- throw new Error(`Anchor "${r}" not found for axis reference`);
956
+ const t = n.anchor, r = e[t];
957
+ if (!r)
958
+ throw new Error(`Anchor "${t}" not found for axis reference`);
642
959
  if ("idx" in n) {
643
- if (n.idx < 0 || n.idx >= t.axesSpec.length)
644
- throw new Error(`Axis index ${n.idx} out of bounds for anchor "${r}"`);
645
- return t.axesSpec[n.idx];
960
+ if (n.idx < 0 || n.idx >= r.axesSpec.length)
961
+ throw new Error(`Axis index ${n.idx} out of bounds for anchor "${t}"`);
962
+ return r.axesSpec[n.idx];
646
963
  } else if ("name" in n) {
647
- const i = t.axesSpec.filter((o) => o.name === n.name);
648
- if (i.length > 1)
649
- throw new Error(`Multiple axes with name "${n.name}" found in anchor "${r}"`);
650
- if (i.length === 0)
651
- throw new Error(`Axis with name "${n.name}" not found in anchor "${r}"`);
652
- return i[0];
964
+ const o = r.axesSpec.filter((i) => i.name === n.name);
965
+ if (o.length > 1)
966
+ throw new Error(`Multiple axes with name "${n.name}" found in anchor "${t}"`);
967
+ if (o.length === 0)
968
+ throw new Error(`Axis with name "${n.name}" not found in anchor "${t}"`);
969
+ return o[0];
653
970
  } else if ("id" in n) {
654
- const i = t.axesSpec.filter((o) => X(n.id, h(o)));
655
- if (i.length > 1)
656
- throw new Error(`Multiple matching axes found for matcher in anchor "${r}"`);
657
- if (i.length === 0)
658
- throw new Error(`No matching axis found for matcher in anchor "${r}"`);
659
- return i[0];
971
+ const o = r.axesSpec.filter((i) => we(n.id, p(i)));
972
+ if (o.length > 1)
973
+ throw new Error(`Multiple matching axes found for matcher in anchor "${t}"`);
974
+ if (o.length === 0)
975
+ throw new Error(`No matching axis found for matcher in anchor "${t}"`);
976
+ return o[0];
660
977
  }
661
978
  throw new Error("Unsupported axis reference type");
662
979
  }
663
- function Z(e) {
980
+ function Oe(e) {
664
981
  return typeof e == "object" && "anchor" in e;
665
982
  }
666
- function _e(e) {
983
+ function Tn(e) {
667
984
  return typeof e == "object" && e !== null && "source" in e && "axisFilters" in e;
668
985
  }
669
- function l(e) {
986
+ function w(e) {
670
987
  return e.kind === "PColumn";
671
988
  }
672
- function ee(e) {
673
- return l(e.spec);
989
+ function Fe(e) {
990
+ return w(e.spec);
674
991
  }
675
- function ze(e) {
676
- return l(e.obj);
992
+ function $n(e) {
993
+ return w(e.obj);
677
994
  }
678
- function He(e) {
679
- return l(e.obj.spec);
995
+ function Kn(e) {
996
+ return w(e.obj.spec);
680
997
  }
681
- function We(e) {
682
- if (!ee(e)) throw new Error(`not a PColumn (kind = ${e.spec.kind})`);
998
+ function Vn(e) {
999
+ if (!Fe(e)) throw new Error(`not a PColumn (kind = ${e.spec.kind})`);
683
1000
  return e;
684
1001
  }
685
- function Ge(e, n) {
1002
+ function Bn(e, n) {
686
1003
  return e === void 0 ? void 0 : {
687
1004
  ...e,
688
1005
  data: n(e.data)
689
1006
  };
690
1007
  }
691
- function Xe(e) {
692
- const n = /* @__PURE__ */ new Map(), r = (t) => {
693
- switch (t.type) {
1008
+ function Mn(e) {
1009
+ const n = /* @__PURE__ */ new Map(), t = (r) => {
1010
+ switch (r.type) {
694
1011
  case "column":
695
- n.set(t.column.id, t.column);
1012
+ n.set(r.column.id, r.column);
696
1013
  return;
697
1014
  case "slicedColumn":
698
- n.set(t.column.id, t.column);
1015
+ n.set(r.column.id, r.column);
699
1016
  return;
700
1017
  case "inlineColumn":
701
1018
  return;
702
1019
  case "full":
703
1020
  case "inner":
704
- for (const i of t.entries) r(i);
1021
+ for (const o of r.entries) t(o);
705
1022
  return;
706
1023
  case "outer":
707
- r(t.primary);
708
- for (const i of t.secondary) r(i);
1024
+ t(r.primary);
1025
+ for (const o of r.secondary) t(o);
709
1026
  return;
710
1027
  default:
711
- b(t);
1028
+ k(r);
712
1029
  }
713
1030
  };
714
- return r(e), [...n.values()];
1031
+ return t(e), [...n.values()];
715
1032
  }
716
- function ne(e) {
1033
+ function Ce(e) {
717
1034
  throw new Error("Unexpected object: " + e);
718
1035
  }
719
- function g(e, n) {
1036
+ function L(e, n) {
720
1037
  switch (e.type) {
721
1038
  case "and":
722
- for (const r of e.operands)
723
- if (!g(r, n)) return !1;
1039
+ for (const t of e.operands)
1040
+ if (!L(t, n)) return !1;
724
1041
  return !0;
725
1042
  case "or":
726
- for (const r of e.operands)
727
- if (g(r, n)) return !0;
1043
+ for (const t of e.operands)
1044
+ if (L(t, n)) return !0;
728
1045
  return !1;
729
1046
  case "not":
730
- return !g(e.operand, n);
1047
+ return !L(e.operand, n);
731
1048
  case "name":
732
- return l(n) && n.name === e.name;
1049
+ return w(n) && n.name === e.name;
733
1050
  case "name_pattern":
734
- return l(n) && !!n.name.match(e.pattern);
1051
+ return w(n) && !!n.name.match(e.pattern);
735
1052
  case "annotation":
736
- return l(n) && n.annotations !== void 0 && n.annotations[e.annotation] === e.value;
1053
+ return w(n) && n.annotations !== void 0 && n.annotations[e.annotation] === e.value;
737
1054
  case "annotation_pattern":
738
- return l(n) && n.annotations !== void 0 && n.annotations[e.annotation] !== void 0 && !!n.annotations[e.annotation].match(e.pattern);
1055
+ return w(n) && n.annotations !== void 0 && n.annotations[e.annotation] !== void 0 && !!n.annotations[e.annotation].match(e.pattern);
739
1056
  case "has_axes":
740
- return l(n) && e.axes.every(
741
- (r) => n.axesSpec.some(
742
- (t) => (r.type === void 0 || r.type === t.type) && (r.name === void 0 || r.name === t.name) && (r.domain === void 0 || Object.keys(r.domain).length === 0 || t.domain !== void 0 && Object.entries(r.domain).every(
743
- ([i, o]) => t.domain[i] === o
1057
+ return w(n) && e.axes.every(
1058
+ (t) => n.axesSpec.some(
1059
+ (r) => (t.type === void 0 || t.type === r.type) && (t.name === void 0 || t.name === r.name) && (t.domain === void 0 || Object.keys(t.domain).length === 0 || r.domain !== void 0 && Object.entries(t.domain).every(
1060
+ ([o, i]) => r.domain[o] === i
744
1061
  ))
745
1062
  )
746
1063
  );
747
1064
  default:
748
- ne(e);
1065
+ Ce(e);
749
1066
  }
750
1067
  }
751
- function x(e, n) {
1068
+ function T(e, n) {
752
1069
  if (e.name !== void 0 && e.name !== n.name)
753
1070
  return !1;
754
1071
  if (e.type !== void 0) {
@@ -759,14 +1076,14 @@ function x(e, n) {
759
1076
  return !1;
760
1077
  }
761
1078
  if (e.domain !== void 0) {
762
- const r = n.domain || {};
763
- for (const [t, i] of Object.entries(e.domain))
764
- if (r[t] !== i)
1079
+ const t = n.domain || {};
1080
+ for (const [r, o] of Object.entries(e.domain))
1081
+ if (t[r] !== o)
765
1082
  return !1;
766
1083
  }
767
1084
  return !0;
768
1085
  }
769
- function E(e, n) {
1086
+ function $(e, n) {
770
1087
  if (n.name !== void 0 && e.name !== n.name || n.namePattern !== void 0 && !new RegExp(n.namePattern).test(e.name))
771
1088
  return !1;
772
1089
  if (n.type !== void 0) {
@@ -777,64 +1094,231 @@ function E(e, n) {
777
1094
  return !1;
778
1095
  }
779
1096
  if (n.domain !== void 0) {
780
- const r = e.domain || {};
781
- for (const [t, i] of Object.entries(n.domain))
782
- if (r[t] !== i)
1097
+ const t = e.domain || {};
1098
+ for (const [r, o] of Object.entries(n.domain))
1099
+ if (t[r] !== o)
783
1100
  return !1;
784
1101
  }
785
1102
  if (n.axes !== void 0) {
786
- const r = e.axesSpec.map(h);
1103
+ const t = e.axesSpec.map(p);
787
1104
  if (n.partialAxesMatch) {
788
- for (const t of n.axes)
789
- if (!r.some((i) => x(t, i)))
1105
+ for (const r of n.axes)
1106
+ if (!t.some((o) => T(r, o)))
790
1107
  return !1;
791
1108
  } else {
792
- if (r.length !== n.axes.length)
1109
+ if (t.length !== n.axes.length)
793
1110
  return !1;
794
- for (let t = 0; t < n.axes.length; t++)
795
- if (!x(n.axes[t], r[t]))
1111
+ for (let r = 0; r < n.axes.length; r++)
1112
+ if (!T(n.axes[r], t[r]))
796
1113
  return !1;
797
1114
  }
798
1115
  }
799
1116
  if (n.annotations !== void 0) {
800
- const r = e.annotations || {};
801
- for (const [t, i] of Object.entries(n.annotations))
802
- if (r[t] !== i)
1117
+ const t = e.annotations || {};
1118
+ for (const [r, o] of Object.entries(n.annotations))
1119
+ if (t[r] !== o)
803
1120
  return !1;
804
1121
  }
805
1122
  if (n.annotationPatterns !== void 0) {
806
- const r = e.annotations || {};
807
- for (const [t, i] of Object.entries(n.annotationPatterns)) {
808
- const o = r[t];
809
- if (o === void 0 || !new RegExp(i).test(o))
1123
+ const t = e.annotations || {};
1124
+ for (const [r, o] of Object.entries(n.annotationPatterns)) {
1125
+ const i = t[r];
1126
+ if (i === void 0 || !new RegExp(o).test(i))
810
1127
  return !1;
811
1128
  }
812
1129
  }
813
1130
  return !0;
814
1131
  }
815
- function Qe(e) {
816
- return Array.isArray(e) ? (n) => e.some((r) => l(n) && E(n, r)) : (n) => l(n) && E(n, e);
1132
+ function Un(e) {
1133
+ return Array.isArray(e) ? (n) => e.some((t) => w(n) && $(n, t)) : (n) => w(n) && $(n, e);
817
1134
  }
818
- function Ye(e) {
1135
+ function qn(e) {
819
1136
  const n = {
820
1137
  kind: e.kind,
821
1138
  name: e.name
822
1139
  };
823
- return e.domain !== void 0 && (n.domain = e.domain), l(e) && (n.axesSpec = J(e.axesSpec)), y(n);
1140
+ return e.domain !== void 0 && (n.domain = e.domain), w(e) && (n.axesSpec = _(e.axesSpec)), F(n);
824
1141
  }
825
- const Ze = { href: "/" }, en = m.object({
826
- __isRef: m.literal(!0).describe("Crucial marker for the block dependency tree reconstruction"),
827
- blockId: m.string().describe("Upstream block id"),
828
- name: m.string().describe("Name of the output provided to the upstream block's output context"),
829
- requireEnrichments: m.literal(!0).optional().describe("True if current block that stores this reference in its args, may need enrichments for the references value originating from the blocks in between current and referenced block")
1142
+ class A {
1143
+ constructor(n) {
1144
+ /** Graph of linkers connected by axes (single or grouped by parents) */
1145
+ b(this, "data");
1146
+ this.data = n;
1147
+ }
1148
+ get keys() {
1149
+ return this.data.keys();
1150
+ }
1151
+ get keyAxesIds() {
1152
+ return [...this.data.keys()].map(me);
1153
+ }
1154
+ static fromColumns(n) {
1155
+ var r, o;
1156
+ const t = /* @__PURE__ */ new Map();
1157
+ for (const i of n.filter((a) => !!z(a.spec, y.IsLinkerColumn))) {
1158
+ const a = A.getAxesGroups(G(i.spec.axesSpec));
1159
+ if (a.length !== 2)
1160
+ continue;
1161
+ const [s, u] = a, c = A.getAxesRoots(s).map((f) => {
1162
+ const h = S(P(f));
1163
+ return [m(h.map(p)), h];
1164
+ }), d = A.getAxesRoots(u).map((f) => {
1165
+ const h = S(P(f));
1166
+ return [m(h.map(p)), h];
1167
+ });
1168
+ for (const [f, h] of c)
1169
+ t.has(f) || t.set(f, { keyAxesSpec: h, linkWith: /* @__PURE__ */ new Map() });
1170
+ for (const [f, h] of d)
1171
+ t.has(f) || t.set(f, { keyAxesSpec: h, linkWith: /* @__PURE__ */ new Map() });
1172
+ for (const [f] of c)
1173
+ for (const [h] of d)
1174
+ (r = t.get(f)) == null || r.linkWith.set(h, i), (o = t.get(h)) == null || o.linkWith.set(f, i);
1175
+ }
1176
+ return new this(t);
1177
+ }
1178
+ /** Get all available nodes of linker graphs if start from sourceAxesKeys */
1179
+ searchAvailableAxesKeys(n) {
1180
+ const t = new Set(n), r = /* @__PURE__ */ new Set();
1181
+ let o = n;
1182
+ for (; o.length; ) {
1183
+ const i = [];
1184
+ for (const a of o) {
1185
+ const s = this.data.get(a);
1186
+ if (s)
1187
+ for (const u of s.linkWith.keys())
1188
+ !r.has(u) && !t.has(u) && (i.push(u), r.add(u));
1189
+ }
1190
+ o = i;
1191
+ }
1192
+ return r;
1193
+ }
1194
+ /** Get all linker columns that are necessary to reach endKey from startKey */
1195
+ searchLinkerPath(n, t) {
1196
+ const r = {};
1197
+ let o = /* @__PURE__ */ new Set([n]);
1198
+ const i = /* @__PURE__ */ new Set([n]);
1199
+ for (; o.size; ) {
1200
+ const a = /* @__PURE__ */ new Set();
1201
+ for (const s of o) {
1202
+ const u = this.data.get(s);
1203
+ if (u)
1204
+ for (const c of u.linkWith.keys())
1205
+ if (r[c] = s, c === t) {
1206
+ const d = [];
1207
+ let f = t;
1208
+ for (; r[f] !== n; )
1209
+ d.push(f), f = r[f];
1210
+ return d.push(f), d.map((h) => this.data.get(h).linkWith.get(r[h]));
1211
+ } else i.has(c) || (a.add(c), i.add(c));
1212
+ }
1213
+ o = a;
1214
+ }
1215
+ return [];
1216
+ }
1217
+ getLinkerColumnsForAxes({
1218
+ from: n,
1219
+ to: t,
1220
+ throwWhenNoLinkExists: r = !0
1221
+ }) {
1222
+ const o = n.map(A.getLinkerKeyFromAxisSpec);
1223
+ return Array.from(
1224
+ new Map(
1225
+ A.getAxesRoots(t).map(A.getLinkerKeyFromAxisSpec).flatMap((i) => {
1226
+ const a = o.map((s) => this.searchLinkerPath(s, i)).reduce(
1227
+ (s, u) => s.length && s.length < u.length ? s : u,
1228
+ []
1229
+ ).map((s) => [s.columnId, s]);
1230
+ if (!a.length && r)
1231
+ throw Error(`Unable to find linker column for ${i}`);
1232
+ return a;
1233
+ })
1234
+ ).values()
1235
+ );
1236
+ }
1237
+ /** Get list of axisSpecs from keys of linker columns map */
1238
+ getAxesListFromKeysList(n) {
1239
+ return Array.from(
1240
+ new Map(
1241
+ n.flatMap((t) => {
1242
+ var r;
1243
+ return ((r = this.data.get(t)) == null ? void 0 : r.keyAxesSpec) ?? [];
1244
+ }).map((t) => [m(p(t)), t])
1245
+ ).values()
1246
+ );
1247
+ }
1248
+ /** Get axes of target axes that are impossible to be linked to source axes with current linker map */
1249
+ getNonLinkableAxes(n, t) {
1250
+ const r = n.map(A.getLinkerKeyFromAxisSpec), o = A.getAxesRoots(t).map(A.getLinkerKeyFromAxisSpec).filter(
1251
+ (i) => !r.some((a) => this.searchLinkerPath(a, i).length)
1252
+ );
1253
+ return this.getAxesListFromKeysList(o);
1254
+ }
1255
+ /** Get all axes that can be connected to sourceAxes by linkers */
1256
+ getReachableByLinkersAxesFromAxes(n) {
1257
+ const t = n.map(A.getLinkerKeyFromAxisSpec), r = this.searchAvailableAxesKeys(t);
1258
+ return this.getAxesListFromKeysList([...r]);
1259
+ }
1260
+ static getLinkerKeyFromAxisSpec(n) {
1261
+ return m(S(P(n)).map(p));
1262
+ }
1263
+ /** Split array of axes into several arrays by parents: axes of one group are parents for each other.
1264
+ There are no order inside every group. */
1265
+ static getAxesGroups(n) {
1266
+ switch (n.length) {
1267
+ case 0:
1268
+ return [];
1269
+ case 1:
1270
+ return [[n[0]]];
1271
+ }
1272
+ const t = n.map((u) => m(p(u))), r = n.map(
1273
+ (u) => new Set(
1274
+ u.parentAxesSpec.map((c) => m(p(c))).map((c) => {
1275
+ const d = t.indexOf(c);
1276
+ if (d === -1)
1277
+ throw new Error(`malformed axesSpec: ${JSON.stringify(n)}, unable to locate parent ${c}`);
1278
+ return d;
1279
+ })
1280
+ )
1281
+ ), o = [...n.keys()], i = [], a = /* @__PURE__ */ new Set();
1282
+ let s = o.find((u) => !a.has(u));
1283
+ for (; s !== void 0; ) {
1284
+ const u = [s];
1285
+ a.add(s);
1286
+ let c = [s];
1287
+ for (; c.length; ) {
1288
+ const d = /* @__PURE__ */ new Set();
1289
+ for (const f of c) {
1290
+ const h = r[f];
1291
+ o.forEach((v) => {
1292
+ if (v === f || a.has(v))
1293
+ return;
1294
+ (r[v].has(f) || h.has(v)) && (u.push(v), d.add(v), a.add(v));
1295
+ });
1296
+ }
1297
+ c = [...d];
1298
+ }
1299
+ i.push([...u]), s = o.find((d) => !a.has(d));
1300
+ }
1301
+ return i.map((u) => u.map((c) => n[c]));
1302
+ }
1303
+ /** Get all axes that are not parents of any other axis */
1304
+ static getAxesRoots(n) {
1305
+ const t = new Set(n.flatMap((r) => r.parentAxesSpec).map((r) => m(p(r))));
1306
+ return n.filter((r) => !t.has(m(p(r))));
1307
+ }
1308
+ }
1309
+ const Wn = { href: "/" }, zn = l.object({
1310
+ __isRef: l.literal(!0).describe("Crucial marker for the block dependency tree reconstruction"),
1311
+ blockId: l.string().describe("Upstream block id"),
1312
+ name: l.string().describe("Name of the output provided to the upstream block's output context"),
1313
+ requireEnrichments: l.literal(!0).optional().describe("True if current block that stores this reference in its args, may need enrichments for the references value originating from the blocks in between current and referenced block")
830
1314
  }).describe(
831
1315
  "Universal reference type, allowing to set block connections. It is crucial that {@link __isRef} is present and equal to true, internal logic relies on this marker to build block dependency trees."
832
1316
  ).readonly();
833
- function nn(e) {
1317
+ function Hn(e) {
834
1318
  return typeof e == "object" && e !== null && "__isRef" in e && e.__isRef === !0 && "blockId" in e && "name" in e;
835
1319
  }
836
- function rn(e, n, r = !1) {
837
- return r ? {
1320
+ function Gn(e, n, t = !1) {
1321
+ return t ? {
838
1322
  __isRef: !0,
839
1323
  blockId: e,
840
1324
  name: n,
@@ -845,24 +1329,24 @@ function rn(e, n, r = !1) {
845
1329
  name: n
846
1330
  };
847
1331
  }
848
- function tn(e, n = !0) {
1332
+ function _n(e, n = !0) {
849
1333
  if (n)
850
1334
  return {
851
1335
  ...e,
852
1336
  requireEnrichments: !0
853
1337
  };
854
1338
  {
855
- const { requireEnrichments: r, ...t } = e;
856
- return t;
1339
+ const { requireEnrichments: t, ...r } = e;
1340
+ return r;
857
1341
  }
858
1342
  }
859
- function on(e, n, r = !1) {
860
- return e.blockId === n.blockId && e.name === n.name && (r || e.requireEnrichments === n.requireEnrichments);
1343
+ function Qn(e, n, t = !1) {
1344
+ return e.blockId === n.blockId && e.name === n.name && (t || e.requireEnrichments === n.requireEnrichments);
861
1345
  }
862
- function an(e, n) {
1346
+ function Xn(e, n) {
863
1347
  return e.ok ? { ok: !0, value: n(e.value) } : e;
864
1348
  }
865
- function re(e) {
1349
+ function Le(e) {
866
1350
  if (e instanceof Int8Array || e instanceof Uint8Array || e instanceof Uint8ClampedArray)
867
1351
  return new DataView(e.buffer, e.byteOffset, e.byteLength);
868
1352
  if (e instanceof ArrayBuffer) return new DataView(e);
@@ -870,183 +1354,75 @@ function re(e) {
870
1354
  "Expected `data` to be an ArrayBuffer, Buffer, Int8Array, Uint8Array or Uint8ClampedArray"
871
1355
  );
872
1356
  }
873
- const te = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567", ie = "0123456789ABCDEFGHIJKLMNOPQRSTUV", oe = "0123456789ABCDEFGHJKMNPQRSTVWXYZ";
874
- function N(e, n, r) {
875
- r = r || {};
876
- let t, i;
1357
+ const Je = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567", Ie = "0123456789ABCDEFGHIJKLMNOPQRSTUV", je = "0123456789ABCDEFGHJKMNPQRSTVWXYZ";
1358
+ function Z(e, n, t) {
1359
+ t = t || {};
1360
+ let r, o;
877
1361
  switch (n) {
878
1362
  case "RFC3548":
879
1363
  case "RFC4648":
880
- t = te, i = !0;
1364
+ r = Je, o = !0;
881
1365
  break;
882
1366
  case "RFC4648-HEX":
883
- t = ie, i = !0;
1367
+ r = Ie, o = !0;
884
1368
  break;
885
1369
  case "Crockford":
886
- t = oe, i = !1;
1370
+ r = je, o = !1;
887
1371
  break;
888
1372
  default:
889
1373
  throw new Error("Unknown base32 variant: " + String(n));
890
1374
  }
891
- const o = r.padding !== void 0 ? r.padding : i, s = re(e);
892
- let a = 0, u = 0, c = "";
893
- for (let d = 0; d < s.byteLength; d++)
894
- for (u = u << 8 | s.getUint8(d), a += 8; a >= 5; )
895
- c += t[u >>> a - 5 & 31], a -= 5;
896
- if (a > 0 && (c += t[u << 5 - a & 31]), o)
1375
+ const i = t.padding !== void 0 ? t.padding : o, a = Le(e);
1376
+ let s = 0, u = 0, c = "";
1377
+ for (let d = 0; d < a.byteLength; d++)
1378
+ for (u = u << 8 | a.getUint8(d), s += 8; s >= 5; )
1379
+ c += r[u >>> s - 5 & 31], s -= 5;
1380
+ if (s > 0 && (c += r[u << 5 - s & 31]), i)
897
1381
  for (; c.length % 8 !== 0; )
898
1382
  c += "=";
899
1383
  return c;
900
1384
  }
901
- const R = 15, ae = 24, $ = m.string().length(ae).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
902
- function sn() {
903
- const e = new Uint8Array(R);
904
- return crypto.getRandomValues(e), $.parse(N(e, "RFC4648"));
905
- }
906
- function se(e) {
907
- if (e.length !== R) throw new Error(`Wrong number of bytes: ${e.length}`);
908
- return $.parse(N(e, "RFC4648"));
909
- }
910
- async function un(e) {
911
- const n = new TextEncoder(), r = await crypto.subtle.digest("SHA-256", n.encode(e));
912
- return se(new Uint8Array(r.slice(0, 15)));
913
- }
914
- function cn(e) {
915
- return JSON.stringify(e);
1385
+ const ee = 15, De = 24, ne = l.string().length(De).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
1386
+ function Yn() {
1387
+ const e = new Uint8Array(ee);
1388
+ return crypto.getRandomValues(e), ne.parse(Z(e, "RFC4648"));
916
1389
  }
917
- function dn(e) {
918
- return y(e);
1390
+ function Ne(e) {
1391
+ if (e.length !== ee) throw new Error(`Wrong number of bytes: ${e.length}`);
1392
+ return ne.parse(Z(e, "RFC4648"));
919
1393
  }
920
- function fn(e) {
921
- return JSON.parse(e);
1394
+ async function Zn(e) {
1395
+ const n = new TextEncoder(), t = await crypto.subtle.digest("SHA-256", n.encode(e));
1396
+ return Ne(new Uint8Array(t.slice(0, 15)));
922
1397
  }
923
- class ln extends Error {
924
- constructor() {
925
- super(...arguments);
926
- f(this, "name", "AbortError");
927
- }
1398
+ const et = ["supportsLazyState"], nt = ["requiresUIAPIVersion", "requiresModelAPIVersion"];
1399
+ function tt(e, n, t = !0) {
1400
+ return e === void 0 ? !1 : e[n] === t;
928
1401
  }
929
- class mn extends Error {
930
- constructor() {
931
- super(...arguments);
932
- f(this, "name", "UiError");
933
- }
1402
+ function rt(e) {
1403
+ return e === void 0 ? /* @__PURE__ */ new Set() : new Set(Object.entries(e).filter(([n, t]) => n.startsWith("requires") && t === !0).map(([n]) => n));
934
1404
  }
935
- function pn(e) {
936
- return e instanceof Error && e.name === "AbortError";
937
- }
938
- function ue(e) {
939
- return e instanceof Error ? e.name === "AbortError" || ue(e.cause) : !1;
940
- }
941
- function hn(e) {
942
- return e instanceof Error && e.name === "AggregateError";
943
- }
944
- class ce extends Error {
945
- constructor() {
946
- super(...arguments);
947
- f(this, "name", "PFrameError");
948
- }
949
- }
950
- function yn(e) {
951
- return e instanceof Error && e.name === "PFrameError";
952
- }
953
- class bn extends ce {
954
- constructor() {
955
- super(...arguments);
956
- f(this, "name", "PFrameError.Driver");
957
- }
958
- }
959
- function vn(e) {
960
- return e instanceof Error && e.name === "PFrameError.Driver";
961
- }
962
- function de(e) {
963
- if (typeof e == "string")
964
- return `String value was thrown: ${e}`;
965
- if (e && typeof e == "object")
966
- try {
967
- return `Plain object was thrown: ${JSON.stringify(e)}`;
968
- } catch (n) {
969
- return `Non-serializable object was thrown (JSON.stringify failed: ${n instanceof Error ? n.message : String(n)}): ${String(e)}`;
970
- }
971
- return `Non-Error value (${typeof e}) was thrown: ${e}`;
972
- }
973
- function w(e) {
974
- return e instanceof Error ? e : new Error(de(e));
975
- }
976
- function P(e) {
977
- const n = e.cause ? P(e.cause) : void 0, r = new Error(e.message, n !== void 0 ? { cause: n } : void 0);
978
- return r.name = e.name || "Error", r.stack = e.stack, r;
979
- }
980
- function D(e) {
981
- const n = w(e), r = n.cause ? D(n.cause) : void 0;
982
- return {
983
- name: n.name,
984
- message: n.message,
985
- stack: n.stack,
986
- ...n.cause !== void 0 && { cause: r }
987
- };
988
- }
989
- function gn(e) {
990
- if (e.error)
991
- throw e.error instanceof Error ? e.error : P(e.error);
992
- return e.value;
993
- }
994
- function L(e) {
995
- return e.error ? { error: D(e.error) } : { value: e.value };
996
- }
997
- function wn(e) {
998
- return e.error ? { error: P(e.error) } : { value: e.value };
999
- }
1000
- function fe(e) {
1001
- try {
1002
- return { value: e() };
1003
- } catch (n) {
1004
- return { error: w(n) };
1005
- }
1006
- }
1007
- async function le(e) {
1008
- try {
1009
- return { value: await e() };
1010
- } catch (n) {
1011
- return { error: w(n) };
1012
- }
1013
- }
1014
- function Pn(e) {
1015
- const n = fe(e);
1016
- return L(n);
1017
- }
1018
- async function kn(e) {
1019
- const n = await le(e);
1020
- return L(n);
1021
- }
1022
- const An = ["supportsLazyState"], xn = ["requiresUIAPIVersion", "requiresModelAPIVersion"];
1023
- function En(e, n, r = !0) {
1024
- return e === void 0 ? !1 : e[n] === r;
1025
- }
1026
- function Sn(e) {
1027
- return e === void 0 ? /* @__PURE__ */ new Set() : new Set(Object.entries(e).filter(([n, r]) => n.startsWith("requires") && r === !0).map(([n]) => n));
1028
- }
1029
- function On(e) {
1030
- return e === void 0 ? /* @__PURE__ */ new Set() : new Set(Object.entries(e).filter(([n, r]) => n.startsWith("supports") && r === !0).map(([n]) => n));
1405
+ function ot(e) {
1406
+ return e === void 0 ? /* @__PURE__ */ new Set() : new Set(Object.entries(e).filter(([n, t]) => n.startsWith("supports") && t === !0).map(([n]) => n));
1031
1407
  }
1032
- class me extends Error {
1033
- constructor(r) {
1034
- super(`Some of the block requirements are not supported by the runtime: ${Array.from(r.entries()).map(([t, i]) => `${t}: ${i}`).join(", ")}`);
1035
- f(this, "name", "IncompatibleFlagsError");
1036
- this.incompatibleFlags = r;
1408
+ class Re extends Error {
1409
+ constructor(t) {
1410
+ super(`Some of the block requirements are not supported by the runtime: ${Array.from(t.entries()).map(([r, o]) => `${r}: ${o}`).join(", ")}`);
1411
+ b(this, "name", "IncompatibleFlagsError");
1412
+ this.incompatibleFlags = t;
1037
1413
  }
1038
1414
  }
1039
- class jn {
1415
+ class it {
1040
1416
  constructor() {
1041
- f(this, "supportedRequirements", /* @__PURE__ */ new Map());
1417
+ b(this, "supportedRequirements", /* @__PURE__ */ new Map());
1042
1418
  }
1043
1419
  /**
1044
1420
  * Adds a supported requirement to the runtime capabilities.
1045
1421
  * @param requirement - The requirement.
1046
1422
  * @param value - The value of the requirement. If not provided, defaults to true.
1047
1423
  */
1048
- addSupportedRequirement(n, r = !0) {
1049
- return this.supportedRequirements.has(n) || this.supportedRequirements.set(n, /* @__PURE__ */ new Set()), this.supportedRequirements.get(n).add(r), this;
1424
+ addSupportedRequirement(n, t = !0) {
1425
+ return this.supportedRequirements.has(n) || this.supportedRequirements.set(n, /* @__PURE__ */ new Set()), this.supportedRequirements.get(n).add(t), this;
1050
1426
  }
1051
1427
  /**
1052
1428
  * Returns a map of incompatible flags. If the block flags are compatible, returns undefined.
@@ -1055,14 +1431,14 @@ class jn {
1055
1431
  */
1056
1432
  getIncompatibleFlags(n) {
1057
1433
  if (n === void 0) return;
1058
- const r = /* @__PURE__ */ new Map();
1059
- for (const [t, i] of Object.entries(n))
1060
- if (t.startsWith("requires")) {
1061
- if (i === void 0) continue;
1062
- const o = this.supportedRequirements.get(t);
1063
- (o === void 0 || !o.has(i)) && r.set(t, i);
1434
+ const t = /* @__PURE__ */ new Map();
1435
+ for (const [r, o] of Object.entries(n))
1436
+ if (r.startsWith("requires")) {
1437
+ if (o === void 0) continue;
1438
+ const i = this.supportedRequirements.get(r);
1439
+ (i === void 0 || !i.has(o)) && t.set(r, o);
1064
1440
  }
1065
- return r.size === 0 ? void 0 : r;
1441
+ return t.size === 0 ? void 0 : t;
1066
1442
  }
1067
1443
  /**
1068
1444
  * Checks if the block flags are compatible with the runtime capabilities.
@@ -1078,106 +1454,129 @@ class jn {
1078
1454
  * @throws IncompatibleFlagsError if the block flags are incompatible with the runtime capabilities.
1079
1455
  */
1080
1456
  throwIfIncompatible(n) {
1081
- const r = this.getIncompatibleFlags(n);
1082
- if (r !== void 0)
1083
- throw new me(r);
1457
+ const t = this.getIncompatibleFlags(n);
1458
+ if (t !== void 0)
1459
+ throw new Re(t);
1084
1460
  }
1085
1461
  }
1086
1462
  export {
1087
- ln as AbortError,
1088
- xn as AllRequiresFeatureFlags,
1089
- An as AllSupportsFeatureFlags,
1090
- Ke as AnchoredIdDeriver,
1091
- Ze as DefaultNavigationState,
1092
- me as IncompatibleFlagsError,
1093
- bn as PFrameDriverError,
1094
- ce as PFrameError,
1095
- H as PTableAbsent,
1096
- C as PTableNA,
1097
- $ as PlId,
1098
- R as PlIdBytes,
1099
- ae as PlIdLength,
1100
- en as PlRef,
1101
- Pe as RangeBytes,
1102
- jn as RuntimeCapabilities,
1103
- mn as UiError,
1104
- Ie as canonicalizeAxisId,
1105
- dn as canonicalizeJson,
1106
- En as checkBlockFlag,
1107
- rn as createPlRef,
1108
- Fe as dataInfoToEntries,
1109
- Ye as deriveNativeId,
1110
- P as deserializeError,
1111
- wn as deserializeResult,
1112
- un as digestPlId,
1113
- w as ensureError,
1114
- We as ensurePColumn,
1115
- Je as entriesToDataInfo,
1116
- g as executePSpecPredicate,
1117
- Xe as extractAllColumns,
1118
- Sn as extractAllRequirements,
1119
- On as extractAllSupports,
1120
- be as extractCodeWithInfo,
1121
- ve as extractConfigGeneric,
1122
- J as getAxesId,
1123
- h as getAxisId,
1124
- Te as getColumnIdAndSpec,
1125
- Ee as getFileNameFromHandle,
1126
- q as getFilePathFromHandle,
1127
- Ve as getPColumnSpecId,
1128
- Ue as getPTableColumnId,
1129
- ue as hasAbortError,
1130
- pn as isAbortError,
1131
- hn as isAggregateError,
1132
- we as isBlockUIURL,
1133
- Se as isDataInfo,
1134
- M as isDataInfoEntries,
1135
- _e as isFilteredPColumn,
1136
- ge as isFolderURL,
1137
- U as isImportFileHandleIndex,
1138
- B as isImportFileHandleUpload,
1139
- xe as isLiveLog,
1140
- ee as isPColumn,
1141
- He as isPColumnResult,
1142
- l as isPColumnSpec,
1143
- ze as isPColumnSpecResult,
1144
- vn as isPFrameDriverError,
1145
- yn as isPFrameError,
1146
- Re as isPTableAbsent,
1147
- W as isPTableNA,
1148
- $e as isPTableValueAxis,
1149
- Ce as isPartitionedDataInfoEntries,
1150
- nn as isPlRef,
1151
- Oe as mapDataInfo,
1152
- Ne as mapDataInfoEntries,
1153
- v as mapJoinEntry,
1154
- Ge as mapPObjectData,
1155
- Be as mapPTableDef,
1156
- an as mapValueInVOE,
1157
- x as matchAxis,
1158
- X as matchAxisId,
1159
- E as matchPColumn,
1160
- ke as newRangeBytesOpt,
1161
- De as pTableValue,
1162
- Le as pTableValueBranded,
1163
- qe as parseColumnId,
1164
- fn as parseJson,
1165
- se as plId,
1166
- on as plRefsEqual,
1167
- Me as resolveAnchors,
1168
- Qe as selectorsToPredicate,
1169
- D as serializeError,
1170
- L as serializeResult,
1171
- Q as stringifyColumnId,
1172
- cn as stringifyJson,
1173
- sn as uniquePlId,
1174
- gn as unwrapResult,
1175
- Ae as validateRangeBytes,
1176
- je as visitDataInfo,
1177
- tn as withEnrichments,
1178
- Pn as wrapAndSerialize,
1179
- kn as wrapAndSerializeAsync,
1180
- le as wrapAsyncCallback,
1463
+ rn as AbortError,
1464
+ nt as AllRequiresFeatureFlags,
1465
+ et as AllSupportsFeatureFlags,
1466
+ Nn as AnchoredIdDeriver,
1467
+ y as Annotation,
1468
+ W as AnnotationJson,
1469
+ he as AxisSpec,
1470
+ Wn as DefaultNavigationState,
1471
+ yn as Domain,
1472
+ q as DomainJson,
1473
+ Re as IncompatibleFlagsError,
1474
+ A as LinkerMap,
1475
+ Pn as PColumnName,
1476
+ cn as PFrameDriverError,
1477
+ le as PFrameError,
1478
+ ke as PTableAbsent,
1479
+ X as PTableNA,
1480
+ ne as PlId,
1481
+ ee as PlIdBytes,
1482
+ De as PlIdLength,
1483
+ zn as PlRef,
1484
+ We as RangeBytes,
1485
+ it as RuntimeCapabilities,
1486
+ on as UiError,
1487
+ g as ValueType,
1488
+ On as canonicalizeAxisId,
1489
+ D as canonicalizeAxisWithParents,
1490
+ m as canonicalizeJson,
1491
+ tt as checkBlockFlag,
1492
+ Gn as createPlRef,
1493
+ en as dataInfoToEntries,
1494
+ qn as deriveNativeId,
1495
+ J as deserializeError,
1496
+ fn as deserializeResult,
1497
+ Zn as digestPlId,
1498
+ C as ensureError,
1499
+ Vn as ensurePColumn,
1500
+ nn as entriesToDataInfo,
1501
+ L as executePSpecPredicate,
1502
+ Mn as extractAllColumns,
1503
+ rt as extractAllRequirements,
1504
+ ot as extractAllSupports,
1505
+ Be as extractCodeWithInfo,
1506
+ Me as extractConfigGeneric,
1507
+ S as getArrayFromAxisTree,
1508
+ _ as getAxesId,
1509
+ P as getAxesTree,
1510
+ p as getAxisId,
1511
+ En as getColumnIdAndSpec,
1512
+ kn as getDenormalizedAxesList,
1513
+ _e as getFileNameFromHandle,
1514
+ ae as getFilePathFromHandle,
1515
+ G as getNormalizedAxesList,
1516
+ Sn as getPColumnSpecId,
1517
+ jn as getPTableColumnId,
1518
+ xn as getSetFromAxisTree,
1519
+ ce as hasAbortError,
1520
+ an as isAbortError,
1521
+ sn as isAggregateError,
1522
+ qe as isBlockUIURL,
1523
+ Qe as isDataInfo,
1524
+ ue as isDataInfoEntries,
1525
+ Tn as isFilteredPColumn,
1526
+ Ue as isFolderURL,
1527
+ ie as isImportFileHandleIndex,
1528
+ oe as isImportFileHandleUpload,
1529
+ Ge as isLiveLog,
1530
+ Fe as isPColumn,
1531
+ Kn as isPColumnResult,
1532
+ w as isPColumnSpec,
1533
+ $n as isPColumnSpecResult,
1534
+ ln as isPFrameDriverError,
1535
+ un as isPFrameError,
1536
+ Fn as isPTableAbsent,
1537
+ Pe as isPTableNA,
1538
+ Cn as isPTableValueAxis,
1539
+ Ze as isPartitionedDataInfoEntries,
1540
+ Hn as isPlRef,
1541
+ Xe as mapDataInfo,
1542
+ tn as mapDataInfoEntries,
1543
+ E as mapJoinEntry,
1544
+ Bn as mapPObjectData,
1545
+ In as mapPTableDef,
1546
+ Xn as mapValueInVOE,
1547
+ T as matchAxis,
1548
+ we as matchAxisId,
1549
+ $ as matchPColumn,
1550
+ ze as newRangeBytesOpt,
1551
+ Ln as pTableValue,
1552
+ Jn as pTableValueBranded,
1553
+ Dn as parseColumnId,
1554
+ me as parseJson,
1555
+ Ne as plId,
1556
+ Qn as plRefsEqual,
1557
+ wn as readAnnotation,
1558
+ z as readAnnotationJson,
1559
+ vn as readAnnotationJsonOrThrow,
1560
+ gn as readDomain,
1561
+ An as readDomainJson,
1562
+ bn as readDomainJsonOrThrow,
1563
+ I as readMetadata,
1564
+ U as readMetadataJson,
1565
+ j as readMetadataJsonOrThrow,
1566
+ Rn as resolveAnchors,
1567
+ Un as selectorsToPredicate,
1568
+ B as serializeError,
1569
+ M as serializeResult,
1570
+ Se as stringifyColumnId,
1571
+ hn as stringifyJson,
1572
+ Yn as uniquePlId,
1573
+ dn as unwrapResult,
1574
+ He as validateRangeBytes,
1575
+ Ye as visitDataInfo,
1576
+ _n as withEnrichments,
1577
+ pn as wrapAndSerialize,
1578
+ mn as wrapAndSerializeAsync,
1579
+ pe as wrapAsyncCallback,
1181
1580
  fe as wrapCallback
1182
1581
  };
1183
1582
  //# sourceMappingURL=index.mjs.map