@bagelink/blox 1.15.226 → 1.15.230

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.
@@ -361,6 +361,17 @@ async function prerender({
361
361
  maxPages = 5e3,
362
362
  concurrency = 6,
363
363
  writeSharedAssets = true,
364
+ /**
365
+ * How many `/resolve-path` prefetches to run in parallel, ahead of the render
366
+ * pool. Decouples the (I/O-bound) resolve latency from the (CPU-bound) render
367
+ * so pages render from an in-memory cache with no per-page round-trip.
368
+ *
369
+ * NOTE: this is PER PROCESS. When running N shards, the *total* load on the
370
+ * API is `N × this`, so keep it modest (a small API saturates ~5-wide). The
371
+ * sharded runner divides a global budget by the shard count. 0 disables
372
+ * prefetch (render resolves inline). Default 8.
373
+ */
374
+ resolvePrefetchConcurrency = 8,
364
375
  mode = "dir",
365
376
  website = null,
366
377
  websiteId = "",
@@ -401,6 +412,27 @@ async function prerender({
401
412
  const noindexPaths = /* @__PURE__ */ new Set();
402
413
  const lastmod = {};
403
414
  const failures = [];
415
+ const resolveCache = /* @__PURE__ */ new Map();
416
+ const prefetch = serverMod.prefetchResolve;
417
+ async function runResolvePrefetch() {
418
+ if (!prefetch || resolvePrefetchConcurrency <= 0) return;
419
+ const targets = [...new Set(paths)].filter((p) => p && !isExcluded(p));
420
+ let idx = 0;
421
+ async function prefetchWorker() {
422
+ while (idx < targets.length) {
423
+ const url = targets[idx++];
424
+ if (resolveCache.has(url)) continue;
425
+ try {
426
+ resolveCache.set(url, await prefetch(url));
427
+ } catch {
428
+ resolveCache.set(url, null);
429
+ }
430
+ }
431
+ }
432
+ await Promise.all(
433
+ Array.from({ length: Math.min(resolvePrefetchConcurrency, targets.length) }, () => prefetchWorker())
434
+ );
435
+ }
404
436
  async function renderOne(urlPath) {
405
437
  const {
406
438
  html,
@@ -412,7 +444,8 @@ async function prerender({
412
444
  template,
413
445
  website,
414
446
  websiteId,
415
- collections
447
+ collections,
448
+ resolveCache
416
449
  });
417
450
  const outHtml = injectIntoTemplate(template, head, html, fontPreloads, htmlAttrs);
418
451
  const outfile = outFilePath(absClient, urlPath, mode);
@@ -449,6 +482,8 @@ async function prerender({
449
482
  }
450
483
  }
451
484
  }
485
+ await runResolvePrefetch().catch(() => {
486
+ });
452
487
  while (queue.length && !stopped && rendered.length < maxPages) {
453
488
  const workers = Array.from(
454
489
  { length: Math.min(concurrency, queue.length) },
@@ -384,6 +384,17 @@ async function prerender({
384
384
  maxPages = 5e3,
385
385
  concurrency = 6,
386
386
  writeSharedAssets = true,
387
+ /**
388
+ * How many `/resolve-path` prefetches to run in parallel, ahead of the render
389
+ * pool. Decouples the (I/O-bound) resolve latency from the (CPU-bound) render
390
+ * so pages render from an in-memory cache with no per-page round-trip.
391
+ *
392
+ * NOTE: this is PER PROCESS. When running N shards, the *total* load on the
393
+ * API is `N × this`, so keep it modest (a small API saturates ~5-wide). The
394
+ * sharded runner divides a global budget by the shard count. 0 disables
395
+ * prefetch (render resolves inline). Default 8.
396
+ */
397
+ resolvePrefetchConcurrency = 8,
387
398
  mode = "dir",
388
399
  website = null,
389
400
  websiteId = "",
@@ -424,6 +435,27 @@ async function prerender({
424
435
  const noindexPaths = /* @__PURE__ */ new Set();
425
436
  const lastmod = {};
426
437
  const failures = [];
438
+ const resolveCache = /* @__PURE__ */ new Map();
439
+ const prefetch = serverMod.prefetchResolve;
440
+ async function runResolvePrefetch() {
441
+ if (!prefetch || resolvePrefetchConcurrency <= 0) return;
442
+ const targets = [...new Set(paths)].filter((p) => p && !isExcluded(p));
443
+ let idx = 0;
444
+ async function prefetchWorker() {
445
+ while (idx < targets.length) {
446
+ const url = targets[idx++];
447
+ if (resolveCache.has(url)) continue;
448
+ try {
449
+ resolveCache.set(url, await prefetch(url));
450
+ } catch {
451
+ resolveCache.set(url, null);
452
+ }
453
+ }
454
+ }
455
+ await Promise.all(
456
+ Array.from({ length: Math.min(resolvePrefetchConcurrency, targets.length) }, () => prefetchWorker())
457
+ );
458
+ }
427
459
  async function renderOne(urlPath) {
428
460
  const {
429
461
  html,
@@ -435,7 +467,8 @@ async function prerender({
435
467
  template,
436
468
  website,
437
469
  websiteId,
438
- collections
470
+ collections,
471
+ resolveCache
439
472
  });
440
473
  const outHtml = injectIntoTemplate(template, head, html, fontPreloads, htmlAttrs);
441
474
  const outfile = outFilePath(absClient, urlPath, mode);
@@ -472,6 +505,8 @@ async function prerender({
472
505
  }
473
506
  }
474
507
  }
508
+ await runResolvePrefetch().catch(() => {
509
+ });
475
510
  while (queue.length && !stopped && rendered.length < maxPages) {
476
511
  const workers = Array.from(
477
512
  { length: Math.min(concurrency, queue.length) },
package/dist/ssg/cli.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env bun
2
2
  "use strict";
3
3
  const process = require("node:process");
4
- const prerender = require("../prerender-DQYBvxc_.cjs");
4
+ const prerender = require("../prerender-yrgljW5F.cjs");
5
5
  function installFetchTimeout() {
6
6
  const ms = Number(process.env.BLOX_SSG_FETCH_TIMEOUT_MS) || 2e4;
7
7
  const original = globalThis.fetch;
@@ -156,6 +156,10 @@ Environment:
156
156
  // Bounded concurrency — configurable so we don't overwhelm a small
157
157
  // staging box. Defaults conservative; bump for beefy prod builds.
158
158
  concurrency: Number(process.env.BLOX_SSG_CONCURRENCY) || 4,
159
+ // Per-process resolve-prefetch parallelism. The sharded runner sets
160
+ // this to (global budget / shard count) so N shards don't collectively
161
+ // hammer a small API. 0 disables prefetch (inline resolve).
162
+ resolvePrefetchConcurrency: process.env.BLOX_SSG_PREFETCH !== void 0 ? Number(process.env.BLOX_SSG_PREFETCH) : 8,
159
163
  mode: "file",
160
164
  // Only shard 0 writes shared, whole-site assets (sitemap/robots/_redirects)
161
165
  // so parallel shards don't race/clobber them.
package/dist/ssg/cli.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env bun
2
2
  import process from "node:process";
3
- import { p as polyfillBloxSsgGlobals, f as fetchCmsSiteData, a as prerender } from "../prerender-BTRIOCtF.js";
3
+ import { p as polyfillBloxSsgGlobals, f as fetchCmsSiteData, a as prerender } from "../prerender-uiciCJgS.js";
4
4
  function installFetchTimeout() {
5
5
  const ms = Number(process.env.BLOX_SSG_FETCH_TIMEOUT_MS) || 2e4;
6
6
  const original = globalThis.fetch;
@@ -155,6 +155,10 @@ Environment:
155
155
  // Bounded concurrency — configurable so we don't overwhelm a small
156
156
  // staging box. Defaults conservative; bump for beefy prod builds.
157
157
  concurrency: Number(process.env.BLOX_SSG_CONCURRENCY) || 4,
158
+ // Per-process resolve-prefetch parallelism. The sharded runner sets
159
+ // this to (global budget / shard count) so N shards don't collectively
160
+ // hammer a small API. 0 disables prefetch (inline resolve).
161
+ resolvePrefetchConcurrency: process.env.BLOX_SSG_PREFETCH !== void 0 ? Number(process.env.BLOX_SSG_PREFETCH) : 8,
158
162
  mode: "file",
159
163
  // Only shard 0 writes shared, whole-site assets (sitemap/robots/_redirects)
160
164
  // so parallel shards don't race/clobber them.
@@ -39,6 +39,8 @@ export interface CreateBloxSSREntryOptions {
39
39
  }
40
40
  export interface BloxSSREntry {
41
41
  render: (url: string, ctx: RenderContext) => Promise<RenderResult>;
42
+ /** Resolve a URL's page data without rendering (for batched prefetch). */
43
+ prefetchResolve?: (url: string) => Promise<unknown>;
42
44
  }
43
45
  /**
44
46
  * Factory that produces the `{ render }` export for `main.server.ts`.
@@ -1 +1 @@
1
- {"version":3,"file":"createSSREntry.d.ts","sourceRoot":"","sources":["../../src/ssg/createSSREntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAO,SAAS,EAAE,MAAM,KAAK,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAY9D,MAAM,WAAW,yBAAyB;IACzC,oCAAoC;IACpC,aAAa,EAAE,SAAS,CAAA;IACxB;;;;OAIG;IACH,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9D;;;OAGG;IACH,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACpD,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,oGAAoG;IACpG,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAA;IAC5E;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,CAAA;CAClE;AAKD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,YAAY,CA4JnF"}
1
+ {"version":3,"file":"createSSREntry.d.ts","sourceRoot":"","sources":["../../src/ssg/createSSREntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAO,SAAS,EAAE,MAAM,KAAK,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAY9D,MAAM,WAAW,yBAAyB;IACzC,oCAAoC;IACpC,aAAa,EAAE,SAAS,CAAA;IACxB;;;;OAIG;IACH,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9D;;;OAGG;IACH,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACpD,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,oGAAoG;IACpG,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAA;IAC5E;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,CAAA;IAClE,0EAA0E;IAC1E,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CACnD;AAKD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,YAAY,CAmLnF"}
@@ -22,7 +22,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
22
22
  mod
23
23
  ));
24
24
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
25
- const prerender = require("../prerender-DQYBvxc_.cjs");
25
+ const prerender = require("../prerender-yrgljW5F.cjs");
26
26
  const ssg_client = require("./client.cjs");
27
27
  const pinia = require("pinia");
28
28
  const vue = require("vue");
@@ -163,13 +163,18 @@ function createBloxSSREntry(options) {
163
163
  return { app, router, dataRegistry };
164
164
  }
165
165
  async function render(url, ctx) {
166
+ var _a2;
166
167
  const { locale: pageLocale, slug } = detectLocale(url);
167
168
  routes.setActiveLocale(pageLocale);
168
169
  let resolvedData = null;
169
- try {
170
- resolvedData = await fetchResolvedPage(slug, pageLocale);
171
- } catch (e) {
172
- console.warn(`[prerender] Could not resolve: ${url} — ${e.message}`);
170
+ if ((_a2 = ctx.resolveCache) == null ? void 0 : _a2.has(url)) {
171
+ resolvedData = ctx.resolveCache.get(url) ?? null;
172
+ } else {
173
+ try {
174
+ resolvedData = await fetchResolvedPage(slug, pageLocale);
175
+ } catch (e) {
176
+ console.warn(`[prerender] Could not resolve: ${url} — ${e.message}`);
177
+ }
173
178
  }
174
179
  const { renderToString } = await import("vue/server-renderer");
175
180
  return renderBloxSsgPage({
@@ -188,7 +193,15 @@ function createBloxSSREntry(options) {
188
193
  collections: ctx.collections
189
194
  });
190
195
  }
191
- return { render };
196
+ async function prefetchResolve(url) {
197
+ const { locale: pageLocale, slug } = detectLocale(url);
198
+ try {
199
+ return await fetchResolvedPage(slug, pageLocale);
200
+ } catch {
201
+ return null;
202
+ }
203
+ }
204
+ return { render, prefetchResolve };
192
205
  }
193
206
  exports.buildPageHead = prerender.buildPageHead;
194
207
  exports.buildSiteHead = prerender.buildSiteHead;
@@ -1,5 +1,5 @@
1
- import { b as buildPageHead } from "../prerender-BTRIOCtF.js";
2
- import { c, d, f, g, e, h, i, p, a } from "../prerender-BTRIOCtF.js";
1
+ import { b as buildPageHead } from "../prerender-uiciCJgS.js";
2
+ import { c, d, f, g, e, h, i, p, a } from "../prerender-uiciCJgS.js";
3
3
  import { BLOX_STATE_WINDOW_KEY, BLOX_COLLECTIONS_WINDOW_KEY, BLOX_WEBSITE_ID_WINDOW_KEY } from "./client.mjs";
4
4
  import { BLOX_DATA_WINDOW_KEY, BLOX_PAGE_SEO_WINDOW_KEY, getCollectionCache, getEmbeddedWebsiteId, installBloxStateCache, installCollectionCache } from "./client.mjs";
5
5
  import { createPinia } from "pinia";
@@ -141,13 +141,18 @@ function createBloxSSREntry(options) {
141
141
  return { app, router, dataRegistry };
142
142
  }
143
143
  async function render(url, ctx) {
144
+ var _a2;
144
145
  const { locale: pageLocale, slug } = detectLocale(url);
145
146
  setActiveLocale(pageLocale);
146
147
  let resolvedData = null;
147
- try {
148
- resolvedData = await fetchResolvedPage(slug, pageLocale);
149
- } catch (e2) {
150
- console.warn(`[prerender] Could not resolve: ${url} — ${e2.message}`);
148
+ if ((_a2 = ctx.resolveCache) == null ? void 0 : _a2.has(url)) {
149
+ resolvedData = ctx.resolveCache.get(url) ?? null;
150
+ } else {
151
+ try {
152
+ resolvedData = await fetchResolvedPage(slug, pageLocale);
153
+ } catch (e2) {
154
+ console.warn(`[prerender] Could not resolve: ${url} — ${e2.message}`);
155
+ }
151
156
  }
152
157
  const { renderToString } = await import("vue/server-renderer");
153
158
  return renderBloxSsgPage({
@@ -166,7 +171,15 @@ function createBloxSSREntry(options) {
166
171
  collections: ctx.collections
167
172
  });
168
173
  }
169
- return { render };
174
+ async function prefetchResolve(url) {
175
+ const { locale: pageLocale, slug } = detectLocale(url);
176
+ try {
177
+ return await fetchResolvedPage(slug, pageLocale);
178
+ } catch {
179
+ return null;
180
+ }
181
+ }
182
+ return { render, prefetchResolve };
170
183
  }
171
184
  export {
172
185
  BLOX_COLLECTIONS_WINDOW_KEY,
@@ -18,6 +18,8 @@ export interface PrerenderOptions {
18
18
  * against the same `dist`, so they don't race/clobber these single files.
19
19
  */
20
20
  writeSharedAssets?: boolean;
21
+ /** Parallel `/resolve-path` prefetches ahead of the render pool (default 24; 0 disables). */
22
+ resolvePrefetchConcurrency?: number;
21
23
  mode?: 'dir' | 'file';
22
24
  /** Website settings for SEO injection. */
23
25
  website?: WebsiteRead | null;
@@ -37,6 +39,13 @@ export interface RenderContext {
37
39
  websiteId?: string;
38
40
  /** Pre-fetched datastore collections keyed by "store/collection". */
39
41
  collections?: Record<string, unknown[]>;
42
+ /**
43
+ * Pre-resolved page data keyed by render URL. When the prerender producer has
44
+ * already fetched a URL's `/resolve-path` result, the SSR entry reads it from
45
+ * here instead of making a per-page network round-trip. `null` = a resolve
46
+ * that 404'd (non-CMS route) — cached as a negative to avoid refetching.
47
+ */
48
+ resolveCache?: Map<string, unknown>;
40
49
  }
41
50
  export interface RenderResult {
42
51
  html: string;
@@ -67,6 +76,17 @@ export interface PrerenderResult {
67
76
  * - Generates sitemap.xml, robots.txt, and _redirects post-render.
68
77
  * - Strips hardcoded SEO tags from template and injects per-page equivalents.
69
78
  */
70
- export declare function prerender({ root, clientOutDir, serverEntry, paths, crawl, excludePaths, failFast, maxPages, concurrency, writeSharedAssets, mode, website, websiteId, redirects, collections, }?: PrerenderOptions): Promise<PrerenderResult>;
79
+ export declare function prerender({ root, clientOutDir, serverEntry, paths, crawl, excludePaths, failFast, maxPages, concurrency, writeSharedAssets,
80
+ /**
81
+ * How many `/resolve-path` prefetches to run in parallel, ahead of the render
82
+ * pool. Decouples the (I/O-bound) resolve latency from the (CPU-bound) render
83
+ * so pages render from an in-memory cache with no per-page round-trip.
84
+ *
85
+ * NOTE: this is PER PROCESS. When running N shards, the *total* load on the
86
+ * API is `N × this`, so keep it modest (a small API saturates ~5-wide). The
87
+ * sharded runner divides a global budget by the shard count. 0 disables
88
+ * prefetch (render resolves inline). Default 8.
89
+ */
90
+ resolvePrefetchConcurrency, mode, website, websiteId, redirects, collections, }?: PrerenderOptions): Promise<PrerenderResult>;
71
91
  export {};
72
92
  //# sourceMappingURL=prerender.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prerender.d.ts","sourceRoot":"","sources":["../../src/ssg/prerender.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAe1C,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAA;AAEhE,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAA;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IACrB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kDAAkD;IAClD,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;IAC3B,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAA;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB;AAMD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAC7D,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,EAC/B,IAAoB,EACpB,YAA4B,EAC5B,WAA0C,EAC1C,KAAU,EACV,KAAY,EACZ,YAAiB,EACjB,QAAgB,EAChB,QAAe,EACf,WAAe,EACf,iBAAwB,EACxB,IAAY,EACZ,OAAc,EACd,SAAc,EACd,SAAc,EACd,WAAgB,GAChB,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAmKlD"}
1
+ {"version":3,"file":"prerender.d.ts","sourceRoot":"","sources":["../../src/ssg/prerender.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAe1C,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAA;AAEhE,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAA;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,6FAA6F;IAC7F,0BAA0B,CAAC,EAAE,MAAM,CAAA;IACnC,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IACrB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kDAAkD;IAClD,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;IAC3B,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAA;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IACvC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB;AAQD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAC7D,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,EAC/B,IAAoB,EACpB,YAA4B,EAC5B,WAA0C,EAC1C,KAAU,EACV,KAAY,EACZ,YAAiB,EACjB,QAAgB,EAChB,QAAe,EACf,WAAe,EACf,iBAAwB;AACxB;;;;;;;;;GASG;AACH,0BAA8B,EAC9B,IAAY,EACZ,OAAc,EACd,SAAc,EACd,SAAc,EACd,WAAgB,GAChB,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CA6MlD"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bagelink/blox",
3
3
  "type": "module",
4
- "version": "1.15.226",
4
+ "version": "1.15.230",
5
5
  "description": "Blox page builder library for drag-and-drop page building and static data management",
6
6
  "author": {
7
7
  "name": "Bagel Studio",