@vizhub/runtime 4.0.2 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,14 @@
1
1
  import { magicSandbox as $ } from "magic-sandbox";
2
- import { isVizId as J, getFileText as L, generateVizId as D, fileCollectionToVizFiles as B, vizFilesToFileCollection as A } from "@vizhub/viz-utils";
3
- import { transform as q } from "sucrase";
4
- const Nt = () => (Math.random() + "").slice(2);
5
- function C(t = {}) {
2
+ import { isVizId as B, getFileText as k, generateVizId as A, fileCollectionToVizFiles as q, vizFilesToFileCollection as _ } from "@vizhub/viz-utils";
3
+ import { transform as G } from "sucrase";
4
+ const Lt = () => (Math.random() + "").slice(2);
5
+ function R(t = {}) {
6
6
  return {
7
7
  name: "sucrase",
8
8
  transform(e, n) {
9
9
  if (!n.match(/\.(?:js|[jt]sx)$/))
10
10
  return null;
11
- const r = q(e, {
11
+ const r = G(e, {
12
12
  transforms: ["jsx", "typescript"],
13
13
  // For source maps
14
14
  filePath: n,
@@ -25,45 +25,45 @@ function C(t = {}) {
25
25
  }
26
26
  };
27
27
  }
28
- const P = {
28
+ const L = {
29
29
  dependencies: {},
30
30
  vizhub: {},
31
31
  license: "MIT"
32
- }, _ = !1, S = (t) => {
32
+ }, Y = !1, S = (t) => {
33
33
  const e = t["package.json"];
34
34
  try {
35
- const n = e ? JSON.parse(e) : P;
36
- return _ && console.log(
35
+ const n = e ? JSON.parse(e) : L;
36
+ return Y && console.log(
37
37
  "[packageJSON] pkg:",
38
38
  JSON.stringify(n, null, 2)
39
39
  ), n;
40
40
  } catch {
41
- return P;
41
+ return L;
42
42
  }
43
- }, R = (t) => S(t).dependencies || {}, T = (t) => (S(t).vizhub || {}).libraries || {}, F = ({ name: t, version: e }, n, r = "jsdelivr") => {
43
+ }, T = (t) => S(t).dependencies || {}, z = (t) => (S(t).vizhub || {}).libraries || {}, F = ({ name: t, version: e }, n, r = "jsdelivr") => {
44
44
  const o = n[t] && n[t].path || "";
45
45
  return r === "jsdelivr" ? `https://cdn.jsdelivr.net/npm/${t}@${e}${o}` : `https://unpkg.com/${t}@${e}${o}`;
46
- }, G = (t) => {
46
+ }, H = (t) => {
47
47
  var n;
48
48
  const e = (n = t == null ? void 0 : t.vizhub) == null ? void 0 : n.libraries;
49
49
  return e ? Object.entries(e).reduce(
50
50
  (r, [o, s]) => (s.global && (r[o] = s.global), r),
51
51
  {}
52
52
  ) : {};
53
- }, Y = {
53
+ }, Q = {
54
54
  d3: "d3",
55
55
  react: "React",
56
56
  "react-dom": "ReactDOM"
57
- }, V = (t) => {
58
- const e = G(t);
57
+ }, U = (t) => {
58
+ const e = H(t);
59
59
  return {
60
- ...Y,
60
+ ...Q,
61
61
  ...e
62
62
  };
63
- }, b = (t) => {
63
+ }, x = (t) => {
64
64
  const [e, ...n] = t.split("/"), r = n.join("/");
65
65
  return { vizId: e, fileName: r };
66
- }, H = `var EOL = {},
66
+ }, X = `var EOL = {},
67
67
  EOF = {},
68
68
  QUOTE = 34,
69
69
  NEWLINE = 10,
@@ -183,32 +183,32 @@ var tsv = dsv(' ');
183
183
 
184
184
  var tsvParse = tsv.parse;
185
185
 
186
- export { csvParse, tsvParse };`, Q = (t) => (
186
+ export { csvParse, tsvParse };`, Z = (t) => (
187
187
  // str.replace(/`/g, '\\`');
188
188
  t.replace(/\\/g, "\\\\").replace(/`/g, "\\`")
189
- ), X = () => ({
189
+ ), K = () => ({
190
190
  name: "transformDSV",
191
191
  // `id` here is of the form
192
192
  // `{vizId}/{fileName}`
193
193
  transform: async (t, e) => {
194
- const { fileName: n } = b(e), r = n.endsWith(".csv"), o = n.endsWith(".tsv");
194
+ const { fileName: n } = x(e), r = n.endsWith(".csv"), o = n.endsWith(".tsv");
195
195
  if (r || o)
196
196
  return {
197
197
  code: `
198
- ${H}
199
- const data = ${r ? "csvParse" : "tsvParse"}(\`${Q(t)}\`);
198
+ ${X}
199
+ const data = ${r ? "csvParse" : "tsvParse"}(\`${Z(t)}\`);
200
200
  export default data;
201
201
  `,
202
202
  map: { mappings: "" }
203
203
  };
204
204
  }
205
- }), Z = (t) => {
205
+ }), tt = (t) => {
206
206
  const e = /^@([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_-]+)$/, n = t.match(e);
207
207
  return n ? {
208
208
  userName: n[1],
209
209
  idOrSlug: n[2]
210
210
  } : null;
211
- }, K = ({
211
+ }, et = ({
212
212
  vizId: t,
213
213
  slugCache: e
214
214
  }) => ({
@@ -220,15 +220,15 @@ export { csvParse, tsvParse };`, Q = (t) => (
220
220
  const {
221
221
  vizId: i,
222
222
  fileName: a
223
- } = b(r), c = a.split("/").slice(0, -1).join("/"), l = c ? `${c}/${s}` : s;
224
- return `${i}/${l}`;
223
+ } = x(r), c = a.split("/").slice(0, -1).join("/"), d = c ? `${c}/${s}` : s;
224
+ return `${i}/${d}`;
225
225
  }
226
226
  return t + "/" + s;
227
227
  }
228
- const o = Z(n);
228
+ const o = tt(n);
229
229
  if (o) {
230
230
  let s;
231
- if (J(o.idOrSlug))
231
+ if (B(o.idOrSlug))
232
232
  s = o.idOrSlug;
233
233
  else {
234
234
  if (!e)
@@ -242,7 +242,7 @@ export { csvParse, tsvParse };`, Q = (t) => (
242
242
  return s + "/index.js";
243
243
  }
244
244
  }
245
- }), tt = ({
245
+ }), nt = ({
246
246
  vizCache: t,
247
247
  trackCSSImport: e,
248
248
  vizId: n,
@@ -252,15 +252,15 @@ export { csvParse, tsvParse };`, Q = (t) => (
252
252
  // `id` here is of the form
253
253
  // `{vizId}/{fileName}`
254
254
  load: async (o) => {
255
- const s = b(o), i = s.vizId, a = s.fileName;
255
+ const s = x(o), i = s.vizId, a = s.fileName;
256
256
  if (a.endsWith(".css"))
257
257
  return e(o), "";
258
258
  let c = null;
259
259
  if (i === n && r)
260
260
  c = r[a] || null;
261
261
  else {
262
- const l = await t.get(i);
263
- c = L(l, a);
262
+ const d = await t.get(i);
263
+ c = k(d, a);
264
264
  }
265
265
  if (c === null)
266
266
  throw new Error(
@@ -270,12 +270,12 @@ export { csvParse, tsvParse };`, Q = (t) => (
270
270
  }
271
271
  }), M = /* @__PURE__ */ new Map();
272
272
  let I;
273
- const x = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Ct = `${x}/compiler.cjs`, et = ({
273
+ const b = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Mt = `${b}/compiler.cjs`, rt = ({
274
274
  getSvelteCompiler: t
275
275
  }) => ({
276
276
  name: "transformSvelte",
277
277
  load: async (e) => {
278
- if (!e.startsWith(x))
278
+ if (!e.startsWith(b))
279
279
  return;
280
280
  const n = M.get(e);
281
281
  if (n) return n;
@@ -287,19 +287,19 @@ const x = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Ct = `${x}/compiler.cjs`,
287
287
  // From https://github.com/sveltejs/sites/blob/master/packages/repl/src/lib/workers/bundler/index.js#L255C2-L271C5
288
288
  resolveId: async (e, n) => {
289
289
  if (e === "svelte")
290
- return `${x}/src/runtime/index.js`;
290
+ return `${b}/src/runtime/index.js`;
291
291
  if (e.startsWith("svelte/")) {
292
292
  const r = e.slice(7);
293
- return `${x}/src/runtime/${r}/index.js`;
293
+ return `${b}/src/runtime/${r}/index.js`;
294
294
  }
295
295
  if (/^https?:/.test(e)) return e;
296
- if (e.startsWith(".") && n && n.startsWith(x)) {
296
+ if (e.startsWith(".") && n && n.startsWith(b)) {
297
297
  const r = new URL(e, n).href;
298
298
  return new URL(e, n).href, r;
299
299
  }
300
300
  },
301
301
  transform: async (e, n) => {
302
- const { fileName: r } = b(n);
302
+ const { fileName: r } = x(n);
303
303
  if (r.endsWith(".svelte")) {
304
304
  if (!I) {
305
305
  if (!t)
@@ -312,7 +312,7 @@ const x = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Ct = `${x}/compiler.cjs`,
312
312
  }).js;
313
313
  }
314
314
  }
315
- }), nt = async ({
315
+ }), st = async ({
316
316
  files: t,
317
317
  rollup: e,
318
318
  enableSourcemap: n = !0,
@@ -321,20 +321,20 @@ const x = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Ct = `${x}/compiler.cjs`,
321
321
  slugCache: s,
322
322
  getSvelteCompiler: i
323
323
  }) => {
324
- const a = /* @__PURE__ */ new Set(), c = (d) => {
325
- a.add(d);
324
+ const a = /* @__PURE__ */ new Set(), c = (u) => {
325
+ a.add(u);
326
326
  };
327
327
  if (!t["index.js"])
328
328
  throw new Error("Missing index.js");
329
- const u = {
329
+ const l = {
330
330
  input: "./index.js",
331
331
  plugins: [
332
- ...o ? [K({ vizId: o, slugCache: s })] : [],
333
- X(),
334
- C(),
335
- et({ getSvelteCompiler: i }),
332
+ ...o ? [et({ vizId: o, slugCache: s })] : [],
333
+ K(),
334
+ R(),
335
+ rt({ getSvelteCompiler: i }),
336
336
  ...r ? [
337
- tt({
337
+ nt({
338
338
  vizCache: r,
339
339
  trackCSSImport: c,
340
340
  vizId: o,
@@ -342,34 +342,34 @@ const x = "https://cdn.jsdelivr.net/npm/svelte@4.2.9", Ct = `${x}/compiler.cjs`,
342
342
  })
343
343
  ] : []
344
344
  ],
345
- onwarn(d, h) {
346
- d.code !== "UNRESOLVED_IMPORT" && h(d);
345
+ onwarn(u, f) {
346
+ u.code !== "UNRESOLVED_IMPORT" && f(u);
347
347
  }
348
348
  }, m = {
349
349
  format: "umd",
350
350
  name: "Viz",
351
351
  sourcemap: !!n,
352
352
  compact: !0
353
- }, w = S(t);
354
- if (w) {
355
- const d = V(w);
356
- d && (u.external = Object.keys(d), m.globals = d);
353
+ }, v = S(t);
354
+ if (v) {
355
+ const u = U(v);
356
+ u && (l.external = Object.keys(u), m.globals = u);
357
357
  }
358
- const y = await e(u), { output: f } = await y.generate(m);
358
+ const y = await e(l), { output: h } = await y.generate(m);
359
359
  return {
360
- src: f[0].code,
360
+ src: h[0].code,
361
361
  cssFiles: Array.from(a)
362
362
  };
363
363
  };
364
- function rt() {
364
+ function ot() {
365
365
  return Math.random().toString().slice(2, 7);
366
366
  }
367
- const st = ({
367
+ const it = ({
368
368
  cdn: t,
369
369
  src: e,
370
370
  styles: n
371
371
  }) => {
372
- const o = `viz-container-${rt()}`;
372
+ const o = `viz-container-${ot()}`;
373
373
  return `<!DOCTYPE html>
374
374
  <html>
375
375
  <head>
@@ -449,7 +449,7 @@ const st = ({
449
449
  <\/script>
450
450
  </body>
451
451
  </html>`;
452
- }, ot = async ({
452
+ }, ct = async ({
453
453
  files: t,
454
454
  rollup: e,
455
455
  enableSourcemap: n = !0,
@@ -458,7 +458,7 @@ const st = ({
458
458
  slugCache: s,
459
459
  getSvelteCompiler: i
460
460
  }) => {
461
- const { src: a, cssFiles: c } = await nt({
461
+ const { src: a, cssFiles: c } = await st({
462
462
  files: t,
463
463
  rollup: e,
464
464
  enableSourcemap: n,
@@ -467,44 +467,44 @@ const st = ({
467
467
  slugCache: s,
468
468
  getSvelteCompiler: i
469
469
  });
470
- let l = [];
470
+ let d = [];
471
471
  if (c.length > 0)
472
- for (let f = 0; f < c.length; f++) {
473
- const d = c[f], h = b(d), E = h.vizId, j = h.fileName;
474
- let v = null;
472
+ for (let h = 0; h < c.length; h++) {
473
+ const u = c[h], f = x(u), E = f.vizId, j = f.fileName;
474
+ let g = null;
475
475
  if (E === o && t)
476
- v = t[j] || null;
476
+ g = t[j] || null;
477
477
  else {
478
- const z = await r.get(E);
479
- v = L(z, j);
478
+ const J = await r.get(E);
479
+ g = k(J, j);
480
480
  }
481
- v && l.push(v);
481
+ g && d.push(g);
482
482
  }
483
- const u = l.join(`
483
+ const l = d.join(`
484
484
  `), m = `
485
- <style id="injected-style">${u}</style>`;
486
- let w = "";
485
+ <style id="injected-style">${l}</style>`;
486
+ let v = "";
487
487
  const y = Object.entries(
488
- R(t)
488
+ T(t)
489
489
  );
490
490
  if (y.length > 0) {
491
- const f = T(t);
492
- w = y.map(([d, h], E) => {
491
+ const h = z(t);
492
+ v = y.map(([u, f], E) => {
493
493
  const j = F(
494
- { name: d, version: h },
495
- f
494
+ { name: u, version: f },
495
+ h
496
496
  );
497
497
  return `${E > 0 ? " " : `
498
498
  `}<script src="${j}"><\/script>`;
499
499
  }).join("");
500
500
  }
501
501
  return {
502
- html: st({ cdn: w, src: a, styles: m }),
503
- css: u,
502
+ html: it({ cdn: v, src: a, styles: m }),
503
+ css: l,
504
504
  js: a,
505
505
  runtimeVersion: "v3"
506
506
  };
507
- }, it = ({
507
+ }, at = ({
508
508
  initialContents: t,
509
509
  handleCacheMiss: e
510
510
  }) => {
@@ -530,7 +530,7 @@ const st = ({
530
530
  }, invalidate: (i) => {
531
531
  n.delete(i);
532
532
  } };
533
- }, Rt = ({
533
+ }, Pt = ({
534
534
  initialMappings: t = {},
535
535
  handleCacheMiss: e
536
536
  }) => ({ get: async (s) => {
@@ -549,40 +549,40 @@ const st = ({
549
549
  t[s] = i;
550
550
  }, invalidate: (s) => {
551
551
  delete t[s];
552
- } }), ct = (t, e = "Sample Content for Exporting", n = D()) => ({
552
+ } }), dt = (t, e = "Sample Content for Exporting", n = A()) => ({
553
553
  id: n,
554
- files: B(t),
554
+ files: q(t),
555
555
  title: e
556
- }), at = (t) => {
556
+ }), lt = (t) => {
557
557
  if (Object.keys(t).length === 0)
558
558
  return null;
559
559
  const e = "index.html" in t, n = "index.js" in t, r = "index.jsx" in t;
560
560
  return e ? t["index.html"].includes('type="module"') ? "v4" : n || r ? "v2" : "v1" : !e && n ? "v3" : null;
561
- }, O = (t, e) => new RegExp(`<${e}\\b`, "i").test(t) && new RegExp(`</${e}>`, "i").test(t), lt = (t) => {
561
+ }, O = (t, e) => new RegExp(`<${e}\\b`, "i").test(t) && new RegExp(`</${e}>`, "i").test(t), ut = (t) => {
562
562
  const e = t.trim();
563
563
  return O(e, "html") && O(e, "head") && O(e, "body") ? e : `<html><head></head><body>${e}</body></html>`;
564
- }, ut = (t, e) => t.replace(
564
+ }, pt = (t, e) => t.replace(
565
565
  new RegExp(
566
566
  `<script[^>]*src=["'][^"']*${e.source}[^"']*["'][^>]*>\\s*<\/script>`,
567
567
  "gi"
568
568
  ),
569
569
  ""
570
- ), W = (t, e, n) => t.replace(
570
+ ), P = (t, e, n) => t.replace(
571
571
  new RegExp(e, "i"),
572
572
  `${n}${e}`
573
- ), dt = (t, e) => {
574
- let n = lt(t);
575
- const r = Object.entries(R(e));
573
+ ), mt = (t, e) => {
574
+ let n = ut(t);
575
+ const r = Object.entries(T(e));
576
576
  if (r.length) {
577
- const s = T(e);
577
+ const s = z(e);
578
578
  r.forEach(([a]) => {
579
- n = ut(n, new RegExp(`${a}@`));
579
+ n = pt(n, new RegExp(`${a}@`));
580
580
  });
581
581
  const i = r.map(
582
582
  ([a, c]) => F({ name: a, version: c }, s)
583
583
  ).map((a) => `<script src="${a}"><\/script>`).join(`
584
584
  `);
585
- n = W(
585
+ n = P(
586
586
  n,
587
587
  "</head>",
588
588
  i + `
@@ -592,32 +592,89 @@ const st = ({
592
592
  if (e["bundle.js"] !== void 0 || e["index.js"] !== void 0) {
593
593
  const s = '<script src="bundle.js"><\/script>', i = /<script\b[^>]*\bsrc=["']bundle\.js["'][^>]*>\s*<\/script>/gi, a = [...n.matchAll(i)];
594
594
  a.length === 1 && (() => {
595
- const l = a[0].index ?? -1;
596
- if (l === -1) return !1;
597
- const u = n.search(/<body\b[^>]*>/i), m = n.search(/<\/body>/i);
598
- return u !== -1 && m !== -1 && l > u && l < m;
599
- })() || (n = n.replace(i, ""), n = W(n, "</body>", s));
595
+ const d = a[0].index ?? -1;
596
+ if (d === -1) return !1;
597
+ const l = n.search(/<body\b[^>]*>/i), m = n.search(/<\/body>/i);
598
+ return l !== -1 && m !== -1 && d > l && d < m;
599
+ })() || (n = n.replace(i, ""), n = P(n, "</body>", s));
600
600
  }
601
601
  return /^\s*<!DOCTYPE/i.test(n) ? n : `<!DOCTYPE html>${n}`;
602
- }, pt = (t) => {
602
+ }, ht = (t) => {
603
603
  const e = t["index.html"];
604
- return !e && !t["index.js"] && !t["bundle.js"] ? "" : dt(e || "<!DOCTYPE html><html><head></head><body></body></html>", t);
605
- }, p = "\0virtual:", k = (t) => {
604
+ return !e && !t["index.js"] && !t["bundle.js"] ? "" : mt(e || "<!DOCTYPE html><html><head></head><body></body></html>", t);
605
+ };
606
+ function ft(t) {
607
+ return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
608
+ }
609
+ var C, V;
610
+ function vt() {
611
+ return V || (V = 1, C = {
612
+ d3: "d3",
613
+ "d3-array": "d3",
614
+ "d3-axis": "d3",
615
+ "d3-brush": "d3",
616
+ "d3-chord": "d3",
617
+ "d3-collection": "d3",
618
+ "d3-color": "d3",
619
+ "d3-contour": "d3",
620
+ "d3-dispatch": "d3",
621
+ "d3-drag": "d3",
622
+ "d3-dsv": "d3",
623
+ "d3-ease": "d3",
624
+ "d3-fetch": "d3",
625
+ "d3-force": "d3",
626
+ "d3-format": "d3",
627
+ "d3-geo": "d3",
628
+ "d3-hierarchy": "d3",
629
+ "d3-interpolate": "d3",
630
+ "d3-path": "d3",
631
+ "d3-polygon": "d3",
632
+ "d3-quadtree": "d3",
633
+ "d3-random": "d3",
634
+ "d3-scale": "d3",
635
+ "d3-scale-chromatic": "d3",
636
+ "d3-selection": "d3",
637
+ "d3-shape": "d3",
638
+ "d3-tile": "d3",
639
+ "d3-time": "d3",
640
+ "d3-time-format": "d3",
641
+ "d3-timer": "d3",
642
+ "d3-transition": "d3",
643
+ "d3-voronoi": "d3",
644
+ "d3-zoom": "d3",
645
+ react: "React",
646
+ "react-dom": "ReactDOM",
647
+ "react-dropdown-browser": "ReactDropdown",
648
+ "react-dropdown": "ReactDropdown",
649
+ three: "THREE",
650
+ vega: "vega",
651
+ "vega-embed": "vegaEmbed",
652
+ "vega-lite": "vegaLite",
653
+ "vega-lite-api": "vl",
654
+ "vega-tooltip": "vegaTooltip",
655
+ "vega-themes": "vegaThemes",
656
+ "vizhub-vega-lite-config": "vizhubVegaLiteConfig",
657
+ semiotic: "Semiotic",
658
+ "viz.js": "Viz"
659
+ }), C;
660
+ }
661
+ var gt = vt();
662
+ const wt = /* @__PURE__ */ ft(gt), p = "\0virtual:", W = (t) => {
606
663
  let e = t.replace(/^\.\//, "");
607
664
  return e = e.replace(/\/+/g, "/"), e = e.replace(/\/$/, ""), e;
608
- }, mt = (t, e) => {
665
+ }, bt = (t, e) => {
609
666
  const n = t.includes("/") ? t.slice(0, t.lastIndexOf("/")) : "", r = e.split("/"), o = n ? n.split("/") : [];
610
667
  for (const s of r)
611
668
  s === ".." ? o.pop() : s !== "." && s !== "" && o.push(s);
612
669
  return o.join("/");
613
- }, U = (t) => ({
670
+ }, D = (t) => ({
614
671
  name: "virtual-file-system",
615
672
  resolveId(e, n) {
616
673
  const r = n != null && n.startsWith(
617
674
  p
618
675
  ) ? n.slice(p.length) : n;
619
676
  if (e.startsWith("./") || e.startsWith("../")) {
620
- const s = k(r ? mt(r, e) : e);
677
+ const s = W(r ? bt(r, e) : e);
621
678
  if (t[s])
622
679
  return p + s;
623
680
  const i = [".js", ".jsx", ".ts", ".tsx"];
@@ -645,7 +702,7 @@ const st = ({
645
702
  }
646
703
  return null;
647
704
  }
648
- }), ft = async ({
705
+ }), xt = async ({
649
706
  files: t,
650
707
  rollup: e,
651
708
  enableSourcemap: n = !0
@@ -657,33 +714,38 @@ const st = ({
657
714
  );
658
715
  const s = {
659
716
  input: "./" + r,
660
- plugins: [U(t), C()],
661
- onwarn(u, m) {
662
- u.code !== "UNRESOLVED_IMPORT" && m(u);
717
+ plugins: [D(t), R()],
718
+ onwarn(l, m) {
719
+ l.code !== "UNRESOLVED_IMPORT" && m(l);
663
720
  }
664
721
  }, i = {
665
722
  format: "iife",
666
723
  sourcemap: n
667
724
  }, a = S(t);
668
725
  if (a) {
669
- const u = V(a);
670
- u && (s.external = Object.keys(u), i.globals = u);
726
+ const l = {
727
+ // Pre-configured globals for v2 only
728
+ ...wt,
729
+ // Libraries from package.json
730
+ ...U(a)
731
+ };
732
+ l && (s.external = Object.keys(l), i.globals = l);
671
733
  }
672
- const c = await e(s), { output: l } = await c.generate(i);
673
- return l[0].code;
674
- }, ht = async ({
734
+ const c = await e(s), { output: d } = await c.generate(i);
735
+ return d[0].code;
736
+ }, yt = async ({
675
737
  files: t,
676
738
  rollup: e,
677
739
  enableSourcemap: n
678
740
  }) => ({
679
741
  ...t,
680
- "bundle.js": await ft({
742
+ "bundle.js": await xt({
681
743
  files: t,
682
744
  rollup: e,
683
745
  enableSourcemap: n
684
746
  }),
685
- "index.html": pt(t)
686
- }), wt = (t) => {
747
+ "index.html": ht(t)
748
+ }), Et = (t) => {
687
749
  const e = [], n = /<script\b([^>]*)>[\s\S]*?<\/script>/gi;
688
750
  let r;
689
751
  for (; (r = n.exec(t)) !== null; ) {
@@ -696,12 +758,12 @@ const st = ({
696
758
  s && e.push(s[1]);
697
759
  }
698
760
  return e;
699
- }, vt = () => ({
761
+ }, jt = () => ({
700
762
  name: "catch-all-prevent-fs",
701
763
  resolveId(t, e) {
702
764
  return { id: t, external: !0 };
703
765
  }
704
- }), gt = async ({
766
+ }), St = async ({
705
767
  entryPoint: t,
706
768
  files: e,
707
769
  rollup: n,
@@ -710,14 +772,14 @@ const st = ({
710
772
  const s = {
711
773
  input: t.startsWith("./") ? t : `./${t}`,
712
774
  plugins: [
713
- U(e),
714
- C({
775
+ D(e),
776
+ R({
715
777
  // Enable JSX runtime
716
778
  // so we don't need to import React
717
779
  // in every file that uses JSX
718
780
  jsxRuntime: "automatic"
719
781
  }),
720
- vt()
782
+ jt()
721
783
  ],
722
784
  // external: (source: string) => {
723
785
  // DEBUG && console.log("external", source);
@@ -729,35 +791,35 @@ const st = ({
729
791
  // DEBUG && console.log("isExternal", isExternal);
730
792
  // return isExternal;
731
793
  // },
732
- onwarn(c, l) {
794
+ onwarn(c, d) {
733
795
  }
734
796
  }, i = await n(s), { output: a } = await i.generate({
735
797
  format: "es",
736
798
  sourcemap: r
737
799
  });
738
800
  return a[0].code;
739
- }, N = (t, e) => new RegExp(`<${e}\\b`, "i").test(t) && new RegExp(`</${e}>`, "i").test(t), xt = (t) => {
801
+ }, N = (t, e) => new RegExp(`<${e}\\b`, "i").test(t) && new RegExp(`</${e}>`, "i").test(t), $t = (t) => {
740
802
  const e = t.trim();
741
803
  return N(e, "html") && N(e, "head") && N(e, "body") ? e : `<html><head></head><body>${e}</body></html>`;
742
- }, bt = (t) => t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), yt = (t, e, n) => t.replace(
804
+ }, It = (t) => t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), Ot = (t, e, n) => t.replace(
743
805
  new RegExp(e, "i"),
744
806
  `${n}${e}`
745
- ), Et = (t) => {
746
- const e = R(t);
807
+ ), Ct = (t) => {
808
+ const e = T(t);
747
809
  if (Object.keys(e).length === 0) return null;
748
- const n = T(t), r = {};
810
+ const n = z(t), r = {};
749
811
  for (const [o, s] of Object.entries(e))
750
812
  r[o] = F(
751
813
  { name: o, version: s },
752
814
  n
753
815
  );
754
816
  return JSON.stringify({ imports: r }, null, 2);
755
- }, jt = (t, e) => {
817
+ }, Nt = (t, e) => {
756
818
  if (!t["index.html"]) return "";
757
- let n = xt(t["index.html"]);
819
+ let n = $t(t["index.html"]);
758
820
  e.forEach((o, s) => {
759
821
  const i = new RegExp(
760
- `<script\\b[^>]*\\bsrc=["']${bt(s)}["'][^>]*>[^<]*<\/script>`,
822
+ `<script\\b[^>]*\\bsrc=["']${It(s)}["'][^>]*>[^<]*<\/script>`,
761
823
  "gi"
762
824
  );
763
825
  n = n.replace(
@@ -767,7 +829,7 @@ ${o}
767
829
  <\/script>`
768
830
  );
769
831
  });
770
- const r = Et(t);
832
+ const r = Ct(t);
771
833
  if (r && !/<script\b[^>]*type=["']importmap["'][^>]*>/i.test(
772
834
  n
773
835
  )) {
@@ -775,24 +837,24 @@ ${o}
775
837
  ${r}
776
838
  <\/script>
777
839
  `;
778
- n = yt(
840
+ n = Ot(
779
841
  n,
780
842
  "</head>",
781
843
  s
782
844
  );
783
845
  }
784
846
  return /^\s*<!DOCTYPE/i.test(n) ? n : `<!DOCTYPE html>${n}`;
785
- }, St = async ({
847
+ }, Rt = async ({
786
848
  files: t,
787
849
  rollup: e,
788
850
  enableSourcemap: n = !0
789
851
  }) => {
790
- const r = t["index.html"] || "", o = wt(r);
852
+ const r = t["index.html"] || "", o = Et(r);
791
853
  if (o.length === 0)
792
854
  return t;
793
855
  const s = /* @__PURE__ */ new Map();
794
856
  for (const a of o) {
795
- const c = await gt({
857
+ const c = await St({
796
858
  entryPoint: a,
797
859
  files: t,
798
860
  rollup: e,
@@ -800,12 +862,12 @@ ${r}
800
862
  });
801
863
  s.set(a, c);
802
864
  }
803
- const i = jt(t, s);
865
+ const i = Nt(t, s);
804
866
  return {
805
867
  ...t,
806
868
  "index.html": i
807
869
  };
808
- }, g = !1, Tt = async ({
870
+ }, w = !1, Vt = async ({
809
871
  files: t,
810
872
  rollup: e,
811
873
  enableSourcemap: n = !0,
@@ -816,10 +878,10 @@ ${r}
816
878
  }) => {
817
879
  var a;
818
880
  try {
819
- if (g && console.log(
881
+ if (w && console.log(
820
882
  "[build] files:",
821
883
  t ? JSON.stringify(t).substring(0, 100) : void 0
822
- ), g && console.log("[build] vizCache:", r), g && console.log("[build] vizId:", o), !t && !r)
884
+ ), w && console.log("[build] vizCache:", r), w && console.log("[build] vizId:", o), !t && !r)
823
885
  throw new Error(
824
886
  "Either files or vizCache is required"
825
887
  );
@@ -827,12 +889,12 @@ ${r}
827
889
  throw new Error(
828
890
  "vizId is required when using vizCache"
829
891
  );
830
- if (!t && r && o && (t = A(
892
+ if (!t && r && o && (t = _(
831
893
  (a = await r.get(o)) == null ? void 0 : a.files
832
894
  )), !t)
833
895
  throw new Error("Upable to extract viz files");
834
- const c = at(t);
835
- if (g && console.log("[build] version:", c), c === "v1")
896
+ const c = lt(t);
897
+ if (w && console.log("[build] version:", c), c === "v1")
836
898
  return {
837
899
  html: $(t),
838
900
  runtimeVersion: c
@@ -844,7 +906,7 @@ ${r}
844
906
  );
845
907
  return {
846
908
  html: $(
847
- await ht({ files: t, rollup: e, enableSourcemap: n })
909
+ await yt({ files: t, rollup: e, enableSourcemap: n })
848
910
  ),
849
911
  runtimeVersion: c
850
912
  };
@@ -855,9 +917,9 @@ ${r}
855
917
  "Rollup is required for v3 runtime"
856
918
  );
857
919
  if (!r && !o) {
858
- const l = ct(t);
859
- o = l.id, r = it({
860
- initialContents: [l],
920
+ const d = dt(t);
921
+ o = d.id, r = at({
922
+ initialContents: [d],
861
923
  handleCacheMiss: async () => {
862
924
  throw new Error(
863
925
  "Cache miss handler not implemented"
@@ -873,7 +935,7 @@ ${r}
873
935
  throw new Error(
874
936
  "vizId is required for v3 runtime if vizCache is provided"
875
937
  );
876
- return await ot({
938
+ return await ct({
877
939
  files: t,
878
940
  rollup: e,
879
941
  vizCache: r,
@@ -887,13 +949,13 @@ ${r}
887
949
  throw new Error(
888
950
  "Rollup is required for v4 runtime"
889
951
  );
890
- return g && console.log("[build] v4Build", {
952
+ return w && console.log("[build] v4Build", {
891
953
  files: t,
892
954
  rollup: e,
893
955
  enableSourcemap: n
894
956
  }), {
895
957
  html: $(
896
- await St({ files: t, rollup: e, enableSourcemap: n })
958
+ await Rt({ files: t, rollup: e, enableSourcemap: n })
897
959
  ),
898
960
  runtimeVersion: c
899
961
  };
@@ -909,14 +971,14 @@ ${r}
909
971
  }
910
972
  };
911
973
  export {
912
- it as a,
913
- Tt as b,
914
- nt as c,
915
- at as d,
916
- Rt as e,
917
- ct as f,
918
- Nt as g,
919
- Ct as s,
920
- ot as v
974
+ at as a,
975
+ Vt as b,
976
+ st as c,
977
+ lt as d,
978
+ Pt as e,
979
+ dt as f,
980
+ Lt as g,
981
+ Mt as s,
982
+ ct as v
921
983
  };
922
- //# sourceMappingURL=build-B0moD9Cl.js.map
984
+ //# sourceMappingURL=build-D8ObHgQc.js.map