@bagelink/blox 1.14.0 → 1.14.10

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.
Files changed (34) hide show
  1. package/LICENSE +21 -0
  2. package/dist/CmsPageView.vue.d.ts.map +1 -1
  3. package/dist/{PreviewApp-CV_Uh9-d.cjs → PreviewApp-BDMfuAiu.cjs} +1 -1
  4. package/dist/{PreviewApp-BrthGx2F.js → PreviewApp-DIAL1c7e.js} +1 -1
  5. package/dist/PreviewApp.vue.d.ts.map +1 -1
  6. package/dist/{PreviewApp.vue_vue_type_style_index_0_lang-CFS05Itn.cjs → PreviewApp.vue_vue_type_style_index_0_lang-BG9Fvfdw.cjs} +4 -1
  7. package/dist/{PreviewApp.vue_vue_type_style_index_0_lang-BkGWMbsE.js → PreviewApp.vue_vue_type_style_index_0_lang-i3XlO5iQ.js} +4 -1
  8. package/dist/bridge.d.ts +4 -0
  9. package/dist/bridge.d.ts.map +1 -1
  10. package/dist/{core-CPXNfJ-Z.js → core-CDeCe4VJ.js} +14 -8
  11. package/dist/{core-D1FiZJtz.cjs → core-DhrL5TMI.cjs} +12 -6
  12. package/dist/core.d.ts.map +1 -1
  13. package/dist/defineBlock.d.ts +4 -0
  14. package/dist/defineBlock.d.ts.map +1 -1
  15. package/dist/index.cjs +2 -2
  16. package/dist/index.mjs +3 -3
  17. package/dist/{prerender-D3Q4jKXm.js → prerender-BZzd5T7y.js} +4 -4
  18. package/dist/{prerender-Bi7YtzSp.cjs → prerender-ZBDFjWPT.cjs} +4 -4
  19. package/dist/schema.d.ts +4 -0
  20. package/dist/schema.d.ts.map +1 -1
  21. package/dist/ssg/cli.cjs +1 -1
  22. package/dist/ssg/cli.mjs +1 -1
  23. package/dist/ssg/collection-cache.d.ts +1 -1
  24. package/dist/ssg/constants.d.ts +1 -1
  25. package/dist/ssg/constants.d.ts.map +1 -1
  26. package/dist/ssg/createSSREntry.d.ts.map +1 -1
  27. package/dist/ssg/index.cjs +4 -4
  28. package/dist/ssg/index.mjs +5 -5
  29. package/dist/ssg/render-resolved-page.d.ts +1 -1
  30. package/dist/ssg/render-resolved-page.d.ts.map +1 -1
  31. package/dist/vite-plugin.cjs +20 -11
  32. package/dist/vite-plugin.d.ts.map +1 -1
  33. package/dist/vite-plugin.mjs +20 -11
  34. package/package.json +128 -129
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Bagel Studio
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1 +1 @@
1
- {"version":3,"file":"CmsPageView.vue.d.ts","sourceRoot":"","sources":["../src/CmsPageView.vue"],"names":[],"mappings":";AA0XA,wBAMG"}
1
+ {"version":3,"file":"CmsPageView.vue.d.ts","sourceRoot":"","sources":["../src/CmsPageView.vue"],"names":[],"mappings":";AAoYA,wBAMG"}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const PreviewApp_vue_vue_type_style_index_0_lang = require("./PreviewApp.vue_vue_type_style_index_0_lang-CFS05Itn.cjs");
3
+ const PreviewApp_vue_vue_type_style_index_0_lang = require("./PreviewApp.vue_vue_type_style_index_0_lang-BG9Fvfdw.cjs");
4
4
  exports.default = PreviewApp_vue_vue_type_style_index_0_lang._sfc_main;
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "./PreviewApp.vue_vue_type_style_index_0_lang-BkGWMbsE.js";
1
+ import { _ as _sfc_main } from "./PreviewApp.vue_vue_type_style_index_0_lang-i3XlO5iQ.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewApp.vue.d.ts","sourceRoot":"","sources":["../src/PreviewApp.vue"],"names":[],"mappings":";AAyNA,wBAMG"}
1
+ {"version":3,"file":"PreviewApp.vue.d.ts","sourceRoot":"","sources":["../src/PreviewApp.vue"],"names":[],"mappings":";AA+NA,wBAMG"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const vue = require("vue");
3
- const core = require("./core-D1FiZJtz.cjs");
3
+ const core = require("./core-DhrL5TMI.cjs");
4
4
  function sendToEditor(msg) {
5
5
  window.parent.postMessage(msg, "*");
6
6
  }
@@ -150,6 +150,9 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
150
150
  case "BLOX_HOVER_BLOCK":
151
151
  hoveredIndex.value = msg.index;
152
152
  break;
153
+ case "BLOX_SCROLL_TOP":
154
+ window.scrollTo(0, 0);
155
+ break;
153
156
  }
154
157
  }
155
158
  vue.onMounted(() => {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, inject, ref, h, provide, onMounted, onUnmounted, createElementBlock, openBlock, createVNode, unref, nextTick } from "vue";
2
- import { e as BLOX_REGISTRY_KEY, u as useLocale } from "./core-CPXNfJ-Z.js";
2
+ import { e as BLOX_REGISTRY_KEY, u as useLocale } from "./core-CDeCe4VJ.js";
3
3
  function sendToEditor(msg) {
4
4
  window.parent.postMessage(msg, "*");
5
5
  }
@@ -149,6 +149,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
149
149
  case "BLOX_HOVER_BLOCK":
150
150
  hoveredIndex.value = msg.index;
151
151
  break;
152
+ case "BLOX_SCROLL_TOP":
153
+ window.scrollTo(0, 0);
154
+ break;
152
155
  }
153
156
  }
154
157
  onMounted(() => {
package/dist/bridge.d.ts CHANGED
@@ -7,6 +7,8 @@ export interface BlockSchemaInfo {
7
7
  fields: SchemaDefinition;
8
8
  defaults?: Record<string, unknown>;
9
9
  dataSource?: boolean;
10
+ thumbnail?: string;
11
+ order?: number;
10
12
  }
11
13
  export type EditorMessage = {
12
14
  type: 'BLOX_INIT';
@@ -24,6 +26,8 @@ export type EditorMessage = {
24
26
  } | {
25
27
  type: 'BLOX_HOVER_BLOCK';
26
28
  index: number | null;
29
+ } | {
30
+ type: 'BLOX_SCROLL_TOP';
27
31
  };
28
32
  export type PreviewMessage = {
29
33
  type: 'BLOX_READY';
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAEzD,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,gBAAgB,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,OAAO,CAAA;CACpB;AAMD,MAAM,MAAM,aAAa,GACpB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAMtD,MAAM,MAAM,cAAc,GACrB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAM3C,wBAAgB,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAEtD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAEjF"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAEzD,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,gBAAgB,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAMD,MAAM,MAAM,aAAa,GACpB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAA;AAM/B,MAAM,MAAM,cAAc,GACrB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAM3C,wBAAgB,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAEtD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAEjF"}
@@ -2,9 +2,9 @@ var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
  import { BLOX_WEBSITE_ID_WINDOW_KEY, BLOX_STATE_WINDOW_KEY } from "./ssg/client.mjs";
5
- import { computed, ref, defineComponent, inject, h, provide, watch, resolveComponent, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, unref, withCtx, createTextVNode, Fragment, createCommentVNode, createBlock, normalizeProps, guardReactiveProps, renderSlot } from "vue";
5
+ import { computed, ref, defineComponent, inject, h, provide, watch, resolveComponent, createElementBlock, openBlock, createVNode, unref, createElementVNode, toDisplayString, withCtx, createTextVNode, Fragment, createCommentVNode, createBlock, normalizeProps, guardReactiveProps, renderSlot } from "vue";
6
6
  import { useRoute, useRouter, RouterLink } from "vue-router";
7
- import { getI18n } from "@bagelink/vue";
7
+ import { getI18n, Loading } from "@bagelink/vue";
8
8
  const BASE = "/api";
9
9
  let _websiteName = "";
10
10
  let _store = "";
@@ -34,7 +34,7 @@ async function getWebsiteId() {
34
34
  return _websiteId;
35
35
  }
36
36
  }
37
- const websites = await request("/cms/websites");
37
+ const websites = await request("/blox/websites");
38
38
  const website = websites.find((w) => w.name === _websiteName);
39
39
  if (!website) throw new Error(`Website "${_websiteName}" not found. Run: npm run seed`);
40
40
  _websiteId = website.id;
@@ -42,7 +42,7 @@ async function getWebsiteId() {
42
42
  }
43
43
  async function resolvePath(path, locale2) {
44
44
  const websiteId = await getWebsiteId();
45
- return request(`/cms/websites/${websiteId}/resolve-path`, {
45
+ return request(`/blox/websites/${websiteId}/resolve-path`, {
46
46
  locale: locale2,
47
47
  params: { path }
48
48
  });
@@ -195,7 +195,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
195
195
  return (_ctx, _cache) => {
196
196
  const _component_RouterLink = resolveComponent("RouterLink");
197
197
  return openBlock(), createElementBlock("div", null, [
198
- initialLoading.value && blocks.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_1, " Loading… ")) : notFound.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
198
+ initialLoading.value && blocks.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [
199
+ createVNode(unref(Loading))
200
+ ])) : notFound.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
199
201
  _cache[0] || (_cache[0] = createElementVNode("h2", null, "404", -1)),
200
202
  createElementVNode("p", null, toDisplayString(unref(locale2) === "he" ? "הדף לא נמצא" : "Page not found"), 1),
201
203
  createVNode(_component_RouterLink, { to: "/" }, {
@@ -351,7 +353,9 @@ class BloxInstance {
351
353
  icon: meta.icon,
352
354
  fields: meta.schema,
353
355
  defaults: meta.defaults,
354
- dataSource: meta.dataSource
356
+ dataSource: meta.dataSource,
357
+ thumbnail: meta.thumbnail,
358
+ order: meta.order
355
359
  }
356
360
  };
357
361
  break;
@@ -376,7 +380,9 @@ class BloxInstance {
376
380
  icon: meta.icon,
377
381
  fields: meta.schema,
378
382
  defaults: meta.defaults,
379
- dataSource: meta.dataSource
383
+ dataSource: meta.dataSource,
384
+ thumbnail: meta.thumbnail,
385
+ order: meta.order
380
386
  }
381
387
  };
382
388
  }
@@ -397,7 +403,7 @@ class BloxInstance {
397
403
  }
398
404
  router.addRoute({
399
405
  path: "/_blox_preview",
400
- component: () => import("./PreviewApp-BrthGx2F.js"),
406
+ component: () => import("./PreviewApp-DIAL1c7e.js"),
401
407
  beforeEnter: () => window.parent !== window ? true : "/"
402
408
  });
403
409
  router.addRoute({ path: "/:pathMatch(.*)*", component: _sfc_main$1 });
@@ -35,7 +35,7 @@ async function getWebsiteId() {
35
35
  return _websiteId;
36
36
  }
37
37
  }
38
- const websites = await request("/cms/websites");
38
+ const websites = await request("/blox/websites");
39
39
  const website = websites.find((w) => w.name === _websiteName);
40
40
  if (!website) throw new Error(`Website "${_websiteName}" not found. Run: npm run seed`);
41
41
  _websiteId = website.id;
@@ -43,7 +43,7 @@ async function getWebsiteId() {
43
43
  }
44
44
  async function resolvePath(path, locale2) {
45
45
  const websiteId = await getWebsiteId();
46
- return request(`/cms/websites/${websiteId}/resolve-path`, {
46
+ return request(`/blox/websites/${websiteId}/resolve-path`, {
47
47
  locale: locale2,
48
48
  params: { path }
49
49
  });
@@ -196,7 +196,9 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
196
196
  return (_ctx, _cache) => {
197
197
  const _component_RouterLink = vue.resolveComponent("RouterLink");
198
198
  return vue.openBlock(), vue.createElementBlock("div", null, [
199
- initialLoading.value && blocks.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, " Loading… ")) : notFound.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
199
+ initialLoading.value && blocks.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
200
+ vue.createVNode(vue.unref(vue$1.Loading))
201
+ ])) : notFound.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
200
202
  _cache[0] || (_cache[0] = vue.createElementVNode("h2", null, "404", -1)),
201
203
  vue.createElementVNode("p", null, vue.toDisplayString(vue.unref(locale2) === "he" ? "הדף לא נמצא" : "Page not found"), 1),
202
204
  vue.createVNode(_component_RouterLink, { to: "/" }, {
@@ -352,7 +354,9 @@ class BloxInstance {
352
354
  icon: meta.icon,
353
355
  fields: meta.schema,
354
356
  defaults: meta.defaults,
355
- dataSource: meta.dataSource
357
+ dataSource: meta.dataSource,
358
+ thumbnail: meta.thumbnail,
359
+ order: meta.order
356
360
  }
357
361
  };
358
362
  break;
@@ -377,7 +381,9 @@ class BloxInstance {
377
381
  icon: meta.icon,
378
382
  fields: meta.schema,
379
383
  defaults: meta.defaults,
380
- dataSource: meta.dataSource
384
+ dataSource: meta.dataSource,
385
+ thumbnail: meta.thumbnail,
386
+ order: meta.order
381
387
  }
382
388
  };
383
389
  }
@@ -398,7 +404,7 @@ class BloxInstance {
398
404
  }
399
405
  router.addRoute({
400
406
  path: "/_blox_preview",
401
- component: () => Promise.resolve().then(() => require("./PreviewApp-CV_Uh9-d.cjs")),
407
+ component: () => Promise.resolve().then(() => require("./PreviewApp-BDMfuAiu.cjs")),
402
408
  beforeEnter: () => window.parent !== window ? true : "/"
403
409
  });
404
410
  router.addRoute({ path: "/:pathMatch(.*)*", component: _sfc_main$1 });
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAa,MAAM,KAAK,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAoB/D,4GAA4G;AAC5G,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAA;AAE5D,MAAM,WAAW,WAAY,SAAQ,eAAe;IACnD,qIAAqI;IACrI,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACrD,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,SAAS,CAAgB;gBAErB,OAAO,CAAC,EAAE,WAAW;IAQjC,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,IAAI;IA4B3E,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI;IAyBnE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAyBpC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI;CAgC9C;AAMD,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,YAAY,CAS9D"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAa,MAAM,KAAK,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAoB/D,4GAA4G;AAC5G,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAA;AAE5D,MAAM,WAAW,WAAY,SAAQ,eAAe;IACnD,qIAAqI;IACrI,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACrD,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,SAAS,CAAgB;gBAErB,OAAO,CAAC,EAAE,WAAW;IAQjC,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,IAAI;IA8B3E,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI;IA2BnE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAyBpC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI;CAgC9C;AAMD,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,YAAY,CAS9D"}
@@ -25,6 +25,10 @@ export interface BlockMeta {
25
25
  description?: string;
26
26
  /** Set to true when this block fetches its own data from a datastore collection. Used by the editor to show a hint when both schema fields and data source are present. */
27
27
  dataSource?: boolean;
28
+ /** Static thumbnail image URL for the editor block picker. Overrides the default icon. */
29
+ thumbnail?: string;
30
+ /** Sort order in the editor block picker. Lower values appear first. Defaults to 100. */
31
+ order?: number;
28
32
  }
29
33
  /** A Vue SFC module that has `export const <name> = defineBlock(...)` in its `<script setup>`. */
30
34
  export interface BlockModule {
@@ -1 +1 @@
1
- {"version":3,"file":"defineBlock.d.ts","sourceRoot":"","sources":["../src/defineBlock.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAEhH,MAAM,WAAW,SAAS;IACzB,kGAAkG;IAClG,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAA;IACb,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,yGAAyG;IACzG,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2KAA2K;IAC3K,UAAU,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,kGAAkG;AAClG,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAatD"}
1
+ {"version":3,"file":"defineBlock.d.ts","sourceRoot":"","sources":["../src/defineBlock.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAEhH,MAAM,WAAW,SAAS;IACzB,kGAAkG;IAClG,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAA;IACb,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,yGAAyG;IACzG,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2KAA2K;IAC3K,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,kGAAkG;AAClG,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAatD"}
package/dist/index.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const core = require("./core-D1FiZJtz.cjs");
4
- const PreviewApp_vue_vue_type_style_index_0_lang = require("./PreviewApp.vue_vue_type_style_index_0_lang-CFS05Itn.cjs");
3
+ const core = require("./core-DhrL5TMI.cjs");
4
+ const PreviewApp_vue_vue_type_style_index_0_lang = require("./PreviewApp.vue_vue_type_style_index_0_lang-BG9Fvfdw.cjs");
5
5
  const vue = require("vue");
6
6
  const vueRouter = require("vue-router");
7
7
  const pinia = require("pinia");
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { B as BLOX_LOCALE_STRATEGY_KEY, u as useLocale, c as createBlox } from "./core-CPXNfJ-Z.js";
2
- import { d, b, _, P, a, l, r } from "./core-CPXNfJ-Z.js";
3
- import { _ as _2, P as P2, s, a as a2 } from "./PreviewApp.vue_vue_type_style_index_0_lang-BkGWMbsE.js";
1
+ import { B as BLOX_LOCALE_STRATEGY_KEY, u as useLocale, c as createBlox } from "./core-CDeCe4VJ.js";
2
+ import { d, b, _, P, a, l, r } from "./core-CDeCe4VJ.js";
3
+ import { _ as _2, P as P2, s, a as a2 } from "./PreviewApp.vue_vue_type_style_index_0_lang-i3XlO5iQ.js";
4
4
  import { inject, computed, createApp, markRaw } from "vue";
5
5
  import { useRouter } from "vue-router";
6
6
  import { createPinia } from "pinia";
@@ -3,24 +3,24 @@ import path from "node:path";
3
3
  import process from "node:process";
4
4
  import { pathToFileURL } from "node:url";
5
5
  async function fetchCmsSiteData(apiBase, websiteName) {
6
- const sitesRes = await fetch(`${apiBase}/cms/websites`);
6
+ const sitesRes = await fetch(`${apiBase}/blox/websites`);
7
7
  const sitesData = await sitesRes.json();
8
8
  const sites = Array.isArray(sitesData) ? sitesData : sitesData.data ?? [];
9
9
  const site = sites.find((s) => s.name === websiteName);
10
10
  if ((site == null ? void 0 : site.id) == null || site.id === "") throw new Error(`Website "${websiteName}" not found at ${apiBase}`);
11
11
  let website = site;
12
12
  try {
13
- const wRes = await fetch(`${apiBase}/cms/websites/${site.id}`);
13
+ const wRes = await fetch(`${apiBase}/blox/websites/${site.id}`);
14
14
  if (wRes.ok) website = await wRes.json();
15
15
  } catch {
16
16
  }
17
- const pagesRes = await fetch(`${apiBase}/cms/websites/${site.id}/pages?locale=${website.default_locale || "en"}`);
17
+ const pagesRes = await fetch(`${apiBase}/blox/websites/${site.id}/pages?locale=${website.default_locale || "en"}`);
18
18
  const pagesData = await pagesRes.json();
19
19
  const pages = Array.isArray(pagesData) ? pagesData : pagesData.data ?? [];
20
20
  const paths = await expandRoutes(apiBase, pages);
21
21
  let redirects = [];
22
22
  try {
23
- const rRes = await fetch(`${apiBase}/cms/websites/${site.id}/redirects`);
23
+ const rRes = await fetch(`${apiBase}/blox/websites/${site.id}/redirects`);
24
24
  if (rRes.ok) {
25
25
  const rData = await rRes.json();
26
26
  const items = Array.isArray(rData) ? rData : rData.data ?? [];
@@ -26,24 +26,24 @@ const path = require("node:path");
26
26
  const process = require("node:process");
27
27
  const node_url = require("node:url");
28
28
  async function fetchCmsSiteData(apiBase, websiteName) {
29
- const sitesRes = await fetch(`${apiBase}/cms/websites`);
29
+ const sitesRes = await fetch(`${apiBase}/blox/websites`);
30
30
  const sitesData = await sitesRes.json();
31
31
  const sites = Array.isArray(sitesData) ? sitesData : sitesData.data ?? [];
32
32
  const site = sites.find((s) => s.name === websiteName);
33
33
  if ((site == null ? void 0 : site.id) == null || site.id === "") throw new Error(`Website "${websiteName}" not found at ${apiBase}`);
34
34
  let website = site;
35
35
  try {
36
- const wRes = await fetch(`${apiBase}/cms/websites/${site.id}`);
36
+ const wRes = await fetch(`${apiBase}/blox/websites/${site.id}`);
37
37
  if (wRes.ok) website = await wRes.json();
38
38
  } catch {
39
39
  }
40
- const pagesRes = await fetch(`${apiBase}/cms/websites/${site.id}/pages?locale=${website.default_locale || "en"}`);
40
+ const pagesRes = await fetch(`${apiBase}/blox/websites/${site.id}/pages?locale=${website.default_locale || "en"}`);
41
41
  const pagesData = await pagesRes.json();
42
42
  const pages = Array.isArray(pagesData) ? pagesData : pagesData.data ?? [];
43
43
  const paths = await expandRoutes(apiBase, pages);
44
44
  let redirects = [];
45
45
  try {
46
- const rRes = await fetch(`${apiBase}/cms/websites/${site.id}/redirects`);
46
+ const rRes = await fetch(`${apiBase}/blox/websites/${site.id}/redirects`);
47
47
  if (rRes.ok) {
48
48
  const rData = await rRes.json();
49
49
  const items = Array.isArray(rData) ? rData : rData.data ?? [];
package/dist/schema.d.ts CHANGED
@@ -16,6 +16,10 @@ export interface BlockSchema {
16
16
  defaults?: Record<string, unknown>;
17
17
  /** True when this block fetches its own data from a datastore collection. */
18
18
  dataSource?: boolean;
19
+ /** Static thumbnail image URL for the editor block picker. Overrides the default icon. */
20
+ thumbnail?: string;
21
+ /** Sort order in the editor block picker. Lower values appear first. Defaults to 100. */
22
+ order?: number;
19
23
  }
20
24
  export interface BlockDefinition {
21
25
  component: Component;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,WAAW,WAAW;IAC3B,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,WAAW,CAAA;CACnB;AAED,+EAA+E;AAC/E,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,WAAW,WAAW;IAC3B,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,WAAW,CAAA;CACnB;AAED,+EAA+E;AAC/E,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA"}
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-Bi7YtzSp.cjs");
4
+ const prerender = require("../prerender-ZBDFjWPT.cjs");
5
5
  async function resolveApiBase(mode) {
6
6
  if (process.env.BAGELINK_API_URL != null && process.env.BAGELINK_API_URL !== "") {
7
7
  return { apiBase: process.env.BAGELINK_API_URL };
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-D3Q4jKXm.js";
3
+ import { p as polyfillBloxSsgGlobals, f as fetchCmsSiteData, a as prerender } from "../prerender-BZzd5T7y.js";
4
4
  async function resolveApiBase(mode) {
5
5
  if (process.env.BAGELINK_API_URL != null && process.env.BAGELINK_API_URL !== "") {
6
6
  return { apiBase: process.env.BAGELINK_API_URL };
@@ -26,7 +26,7 @@ type CollectionCacheMap = Record<string, unknown[]>;
26
26
  */
27
27
  export declare function getCollectionCache(): CollectionCacheMap | null;
28
28
  /**
29
- * Get the pre-embedded website ID (avoids GET /cms/websites on client).
29
+ * Get the pre-embedded website ID (avoids GET /blox/websites on client).
30
30
  * Returns empty string if not available.
31
31
  */
32
32
  export declare function getEmbeddedWebsiteId(): string;
@@ -2,6 +2,6 @@
2
2
  export declare const BLOX_STATE_WINDOW_KEY: "__BLOX_STATE__";
3
3
  /** Global key for pre-fetched datastore collections (keyed by "store/collection"). */
4
4
  export declare const BLOX_COLLECTIONS_WINDOW_KEY: "__BLOX_COLLECTIONS__";
5
- /** Global key for the pre-resolved website ID (avoids GET /cms/websites on client). */
5
+ /** Global key for the pre-resolved website ID (avoids GET /blox/websites on client). */
6
6
  export declare const BLOX_WEBSITE_ID_WINDOW_KEY: "__BLOX_WEBSITE_ID__";
7
7
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/ssg/constants.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,eAAO,MAAM,qBAAqB,EAAG,gBAAyB,CAAA;AAE9D,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,EAAG,sBAA+B,CAAA;AAE1E,uFAAuF;AACvF,eAAO,MAAM,0BAA0B,EAAG,qBAA8B,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/ssg/constants.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,eAAO,MAAM,qBAAqB,EAAG,gBAAyB,CAAA;AAE9D,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,EAAG,sBAA+B,CAAA;AAE1E,wFAAwF;AACxF,eAAO,MAAM,0BAA0B,EAAG,qBAA8B,CAAA"}
@@ -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;AAO9D,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,CAqGnF"}
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;AAO9D,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,CAoGnF"}
@@ -22,11 +22,11 @@ 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-Bi7YtzSp.cjs");
25
+ const prerender = require("../prerender-ZBDFjWPT.cjs");
26
26
  const ssg_client = require("./client.cjs");
27
27
  const pinia = require("pinia");
28
28
  const vue = require("vue");
29
- const core = require("../core-D1FiZJtz.cjs");
29
+ const core = require("../core-DhrL5TMI.cjs");
30
30
  async function renderBloxSsgPage(options) {
31
31
  const {
32
32
  url,
@@ -85,7 +85,7 @@ function createBloxSSREntry(options) {
85
85
  const apiBase = options.apiBase ?? (typeof process !== "undefined" ? (_a = process.env) == null ? void 0 : _a.BAGELINK_API_URL : void 0) ?? "https://api.bagel.to";
86
86
  async function getWebsiteId() {
87
87
  if (_websiteId) return _websiteId;
88
- const res = await fetch(`${apiBase}/cms/websites`);
88
+ const res = await fetch(`${apiBase}/blox/websites`);
89
89
  const data = await res.json();
90
90
  const sites = Array.isArray(data) ? data : (data == null ? void 0 : data.data) ?? [];
91
91
  const site = sites.find((s) => s.name === websiteName);
@@ -95,7 +95,7 @@ function createBloxSSREntry(options) {
95
95
  }
96
96
  async function fetchResolvedPage(urlPath) {
97
97
  const websiteId = await getWebsiteId();
98
- const url = `${apiBase}/cms/websites/${websiteId}/resolve-path?path=${encodeURIComponent(urlPath)}&locale=${locale}`;
98
+ const url = `${apiBase}/blox/websites/${websiteId}/resolve-path?path=${encodeURIComponent(urlPath)}&locale=${locale}`;
99
99
  const res = await fetch(url);
100
100
  if (!res.ok) throw new Error(`resolve-path ${res.status}: ${urlPath}`);
101
101
  return res.json();
@@ -1,10 +1,10 @@
1
- import { b as buildPageHead } from "../prerender-D3Q4jKXm.js";
2
- import { d, c, f, g, e, h, p, a } from "../prerender-D3Q4jKXm.js";
1
+ import { b as buildPageHead } from "../prerender-BZzd5T7y.js";
2
+ import { d, c, f, g, e, h, p, a } from "../prerender-BZzd5T7y.js";
3
3
  import { BLOX_STATE_WINDOW_KEY, BLOX_COLLECTIONS_WINDOW_KEY, BLOX_WEBSITE_ID_WINDOW_KEY } from "./client.mjs";
4
4
  import { getCollectionCache, getEmbeddedWebsiteId, installBloxStateCache, installCollectionCache } from "./client.mjs";
5
5
  import { createPinia } from "pinia";
6
6
  import { createSSRApp, markRaw } from "vue";
7
- import { c as createBlox } from "../core-CPXNfJ-Z.js";
7
+ import { c as createBlox } from "../core-CDeCe4VJ.js";
8
8
  async function renderBloxSsgPage(options) {
9
9
  const {
10
10
  url,
@@ -63,7 +63,7 @@ function createBloxSSREntry(options) {
63
63
  const apiBase = options.apiBase ?? (typeof process !== "undefined" ? (_a = process.env) == null ? void 0 : _a.BAGELINK_API_URL : void 0) ?? "https://api.bagel.to";
64
64
  async function getWebsiteId() {
65
65
  if (_websiteId) return _websiteId;
66
- const res = await fetch(`${apiBase}/cms/websites`);
66
+ const res = await fetch(`${apiBase}/blox/websites`);
67
67
  const data = await res.json();
68
68
  const sites = Array.isArray(data) ? data : (data == null ? void 0 : data.data) ?? [];
69
69
  const site = sites.find((s) => s.name === websiteName);
@@ -73,7 +73,7 @@ function createBloxSSREntry(options) {
73
73
  }
74
74
  async function fetchResolvedPage(urlPath) {
75
75
  const websiteId = await getWebsiteId();
76
- const url = `${apiBase}/cms/websites/${websiteId}/resolve-path?path=${encodeURIComponent(urlPath)}&locale=${locale}`;
76
+ const url = `${apiBase}/blox/websites/${websiteId}/resolve-path?path=${encodeURIComponent(urlPath)}&locale=${locale}`;
77
77
  const res = await fetch(url);
78
78
  if (!res.ok) throw new Error(`resolve-path ${res.status}: ${urlPath}`);
79
79
  return res.json();
@@ -26,7 +26,7 @@ export declare function renderBloxSsgPage<TApp>(options: {
26
26
  stateWindowKey?: string;
27
27
  /** Website settings for SEO tags. If omitted, only state script is emitted. */
28
28
  website?: WebsiteRead | null;
29
- /** Resolved website ID — embedded so client skips GET /cms/websites. */
29
+ /** Resolved website ID — embedded so client skips GET /blox/websites. */
30
30
  websiteId?: string;
31
31
  /** Pre-fetched datastore collections — embedded for zero-fetch hydration. */
32
32
  collections?: Record<string, unknown[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"render-resolved-page.d.ts","sourceRoot":"","sources":["../../src/ssg/render-resolved-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAK/C,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE;IACtD,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,OAAO,GAAG,IAAI,CAAA;IAC5B,cAAc,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9C,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK;QAAE,GAAG,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAA;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CACvC,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA4D/D"}
1
+ {"version":3,"file":"render-resolved-page.d.ts","sourceRoot":"","sources":["../../src/ssg/render-resolved-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAK/C,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE;IACtD,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,OAAO,GAAG,IAAI,CAAA;IAC5B,cAAc,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9C,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK;QAAE,GAAG,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAA;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CACvC,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2D/D"}
@@ -1087,17 +1087,18 @@ function bloxPlugin(options = {}) {
1087
1087
  try {
1088
1088
  const req = node_module.createRequire(base);
1089
1089
  const vueEntry = req.resolve("vue");
1090
- const vueDir = path.dirname(path.dirname(vueEntry));
1091
- return {
1092
- "vue": vueEntry,
1093
- "vue/server-renderer": path.join(vueDir, "server-renderer", "index.mjs"),
1094
- "@vue/server-renderer": req.resolve("@vue/server-renderer")
1095
- };
1090
+ const vuePkgJson = req.resolve("vue/package.json");
1091
+ const vueDir = path.dirname(vuePkgJson);
1092
+ return [
1093
+ { find: "vue/server-renderer", replacement: path.join(vueDir, "server-renderer", "index.mjs") },
1094
+ { find: "@vue/server-renderer", replacement: req.resolve("@vue/server-renderer") },
1095
+ { find: "vue", replacement: vueEntry }
1096
+ ];
1096
1097
  } catch {
1097
1098
  continue;
1098
1099
  }
1099
1100
  }
1100
- return {};
1101
+ return [];
1101
1102
  }
1102
1103
  const dedupe = [
1103
1104
  "vue",
@@ -1276,10 +1277,18 @@ function bloxPlugin(options = {}) {
1276
1277
  remaining = remaining.slice(0, declStart) + remaining.slice(j);
1277
1278
  }
1278
1279
  const hoistedImports = [];
1279
- const importRe = /^[ \t]*import\s[^\n]+from\s+['"](?:@bagelink\/blox|@bagelink\/vue)['"]\s*/gm;
1280
- remaining = remaining.replace(importRe, (match) => {
1281
- hoistedImports.push(match.trimEnd());
1282
- return "";
1280
+ const importRe = /^[ \t]*import\s+(\{[^}]*\})\s+from\s+(['"](?:@bagelink\/blox|@bagelink\/vue)['"])\s*;?[ \t]*$/gm;
1281
+ remaining = remaining.replace(importRe, (match, namedGroup, source) => {
1282
+ const names = namedGroup.replace(/[{}]/g, "").split(",").map((n2) => n2.trim()).filter(Boolean);
1283
+ const hoist = [];
1284
+ const keep = [];
1285
+ for (const name of names) {
1286
+ const local = name.split(/\s+as\s+/).pop().trim();
1287
+ if (identifiers.has(local)) hoist.push(name);
1288
+ else keep.push(name);
1289
+ }
1290
+ if (hoist.length) hoistedImports.push(`import { ${hoist.join(", ")} } from ${source}`);
1291
+ return keep.length ? `import { ${keep.join(", ")} } from ${source}` : "";
1283
1292
  });
1284
1293
  const langMatch = attrs.match(/lang="([^"]+)"/);
1285
1294
  const lang = langMatch ? ` lang="${langMatch[1]}"` : "";
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAA;AAM9C,MAAM,WAAW,iBAAiB;IACjC;;;;;OAKG;IACH,GAAG,CAAC,EAAE,OAAO,CAAA;IACb;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,EAAE,CA4SpE"}
1
+ {"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAA;AAM9C,MAAM,WAAW,iBAAiB;IACjC;;;;;OAKG;IACH,GAAG,CAAC,EAAE,OAAO,CAAA;IACb;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,EAAE,CAsUpE"}
@@ -1085,17 +1085,18 @@ function bloxPlugin(options = {}) {
1085
1085
  try {
1086
1086
  const req = createRequire(base);
1087
1087
  const vueEntry = req.resolve("vue");
1088
- const vueDir = dirname(dirname(vueEntry));
1089
- return {
1090
- "vue": vueEntry,
1091
- "vue/server-renderer": join(vueDir, "server-renderer", "index.mjs"),
1092
- "@vue/server-renderer": req.resolve("@vue/server-renderer")
1093
- };
1088
+ const vuePkgJson = req.resolve("vue/package.json");
1089
+ const vueDir = dirname(vuePkgJson);
1090
+ return [
1091
+ { find: "vue/server-renderer", replacement: join(vueDir, "server-renderer", "index.mjs") },
1092
+ { find: "@vue/server-renderer", replacement: req.resolve("@vue/server-renderer") },
1093
+ { find: "vue", replacement: vueEntry }
1094
+ ];
1094
1095
  } catch {
1095
1096
  continue;
1096
1097
  }
1097
1098
  }
1098
- return {};
1099
+ return [];
1099
1100
  }
1100
1101
  const dedupe = [
1101
1102
  "vue",
@@ -1274,10 +1275,18 @@ function bloxPlugin(options = {}) {
1274
1275
  remaining = remaining.slice(0, declStart) + remaining.slice(j);
1275
1276
  }
1276
1277
  const hoistedImports = [];
1277
- const importRe = /^[ \t]*import\s[^\n]+from\s+['"](?:@bagelink\/blox|@bagelink\/vue)['"]\s*/gm;
1278
- remaining = remaining.replace(importRe, (match) => {
1279
- hoistedImports.push(match.trimEnd());
1280
- return "";
1278
+ const importRe = /^[ \t]*import\s+(\{[^}]*\})\s+from\s+(['"](?:@bagelink\/blox|@bagelink\/vue)['"])\s*;?[ \t]*$/gm;
1279
+ remaining = remaining.replace(importRe, (match, namedGroup, source) => {
1280
+ const names = namedGroup.replace(/[{}]/g, "").split(",").map((n2) => n2.trim()).filter(Boolean);
1281
+ const hoist = [];
1282
+ const keep = [];
1283
+ for (const name of names) {
1284
+ const local = name.split(/\s+as\s+/).pop().trim();
1285
+ if (identifiers.has(local)) hoist.push(name);
1286
+ else keep.push(name);
1287
+ }
1288
+ if (hoist.length) hoistedImports.push(`import { ${hoist.join(", ")} } from ${source}`);
1289
+ return keep.length ? `import { ${keep.join(", ")} } from ${source}` : "";
1281
1290
  });
1282
1291
  const langMatch = attrs.match(/lang="([^"]+)"/);
1283
1292
  const lang = langMatch ? ` lang="${langMatch[1]}"` : "";
package/package.json CHANGED
@@ -1,130 +1,129 @@
1
1
  {
2
- "name": "@bagelink/blox",
3
- "type": "module",
4
- "version": "1.14.0",
5
- "description": "Blox page builder library for drag-and-drop page building and static data management",
6
- "author": {
7
- "name": "Bagel Studio",
8
- "email": "info@bagelstudio.co.il",
9
- "url": "https://bagelstudio.co.il"
10
- },
11
- "license": "MIT",
12
- "homepage": "https://github.com/bageldb/bagelink/tree/master/packages/blox#readme",
13
- "repository": {
14
- "type": "git",
15
- "url": "git+https://github.com/bageldb/bagelink.git",
16
- "directory": "packages/blox"
17
- },
18
- "bugs": "https://github.com/bageldb/bagelink/issues",
19
- "keywords": [
20
- "blox",
21
- "page-builder",
22
- "preview",
23
- "external-preview",
24
- "cms",
25
- "vue",
26
- "component-library",
27
- "drag-and-drop",
28
- "static-pages"
29
- ],
30
- "bin": {
31
- "blox-ssg": "./dist/ssg/cli.mjs"
32
- },
33
- "sideEffects": false,
34
- "exports": {
35
- "./package.json": "./package.json",
36
- "./vite": {
37
- "types": "./dist/vite-plugin.d.ts",
38
- "import": "./dist/vite-plugin.mjs"
39
- },
40
- ".": {
41
- "types": "./dist/index.d.ts",
42
- "require": "./dist/index.cjs",
43
- "import": "./dist/index.mjs"
44
- },
45
- "./ssg": {
46
- "types": "./dist/ssg/index.d.ts",
47
- "import": "./dist/ssg/index.mjs"
48
- },
49
- "./ssg/client": {
50
- "types": "./dist/ssg/client.d.ts",
51
- "import": "./dist/ssg/client.mjs"
52
- },
53
- "./components": {
54
- "types": "./dist/components/index.d.ts",
55
- "import": "./dist/components/index.mjs"
56
- },
57
- "./core": {
58
- "types": "./dist/core/types.d.ts",
59
- "import": "./dist/core/types.mjs"
60
- },
61
- "./utils": {
62
- "types": "./dist/utils/styles.d.ts",
63
- "import": "./dist/utils/styles.mjs"
64
- },
65
- "./dist/style.css": "./dist/style.css"
66
- },
67
- "main": "./dist/index.cjs",
68
- "module": "./dist/index.mjs",
69
- "types": "./dist/index.d.ts",
70
- "typesVersions": {
71
- "*": {
72
- "*": [
73
- "./dist/*",
74
- "./dist/index.d.ts"
75
- ]
76
- }
77
- },
78
- "files": [
79
- "dist",
80
- "core",
81
- "components",
82
- "config",
83
- "ssg",
84
- "utils",
85
- "views",
86
- "setup.ts",
87
- "index.ts",
88
- "README.md"
89
- ],
90
- "scripts": {
91
- "prepublishOnly": "pnpm build",
92
- "dev": "vite build --watch",
93
- "build": "vite build",
94
- "typecheck": "vue-tsc --noEmit"
95
- },
96
- "publishConfig": {
97
- "access": "public"
98
- },
99
- "peerDependencies": {
100
- "@bagelink/vue": "*",
101
- "happy-dom": ">=14.0.0",
102
- "vite": ">=5.0.0",
103
- "vue": "^3.3.0",
104
- "vue-router": "^4.0.0"
105
- },
106
- "peerDependenciesMeta": {
107
- "happy-dom": {
108
- "optional": true
109
- },
110
- "vite": {
111
- "optional": true
112
- }
113
- },
114
- "devDependencies": {
115
- "@vitejs/plugin-vue": "^5.0.0",
116
- "@vue/tsconfig": "^0.7.0",
117
- "magic-string": "^0.30.21",
118
- "typescript": "^5.8.3",
119
- "vite": "^5.0.0",
120
- "vite-plugin-dts": "^4.0.0",
121
- "vite-tsconfig-paths": "^5.0.0",
122
- "vitest": "^3.2.4",
123
- "vue": "^3.5.32",
124
- "vue-router": "^4.6.3",
125
- "vue-tsc": "^2.0.0"
126
- },
127
- "dependencies": {
128
- "pinia": "^3.0.4"
129
- }
130
- }
2
+ "name": "@bagelink/blox",
3
+ "type": "module",
4
+ "version": "1.14.10",
5
+ "description": "Blox page builder library for drag-and-drop page building and static data management",
6
+ "author": {
7
+ "name": "Bagel Studio",
8
+ "email": "info@bagelstudio.co.il",
9
+ "url": "https://bagelstudio.co.il"
10
+ },
11
+ "license": "MIT",
12
+ "homepage": "https://github.com/bageldb/bagelink/tree/master/packages/blox#readme",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/bageldb/bagelink.git",
16
+ "directory": "packages/blox"
17
+ },
18
+ "bugs": "https://github.com/bageldb/bagelink/issues",
19
+ "keywords": [
20
+ "blox",
21
+ "page-builder",
22
+ "preview",
23
+ "external-preview",
24
+ "cms",
25
+ "vue",
26
+ "component-library",
27
+ "drag-and-drop",
28
+ "static-pages"
29
+ ],
30
+ "bin": {
31
+ "blox-ssg": "./dist/ssg/cli.mjs"
32
+ },
33
+ "sideEffects": false,
34
+ "exports": {
35
+ "./package.json": "./package.json",
36
+ "./vite": {
37
+ "types": "./dist/vite-plugin.d.ts",
38
+ "import": "./dist/vite-plugin.mjs"
39
+ },
40
+ ".": {
41
+ "types": "./dist/index.d.ts",
42
+ "require": "./dist/index.cjs",
43
+ "import": "./dist/index.mjs"
44
+ },
45
+ "./ssg": {
46
+ "types": "./dist/ssg/index.d.ts",
47
+ "import": "./dist/ssg/index.mjs"
48
+ },
49
+ "./ssg/client": {
50
+ "types": "./dist/ssg/client.d.ts",
51
+ "import": "./dist/ssg/client.mjs"
52
+ },
53
+ "./components": {
54
+ "types": "./dist/components/index.d.ts",
55
+ "import": "./dist/components/index.mjs"
56
+ },
57
+ "./core": {
58
+ "types": "./dist/core/types.d.ts",
59
+ "import": "./dist/core/types.mjs"
60
+ },
61
+ "./utils": {
62
+ "types": "./dist/utils/styles.d.ts",
63
+ "import": "./dist/utils/styles.mjs"
64
+ },
65
+ "./dist/style.css": "./dist/style.css"
66
+ },
67
+ "main": "./dist/index.cjs",
68
+ "module": "./dist/index.mjs",
69
+ "types": "./dist/index.d.ts",
70
+ "typesVersions": {
71
+ "*": {
72
+ "*": [
73
+ "./dist/*",
74
+ "./dist/index.d.ts"
75
+ ]
76
+ }
77
+ },
78
+ "files": [
79
+ "dist",
80
+ "core",
81
+ "components",
82
+ "config",
83
+ "ssg",
84
+ "utils",
85
+ "views",
86
+ "setup.ts",
87
+ "index.ts",
88
+ "README.md"
89
+ ],
90
+ "publishConfig": {
91
+ "access": "public"
92
+ },
93
+ "peerDependencies": {
94
+ "@bagelink/vue": "*",
95
+ "happy-dom": ">=14.0.0",
96
+ "vite": ">=5.0.0",
97
+ "vue": "^3.3.0",
98
+ "vue-router": "^4.0.0"
99
+ },
100
+ "peerDependenciesMeta": {
101
+ "happy-dom": {
102
+ "optional": true
103
+ },
104
+ "vite": {
105
+ "optional": true
106
+ }
107
+ },
108
+ "devDependencies": {
109
+ "@vitejs/plugin-vue": "^5.0.0",
110
+ "@vue/tsconfig": "^0.7.0",
111
+ "magic-string": "^0.30.21",
112
+ "typescript": "^5.8.3",
113
+ "vite": "^5.0.0",
114
+ "vite-plugin-dts": "^4.0.0",
115
+ "vite-tsconfig-paths": "^5.0.0",
116
+ "vitest": "^3.2.4",
117
+ "vue": "^3.5.32",
118
+ "vue-router": "^4.6.3",
119
+ "vue-tsc": "^2.0.0"
120
+ },
121
+ "dependencies": {
122
+ "pinia": "^3.0.4"
123
+ },
124
+ "scripts": {
125
+ "dev": "vite build --watch",
126
+ "build": "vite build",
127
+ "typecheck": "vue-tsc --noEmit"
128
+ }
129
+ }