@metapages/metapage 1.8.8 → 1.8.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.
@@ -2,8 +2,8 @@ import { e as I } from "../node_modules/eventemitter3/index.js";
2
2
  import { setHashParamInWindow as p, getHashParamFromWindow as P, setHashParamValueBooleanInWindow as f, getHashParamValueBooleanFromWindow as c, setHashParamValueJsonInWindow as b, getHashParamValueJsonFromWindow as _, setHashParamValueBase64EncodedInWindow as w, getHashParamValueBase64DecodedFromWindow as R, setHashParamValueFloatInWindow as S, getHashParamValueFloatFromWindow as V, setHashParamValueIntInWindow as v, getHashParamValueIntFromWindow as y } from "../node_modules/@metapages/hash-query/dist/core/index.js";
3
3
  import { VERSION_METAFRAME as C } from "./Constants.js";
4
4
  import { deserializeInputs as d, serializeInputs as g } from "./data.js";
5
- import { isDebugFromUrlsParams as l, pageLoaded as O, stringToRgb as E, log as L, merge as m } from "./MetapageTools.js";
6
- import { isIframe as H } from "./Shared.js";
5
+ import { isDebugFromUrlsParams as l, pageLoaded as O, stringToRgb as E, log as H, merge as m } from "./MetapageTools.js";
6
+ import { isIframe as L } from "./Shared.js";
7
7
  import { JsonRpcMethodsFromChild as o, JsonRpcMethodsFromParent as u } from "./jsonrpc.js";
8
8
  var r;
9
9
  (function(h) {
@@ -15,7 +15,7 @@ var i;
15
15
  })(i || (i = {}));
16
16
  class a extends I.EventEmitter {
17
17
  constructor(t) {
18
- if (super(), this._inputPipeValues = {}, this._outputPipeValues = {}, this._state = r.WaitingForPageLoad, this._messageSendCount = 0, this.debug = l(), this.isInputOutputBlobSerialization = !0, this.id = window.name, this.debug = l(), this._isIframe = H(), this.addListener = this.addListener.bind(this), this.dispose = this.dispose.bind(this), this.error = this.error.bind(this), this.getInput = this.getInput.bind(this), this.getInputs = this.getInputs.bind(this), this.log = this.log.bind(this), this.logInternal = this.logInternal.bind(this), this.onInput = this.onInput.bind(this), this.onInputs = this.onInputs.bind(this), this.onMessage = this.onMessage.bind(this), this.sendRpc = this.sendRpc.bind(this), this.setInput = this.setInput.bind(this), this.setInputs = this.setInputs.bind(this), this.setInternalInputsAndNotify = this.setInternalInputsAndNotify.bind(this), this.setOutput = this.setOutput.bind(this), this.setOutputs = this.setOutputs.bind(this), this.warn = this.warn.bind(this), this._resolveSetupIframeServerResponse = this._resolveSetupIframeServerResponse.bind(this), this.addListenerReturnDisposer = this.addListenerReturnDisposer.bind(this), this.connected = this.connected.bind(this), this.isConnected = this.isConnected.bind(this), this.disableNotifyOnHashUrlChange = this.disableNotifyOnHashUrlChange.bind(this), this._onHashUrlChange = this._onHashUrlChange.bind(this), this.setParameter = this.setParameter.bind(this), this.setParameterBoolean = this.setParameterBoolean.bind(this), this.setParameterJson = this.setParameterJson.bind(this), this.setParameterBase64 = this.setParameterBase64.bind(this), this.setParameterFloat = this.setParameterFloat.bind(this), this.setParameterInt = this.setParameterInt.bind(this), this.getParameter = this.getParameter.bind(this), this.getParameterBoolean = this.getParameterBoolean.bind(this), this.getParameterJson = this.getParameterJson.bind(this), this.getParameterBase64 = this.getParameterBase64.bind(this), this.getParameterFloat = this.getParameterFloat.bind(this), this.getParameterInt = this.getParameterInt.bind(this), this.deleteParameter = this.deleteParameter.bind(this), !this._isIframe) {
18
+ if (super(), this._inputPipeValues = {}, this._outputPipeValues = {}, this._state = r.WaitingForPageLoad, this._messageSendCount = 0, this.debug = l(), this.isInputOutputBlobSerialization = !0, this.id = window.name, this.debug = l(), this._isIframe = L(), this.addListener = this.addListener.bind(this), this.dispose = this.dispose.bind(this), this.error = this.error.bind(this), this.getInput = this.getInput.bind(this), this.getInputs = this.getInputs.bind(this), this.log = this.log.bind(this), this.logInternal = this.logInternal.bind(this), this.onInput = this.onInput.bind(this), this.onInputs = this.onInputs.bind(this), this.onMessage = this.onMessage.bind(this), this.sendRpc = this.sendRpc.bind(this), this.setInput = this.setInput.bind(this), this.setInputs = this.setInputs.bind(this), this.setInternalInputsAndNotify = this.setInternalInputsAndNotify.bind(this), this.setOutput = this.setOutput.bind(this), this.setOutputs = this.setOutputs.bind(this), this.warn = this.warn.bind(this), this._resolveSetupIframeServerResponse = this._resolveSetupIframeServerResponse.bind(this), this.addListenerReturnDisposer = this.addListenerReturnDisposer.bind(this), this.connected = this.connected.bind(this), this.isConnected = this.isConnected.bind(this), this.disableNotifyOnHashUrlChange = this.disableNotifyOnHashUrlChange.bind(this), this._onHashUrlChange = this._onHashUrlChange.bind(this), this.setParameter = this.setParameter.bind(this), this.setParameterBoolean = this.setParameterBoolean.bind(this), this.setParameterJson = this.setParameterJson.bind(this), this.setParameterBase64 = this.setParameterBase64.bind(this), this.setParameterFloat = this.setParameterFloat.bind(this), this.setParameterInt = this.setParameterInt.bind(this), this.getParameter = this.getParameter.bind(this), this.getParameterBoolean = this.getParameterBoolean.bind(this), this.getParameterJson = this.getParameterJson.bind(this), this.getParameterBase64 = this.getParameterBase64.bind(this), this.getParameterFloat = this.getParameterFloat.bind(this), this.getParameterInt = this.getParameterInt.bind(this), this.deleteParameter = this.deleteParameter.bind(this), !this._isIframe) {
19
19
  this.log("Not an iframe, metaframe code disabled");
20
20
  return;
21
21
  }
@@ -64,7 +64,7 @@ class a extends I.EventEmitter {
64
64
  }
65
65
  logInternal(t, e, s) {
66
66
  let n;
67
- typeof t == "string" ? n = t : typeof t == "number" ? n = t + "" : n = JSON.stringify(t), e = e && e + "", n = (this.id ? `Metaframe[${this.id}] ` : "") + `${n}`, L(n, e, s);
67
+ typeof t == "string" ? n = t : typeof t == "number" ? n = t + "" : n = JSON.stringify(t), e = e && e + "", n = (this.id ? `Metaframe[${this.id}] ` : "") + `${n}`, H(n, e, s);
68
68
  }
69
69
  dispose() {
70
70
  super.removeAllListeners(), window.removeEventListener("message", this.onMessage), this.disableNotifyOnHashUrlChange(), this._inputPipeValues = void 0, this._outputPipeValues = void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"metapageRenderer.d.ts","sourceRoot":"","sources":["../../src/metapage/metapageRenderer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACpD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAmGD,wBAAsB,cAAc,CAAC,KAAK,EAAE;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtD,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA4NlC"}
1
+ {"version":3,"file":"metapageRenderer.d.ts","sourceRoot":"","sources":["../../src/metapage/metapageRenderer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACpD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AA6FD,wBAAsB,cAAc,CAAC,KAAK,EAAE;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtD,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA8PlC"}
@@ -1,18 +1,12 @@
1
- import { MetapageEvents as W } from "./events.js";
2
- import { Metapage as I } from "./Metapage.js";
3
- import { pageLoaded as N } from "./MetapageTools.js";
4
- import { getMetapageDefinitionFromUrl as P } from "./util.js";
5
- function T(a) {
6
- if (!a.startsWith("data:"))
7
- return !1;
8
- try {
9
- return new URL(a).pathname.split(";")[0].split(";")[1] === "type=metapage-divider";
10
- } catch {
11
- return !1;
12
- }
1
+ import { MetapageEvents as T } from "./events.js";
2
+ import { Metapage as F } from "./Metapage.js";
3
+ import { pageLoaded as J } from "./MetapageTools.js";
4
+ import { getMetapageDefinitionFromUrl as R } from "./util.js";
5
+ function $(r) {
6
+ return r.startsWith("data:") ? r.includes("type=metapage-divider") : !1;
13
7
  }
14
- function U(a) {
15
- const i = JSON.parse(JSON.stringify(a));
8
+ function W(r) {
9
+ const i = JSON.parse(JSON.stringify(r));
16
10
  i.meta || (i.meta = {}), i.meta.layouts || (i.meta.layouts = {}), i.meta.layouts["react-grid-layout"] || (i.meta.layouts["react-grid-layout"] = {
17
11
  docs: "https://www.npmjs.com/package/react-grid-layout",
18
12
  props: {
@@ -23,141 +17,155 @@ function U(a) {
23
17
  },
24
18
  layout: []
25
19
  });
26
- const r = i.meta.layouts["react-grid-layout"];
20
+ const t = i.meta.layouts["react-grid-layout"];
27
21
  if (i.metaframes) {
28
- Object.keys(i.metaframes).forEach((t) => {
29
- if (!r.layout.some((c) => c.i === t)) {
30
- const c = r.layout.length > 0 ? Math.max(...r.layout.map((h) => (h.y || 0) + (h.h || 2))) : 0;
31
- r.layout.push({
32
- i: t,
22
+ Object.keys(i.metaframes).forEach((a) => {
23
+ if (!t.layout.some((l) => l.i === a)) {
24
+ const l = t.layout.length > 0 ? Math.max(...t.layout.map((o) => (o.y || 0) + (o.h || 2))) : 0;
25
+ t.layout.push({
26
+ i: a,
33
27
  x: 0,
34
- y: c,
35
- w: r.props.cols,
36
- h: T(i.metaframes[t].url) ? 1 : 3
28
+ y: l,
29
+ w: t.props.cols,
30
+ h: $(i.metaframes[a].url) ? 1 : 3
37
31
  });
38
32
  }
39
33
  });
40
- const m = new Set(Object.keys(i.metaframes));
41
- r.layout = r.layout.filter((t) => m.has(t.i)), r.layout.forEach((t) => {
42
- t.x = t.x || 0, t.y = t.y || 0, t.w = t.w || 1, t.h = t.h || 1;
34
+ const f = new Set(Object.keys(i.metaframes));
35
+ t.layout = t.layout.filter((a) => f.has(a.i)), t.layout.forEach((a) => {
36
+ a.x = a.x || 0, a.y = a.y || 0, a.w = a.w || 1, a.h = a.h || 1;
43
37
  });
44
38
  }
45
39
  return i;
46
40
  }
47
- async function q(a) {
48
- var C, O, $, H;
49
- let { url: i, definition: r, onOutputs: m, rootDiv: t, options: c = {} } = a;
50
- if (!i && !r)
41
+ async function Z(r) {
42
+ var b, C, O, j, S;
43
+ let { url: i, definition: t, onOutputs: f, rootDiv: a, options: l = {} } = r;
44
+ if (!i && !t)
51
45
  throw new Error("Either url or definition must be provided");
52
- if (i && r)
46
+ if (i && t)
53
47
  throw new Error("Either url or definition must be provided, not both");
54
- if (i && (r = await P(i)), !r)
48
+ if (i && (t = await R(i)), !t)
55
49
  throw new Error("Failed to fetch metapage definition");
56
- const h = U(r), y = await A(h);
57
- await N();
58
- const s = new I();
59
- s.debug = c.debug || !1;
50
+ t = W(t), t = await P(t), await J();
51
+ const o = new F();
52
+ o.debug = l.debug || !1;
60
53
  try {
61
- await s.setDefinition(y);
54
+ await o.setDefinition(JSON.parse(JSON.stringify(t)));
62
55
  } catch (e) {
63
- throw s.dispose(), new Error(`Failed to set metapage definition: ${e}`);
56
+ throw o.dispose(), new Error(`Failed to set metapage definition: ${e}`);
64
57
  }
65
- const M = [];
66
- m && M.push(s.addListenerReturnDisposer(W.Outputs, m));
67
- const f = (O = (C = y == null ? void 0 : y.meta) == null ? void 0 : C.layouts) == null ? void 0 : O["react-grid-layout"], l = f == null ? void 0 : f.layout;
68
- if (!f || !l)
58
+ const y = [];
59
+ f && y.push(o.addListenerReturnDisposer(T.Outputs, f));
60
+ const m = (C = (b = t == null ? void 0 : t.meta) == null ? void 0 : b.layouts) == null ? void 0 : C["react-grid-layout"], p = m == null ? void 0 : m.layout;
61
+ if (!m || !p)
69
62
  throw new Error("No valid layout found in metapage definition");
70
- const { metaframesToHide: x } = (() => {
71
- var w;
72
- const e = l.map((o, p) => {
73
- const S = s.getMetaframes()[o.i];
74
- return S && T(S.url) ? { index: p, y: o.y, id: o.i } : null;
75
- }).filter((o) => o !== null);
76
- if (e.length === 0)
77
- return { metaframesToHide: /* @__PURE__ */ new Set() };
78
- const u = e.reduce((o, p) => p.y < o.y ? p : o), n = /* @__PURE__ */ new Set(), d = ((w = l.find((o) => o.i === u.id)) == null ? void 0 : w.y) ?? 0;
79
- return l.forEach((o) => {
80
- o.y >= d && n.add(o.i);
81
- }), { metaframesToHide: n };
82
- })(), b = Object.keys(s.getMetaframes()).filter((e) => !x.has(e)), j = l.filter((e) => b.includes(e.i)), k = Math.max(...j.map((e) => e.x + e.w)), L = Math.max(...j.map((e) => e.y + e.h)), R = {
63
+ const g = /* @__PURE__ */ new Set(), E = p.map((e, d) => {
64
+ const s = o.getMetaframes()[e.i];
65
+ return s && $(s.url) ? { index: d, y: e.y, id: e.i } : null;
66
+ }).filter((e) => e !== null);
67
+ if (E.length > 0) {
68
+ const e = E.reduce((s, n) => n.y < s.y ? n : s), d = ((O = p.find((s) => s.i === e.id)) == null ? void 0 : O.y) ?? 0;
69
+ p.forEach((s) => {
70
+ s.y >= d && g.add(s.i);
71
+ });
72
+ }
73
+ const M = o.getMetaframeIds().filter((e) => !g.has(e));
74
+ let u = p.filter((e) => M.includes(e.i));
75
+ if (u.length === 0)
76
+ return console.warn("No visible metaframes found"), {
77
+ setInputs: (e) => {
78
+ o.isDisposed() || o.setInputs(e);
79
+ },
80
+ dispose: () => {
81
+ y.forEach((e) => e()), o.dispose(), a.innerHTML = "";
82
+ }
83
+ };
84
+ u.sort((e, d) => e.y !== d.y ? e.y - d.y : e.x - d.x);
85
+ const H = Math.max(...u.map((e) => e.x + e.w));
86
+ Math.max(...u.map((e) => e.y + e.h));
87
+ const L = {
83
88
  display: "grid",
84
- gridTemplateColumns: `repeat(${k}, 1fr)`,
85
- gridTemplateRows: `repeat(${L}, minmax(0, 1fr))`,
86
- gap: `${(($ = f.props.margin) == null ? void 0 : $[0]) || 10}px`,
89
+ gridTemplateColumns: `repeat(${Math.max(1, H)}, 1fr)`,
90
+ gridAutoRows: "minmax(100px, auto)",
91
+ gap: `${((j = m.props.margin) == null ? void 0 : j[0]) || 10}px`,
87
92
  width: "100%",
88
93
  height: "100%",
89
- padding: ((H = f.props.containerPadding) == null ? void 0 : H[0]) || 0,
94
+ padding: ((S = m.props.containerPadding) == null ? void 0 : S[0]) || 0,
90
95
  minHeight: 0,
91
96
  alignContent: "stretch"
92
- }, F = {
97
+ }, k = {
93
98
  width: "100%",
94
99
  height: "100%",
95
100
  overflow: "hidden",
96
101
  display: "flex",
97
102
  flexDirection: "column"
98
103
  };
99
- t.innerHTML = "";
100
- const g = document.createElement("div");
101
- Object.assign(g.style, F);
102
- const v = document.createElement("div");
103
- Object.assign(v.style, R), b.forEach((e, u) => {
104
- const n = l.find((p) => p.i === e);
105
- if (!n)
104
+ a.innerHTML = "";
105
+ const h = document.createElement("div");
106
+ Object.assign(h.style, k);
107
+ const w = document.createElement("div");
108
+ Object.assign(w.style, L), M.forEach((e, d) => {
109
+ const s = p.find((N) => N.i === e);
110
+ if (!s)
106
111
  return;
107
- const d = s.getMetaframes()[e];
108
- if (!d)
112
+ const n = o.getMetaframes()[e];
113
+ if (!n)
109
114
  return;
110
- const w = {
111
- gridColumn: `${n.x + 1} / span ${n.w}`,
112
- gridRow: `${n.y + 1} / span ${n.h}`,
115
+ const I = {
116
+ gridColumn: `${s.x + 1} / span ${s.w}`,
117
+ gridRow: `${s.y + 1} / span ${s.h}`,
113
118
  overflow: "hidden",
114
119
  width: "100%",
115
120
  minHeight: "100%",
116
121
  height: "100%",
117
- border: c.hideFrameBorders ? "none" : "1px solid #e0e0e0"
118
- }, o = document.createElement("iframe");
119
- o.src = d.url, o.style.border = "none", Object.assign(o.style, w), v.appendChild(o);
122
+ border: l.hideFrameBorders ? "none" : "1px solid #e0e0e0",
123
+ position: "relative"
124
+ }, c = document.createElement("iframe");
125
+ c.src = n.url, c.style.border = "none", c.style.position = "absolute", c.style.top = "0", c.style.left = "0", c.style.width = "100%", c.style.height = "100%";
126
+ const x = document.createElement("div");
127
+ Object.assign(x.style, I), x.appendChild(c), w.appendChild(x);
120
128
  });
121
- const E = document.createElement("div");
122
- return E.style.display = "none", Object.keys(s.getMetaframes()).filter((e) => x.has(e)).forEach((e) => {
123
- const u = s.getMetaframes()[e];
124
- if (!u)
129
+ const v = document.createElement("div");
130
+ return v.style.display = "none", Object.keys(o.getMetaframes()).filter((e) => g.has(e)).forEach((e) => {
131
+ const d = o.getMetaframes()[e];
132
+ if (!d)
125
133
  return;
126
- const n = document.createElement("div");
127
- n.setAttribute("data-metaframe-id", e);
128
- const d = document.createElement("iframe");
129
- d.src = u.url, d.style.border = "none", d.style.height = "100%", d.style.width = "100%", d.style.overflow = "clip", n.appendChild(d), E.appendChild(n);
130
- }), g.appendChild(v), g.appendChild(E), t.appendChild(g), {
134
+ const s = document.createElement("div");
135
+ s.setAttribute("data-metaframe-id", e);
136
+ const n = document.createElement("iframe");
137
+ n.src = d.url, n.style.border = "none", n.style.height = "100%", n.style.width = "100%", n.style.overflow = "clip", s.appendChild(n), v.appendChild(s);
138
+ }), h.appendChild(w), h.appendChild(v), a.appendChild(h), {
131
139
  setInputs: (e) => {
132
- s.isDisposed() || s.setInputs(e);
140
+ o.isDisposed() || o.setInputs(e);
133
141
  },
134
142
  dispose: () => {
135
- M.forEach((e) => e()), s.dispose(), t.innerHTML = "";
143
+ y.forEach((e) => e()), o.dispose(), a.innerHTML = "";
136
144
  }
137
145
  };
138
146
  }
139
- const Y = (a) => {
140
- var r;
141
- if (!a)
147
+ const A = (r) => {
148
+ var t;
149
+ if (!r)
142
150
  return;
143
- typeof a == "string" && (a.startsWith("/") && (a = "https://metapage.io" + a), a = new URL(a));
144
- let i = (r = /\/m?f\/([0-9a-zA-Z-]{3,})\/?(metaframe\.json)?.*$/g.exec(a.pathname)) == null ? void 0 : r[1];
145
- return i || (a.searchParams.get("mfk") ?? void 0);
146
- }, A = async (a) => {
147
- if (!(a != null && a.metaframes))
148
- return a;
149
- for (const [i, r] of Object.entries(a.metaframes)) {
150
- if (!(r.url.startsWith("https://metapage.io/mf/") || r.url.startsWith("https://metapage.io/f/")))
151
+ typeof r == "string" && (r.startsWith("/") && (r = "https://metapage.io" + r), r = new URL(r));
152
+ let i = (t = /\/m?f\/([0-9a-zA-Z-]{3,})\/?(metaframe\.json)?.*$/g.exec(r.pathname)) == null ? void 0 : t[1];
153
+ return i || (r.searchParams.get("mfk") ?? void 0);
154
+ }, P = async (r) => {
155
+ if (!(r != null && r.metaframes))
156
+ return r;
157
+ for (const [i, t] of Object.entries(r.metaframes)) {
158
+ if (!(t.url.startsWith("https://metapage.io/mf/") || t.url.startsWith("https://metapage.io/f/")))
151
159
  continue;
152
- const m = Y(r.url);
153
- if (!m)
160
+ const f = A(t.url);
161
+ if (!f)
154
162
  continue;
155
- const t = await fetch(`https://metapage.io/f/${m}/definition.json`).then((c) => c.json());
156
- t != null && t.url && (r.url = t == null ? void 0 : t.url);
163
+ const a = await fetch(`https://metapage.io/f/${f}/definition.json`).then((l) => l.json());
164
+ a != null && a.url && (t.url = a == null ? void 0 : a.url);
157
165
  }
158
- return a;
166
+ return r;
159
167
  };
160
168
  export {
161
- q as renderMetapage
169
+ Z as renderMetapage
162
170
  };
163
171
  //# sourceMappingURL=metapageRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metapageRenderer.js","sources":["../../src/metapage/metapageRenderer.ts"],"sourcesContent":[null],"names":["isMetaframeDivider","url","validateLayout","definition","validated","layout","metaframeId","l","currentMaxY","allMetaframeIds","renderMetapage","props","onOutputs","rootDiv","options","getMetapageDefinitionFromUrl","validatedDefinition","processedDefinition","processMetapage","pageLoaded","metapage","Metapage","err","disposers","MetapageEvents","desktopLayoutBlob","_b","_a","metaframesToHide","dividers","item","index","metaframe","lowestYDivider","lowest","current","dividerY","visibleMetaframeIds","visibleLayoutItems","maxCol","maxRow","gridStyle","_c","_d","containerStyle","container","gridContainer","layoutItem","itemStyle","iframe","hiddenContainer","wrapper","inputs","disposer","getMetaframeKey","mfk","metapageDefinition","metaframeDefinition","r"],"mappings":"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"}
1
+ {"version":3,"file":"metapageRenderer.js","sources":["../../src/metapage/metapageRenderer.ts"],"sourcesContent":[null],"names":["isMetaframeDivider","url","validateLayout","definition","validated","layout","metaframeId","currentMaxY","l","allMetaframeIds","renderMetapage","props","onOutputs","rootDiv","options","getMetapageDefinitionFromUrl","processMetapage","pageLoaded","metapage","Metapage","err","disposers","MetapageEvents","desktopLayoutBlob","_b","_a","metaframesToHide","dividers","item","index","metaframe","lowestYDivider","lowest","current","dividerY","_c","visibleMetaframeIds","visibleLayoutItems","inputs","disposer","a","b","maxCol","gridStyle","_d","_e","containerStyle","container","gridContainer","layoutItem","itemStyle","iframe","wrapper","hiddenContainer","getMetaframeKey","mfk","metapageDefinition","metaframeDefinition","r"],"mappings":"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"}
@@ -36,10 +36,10 @@ const n = m(fetch), D = async (e, o) => {
36
36
  console.error(`Error fetching metaframe definition from ${t.href}: ${r}`);
37
37
  return;
38
38
  }
39
- }, U = (e) => e ? !(e != null && e.inputs && Object.keys(e.inputs).length > 0 || e != null && e.outputs && Object.keys(e.outputs).length > 0 || e != null && e.allow || e != null && e.metadata && Object.keys(e.metadata).length > 0) : !0;
39
+ }, W = (e) => e ? !(e != null && e.inputs && Object.keys(e.inputs).length > 0 || e != null && e.outputs && Object.keys(e.outputs).length > 0 || e != null && e.allow || e != null && e.metadata && Object.keys(e.metadata).length > 0) : !0;
40
40
  export {
41
41
  M as getMetaframeDefinitionFromUrl,
42
42
  D as getMetapageDefinitionFromUrl,
43
- U as isEmptyMetaframeDefinition
43
+ W as isEmptyMetaframeDefinition
44
44
  };
45
45
  //# sourceMappingURL=util.js.map
@@ -1,142 +1,145 @@
1
- function H(n) {
2
- return n && n.__esModule && Object.prototype.hasOwnProperty.call(n, "default") ? n.default : n;
1
+ function y(r) {
2
+ return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, "default") ? r.default : r;
3
3
  }
4
- var P = function(n, o) {
5
- o || (o = {}), typeof o == "function" && (o = { cmp: o });
6
- var t = typeof o.cycles == "boolean" ? o.cycles : !1, l = o.cmp && /* @__PURE__ */ function(r) {
4
+ var P = function(r, t) {
5
+ t || (t = {}), typeof t == "function" && (t = { cmp: t });
6
+ var a = typeof t.cycles == "boolean" ? t.cycles : !1, l = t.cmp && /* @__PURE__ */ function(o) {
7
7
  return function(e) {
8
- return function(i, s) {
9
- var c = { key: i, value: e[i] }, h = { key: s, value: e[s] };
10
- return r(c, h);
8
+ return function(s, i) {
9
+ var c = { key: s, value: e[s] }, u = { key: i, value: e[i] };
10
+ return o(c, u);
11
11
  };
12
12
  };
13
- }(o.cmp), a = [];
14
- return function r(e) {
13
+ }(t.cmp), n = [];
14
+ return function o(e) {
15
15
  if (e && e.toJSON && typeof e.toJSON == "function" && (e = e.toJSON()), e !== void 0) {
16
16
  if (typeof e == "number")
17
17
  return isFinite(e) ? "" + e : "null";
18
18
  if (typeof e != "object")
19
19
  return JSON.stringify(e);
20
- var i, s;
20
+ var s, i;
21
21
  if (Array.isArray(e)) {
22
- for (s = "[", i = 0; i < e.length; i++)
23
- i && (s += ","), s += r(e[i]) || "null";
24
- return s + "]";
22
+ for (i = "[", s = 0; s < e.length; s++)
23
+ s && (i += ","), i += o(e[s]) || "null";
24
+ return i + "]";
25
25
  }
26
26
  if (e === null)
27
27
  return "null";
28
- if (a.indexOf(e) !== -1) {
29
- if (t)
28
+ if (n.indexOf(e) !== -1) {
29
+ if (a)
30
30
  return JSON.stringify("__cycle__");
31
31
  throw new TypeError("Converting circular structure to JSON");
32
32
  }
33
- var c = a.push(e) - 1, h = Object.keys(e).sort(l && l(e));
34
- for (s = "", i = 0; i < h.length; i++) {
35
- var m = h[i], f = r(e[m]);
36
- f && (s && (s += ","), s += JSON.stringify(m) + ":" + f);
33
+ var c = n.push(e) - 1, u = Object.keys(e).sort(l && l(e));
34
+ for (i = "", s = 0; s < u.length; s++) {
35
+ var f = u[s], w = o(e[f]);
36
+ w && (i && (i += ","), i += JSON.stringify(f) + ":" + w);
37
37
  }
38
- return a.splice(c, 1), "{" + s + "}";
38
+ return n.splice(c, 1), "{" + i + "}";
39
39
  }
40
- }(n);
40
+ }(r);
41
41
  };
42
- const v = /* @__PURE__ */ H(P), F = (n) => w(v(n)), b = (n) => {
43
- if (n && n.length > 0)
44
- return JSON.parse(g(n));
45
- }, w = (n) => btoa(encodeURIComponent(n)), g = (n) => decodeURIComponent(atob(n)), p = (n) => {
46
- const o = new URL(n);
47
- return y(o.hash);
48
- }, y = (n) => {
49
- let o = n;
50
- for (; o.startsWith("#"); )
51
- o = o.substring(1);
52
- const t = o.indexOf("?");
53
- if (t === -1)
54
- return [o, {}];
55
- const l = o.substring(0, t);
56
- o = o.substring(t + 1);
57
- const a = {};
58
- return o.split("&").filter((r) => r.length > 0).map((r) => {
59
- const e = r.indexOf("=");
42
+ const v = /* @__PURE__ */ y(P), F = (r) => m(v(r)), b = (r) => {
43
+ if (r && r.length > 0)
44
+ return JSON.parse(g(r));
45
+ }, m = (r) => btoa(r), g = (r) => {
46
+ for (; r.endsWith("%3D"); )
47
+ r = r.slice(0, -3);
48
+ return atob(r);
49
+ }, H = (r) => {
50
+ const t = r instanceof URL ? r : new URL(r);
51
+ return p(t.hash);
52
+ }, p = (r) => {
53
+ let t = r;
54
+ for (; t.startsWith("#"); )
55
+ t = t.substring(1);
56
+ const a = t.indexOf("?");
57
+ if (a === -1)
58
+ return [t, {}];
59
+ const l = t.substring(0, a);
60
+ t = t.substring(a + 1);
61
+ const n = {};
62
+ return t.split("&").filter((o) => o.length > 0).map((o) => {
63
+ const e = o.indexOf("=");
60
64
  if (e === -1)
61
- return [r, ""];
62
- const i = r.substring(0, e), s = r.substring(e + 1);
63
- return [i, s];
64
- }).forEach(([r, e]) => {
65
- a[r] = e;
66
- }), Object.keys(a).forEach((r) => {
67
- try {
68
- a[r] = decodeURI(a[r]);
69
- } catch {
70
- a[r] = a[r];
71
- }
72
- }), [l, a];
73
- }, u = (n, o) => {
74
- const [t, l] = p(n);
75
- return l[o];
76
- }, N = (n) => V()[1][n], V = () => p(window.location.href), d = (n, o, t) => {
77
- const l = window.location.hash.startsWith("#") ? window.location.hash.substring(1) : window.location.hash, a = O(l, n, o);
78
- a !== l && (t != null && t.modifyHistory ? window.location.hash = a : (window.history.replaceState(null, document.title, `${window.location.pathname}${window.location.search}${a.startsWith("#") ? "" : "#"}${a}`), window.dispatchEvent(new HashChangeEvent("hashchange"))));
79
- }, O = (n, o, t) => {
80
- const [l, a] = y(n);
81
- let r = !1;
82
- if (a.hasOwnProperty(o) && t === null || t === void 0 ? (delete a[o], r = !0) : a[o] !== t && (a[o] = t, r = !0), !r)
83
- return n;
84
- const e = Object.keys(a);
65
+ return [o, ""];
66
+ const s = o.substring(0, e), i = o.substring(e + 1);
67
+ return [s, i];
68
+ }).forEach(([o, e]) => {
69
+ n[o] = e;
70
+ }), Object.keys(n).forEach((o) => {
71
+ n[o] = n[o];
72
+ }), [l, n];
73
+ }, h = (r, t) => {
74
+ const [a, l] = H(r);
75
+ return l[t];
76
+ }, U = (r) => V()[1][r], V = () => H(window.location.href), d = (r, t, a) => {
77
+ const l = window.location.hash.startsWith("#") ? window.location.hash.substring(1) : window.location.hash, n = W(l, r, t);
78
+ n !== l && (a != null && a.modifyHistory ? window.location.hash = n : (window.history.replaceState(null, document.title, `${window.location.pathname}${window.location.search}${n.startsWith("#") ? "" : "#"}${n}`), window.dispatchEvent(new HashChangeEvent("hashchange"))));
79
+ }, W = (r, t, a) => {
80
+ const [l, n] = p(r);
81
+ let o = !1;
82
+ if (n.hasOwnProperty(t) && a === null || a === void 0 ? (delete n[t], o = !0) : n[t] !== a && (n[t] = a, o = !0), !o)
83
+ return r;
84
+ const e = Object.keys(n);
85
85
  e.sort();
86
- const i = e.map((s, c) => `${s}=${encodeURI(a[s])}`).join("&");
87
- return `${l}?${i}`;
88
- }, S = (n, o) => {
89
- const t = u(n, o);
90
- if (t && t !== "")
91
- return b(t);
92
- }, $ = (n, o, t) => {
93
- const l = o ? F(o) : void 0;
94
- d(n, l, t);
95
- }, j = (n) => S(window.location.href, n), W = (n, o) => {
96
- const t = u(n, o);
97
- return t ? parseFloat(t) : void 0;
98
- }, I = (n, o, t) => {
99
- d(n, o != null ? o.toString() : void 0, t);
100
- }, E = (n) => W(window.location.href, n), U = (n, o) => {
101
- const t = u(n, o);
102
- return t ? parseInt(t) : void 0;
103
- }, _ = (n, o, t) => {
104
- I(n, o, t);
105
- }, R = (n) => U(window.location.href, n), J = (n, o) => u(n, o) === "true", k = (n, o, t) => {
106
- d(n, o ? "true" : void 0, t);
107
- }, x = (n) => J(window.location.href, n), B = (n, o) => {
108
- const t = u(n, o);
109
- return t && t !== "" ? g(t) : void 0;
110
- }, C = (n, o, t) => {
111
- const l = o == null ? void 0 : w(o);
112
- d(n, l, t);
113
- }, T = (n) => B(window.location.href, n);
86
+ const s = e.map((i, c) => {
87
+ const u = n[i];
88
+ return /^[A-Za-z0-9+/]+={0,2}$/.test(u) && u.length % 4, `${i}=${u}`;
89
+ }).join("&");
90
+ return !l && !s ? "" : `${l || ""}${s ? "?" + s : ""}`;
91
+ }, O = (r, t) => {
92
+ const a = h(r, t);
93
+ if (a && a !== "")
94
+ return b(a);
95
+ }, N = (r, t, a) => {
96
+ const l = t ? F(t) : void 0;
97
+ d(r, l, a);
98
+ }, j = (r) => O(window.location.href, r), S = (r, t) => {
99
+ const a = h(r, t);
100
+ return a ? parseFloat(a) : void 0;
101
+ }, I = (r, t, a) => {
102
+ d(r, t != null ? t.toString() : void 0, a);
103
+ }, E = (r) => S(window.location.href, r), J = (r, t) => {
104
+ const a = h(r, t);
105
+ return a ? parseInt(a) : void 0;
106
+ }, k = (r, t, a) => {
107
+ I(r, t, a);
108
+ }, _ = (r) => J(window.location.href, r), B = (r, t) => h(r, t) === "true", x = (r, t, a) => {
109
+ d(r, t ? "true" : void 0, a);
110
+ }, T = (r) => B(window.location.href, r), $ = (r, t) => {
111
+ const a = h(r, t);
112
+ return a && a !== "" ? g(a) : void 0;
113
+ }, A = (r, t, a) => {
114
+ const l = t == null ? void 0 : m(t);
115
+ d(r, l, a);
116
+ }, C = (r) => $(window.location.href, r);
114
117
  export {
115
118
  b as blobFromBase64String,
116
119
  F as blobToBase64String,
117
- N as getHashParamFromWindow,
118
- u as getHashParamValue,
119
- B as getHashParamValueBase64DecodedFromUrl,
120
- T as getHashParamValueBase64DecodedFromWindow,
121
- J as getHashParamValueBooleanFromUrl,
122
- x as getHashParamValueBooleanFromWindow,
123
- W as getHashParamValueFloatFromUrl,
120
+ U as getHashParamFromWindow,
121
+ h as getHashParamValue,
122
+ $ as getHashParamValueBase64DecodedFromUrl,
123
+ C as getHashParamValueBase64DecodedFromWindow,
124
+ B as getHashParamValueBooleanFromUrl,
125
+ T as getHashParamValueBooleanFromWindow,
126
+ S as getHashParamValueFloatFromUrl,
124
127
  E as getHashParamValueFloatFromWindow,
125
- U as getHashParamValueIntFromUrl,
126
- R as getHashParamValueIntFromWindow,
127
- S as getHashParamValueJsonFromUrl,
128
+ J as getHashParamValueIntFromUrl,
129
+ _ as getHashParamValueIntFromWindow,
130
+ O as getHashParamValueJsonFromUrl,
128
131
  j as getHashParamValueJsonFromWindow,
129
132
  V as getHashParamsFromWindow,
130
- p as getUrlHashParams,
131
- y as getUrlHashParamsFromHashString,
133
+ H as getUrlHashParams,
134
+ p as getUrlHashParamsFromHashString,
132
135
  d as setHashParamInWindow,
133
- C as setHashParamValueBase64EncodedInWindow,
134
- k as setHashParamValueBooleanInWindow,
136
+ A as setHashParamValueBase64EncodedInWindow,
137
+ x as setHashParamValueBooleanInWindow,
135
138
  I as setHashParamValueFloatInWindow,
136
- O as setHashParamValueInHashString,
137
- _ as setHashParamValueIntInWindow,
138
- $ as setHashParamValueJsonInWindow,
139
+ W as setHashParamValueInHashString,
140
+ k as setHashParamValueIntInWindow,
141
+ N as setHashParamValueJsonInWindow,
139
142
  g as stringFromBase64String,
140
- w as stringToBase64String
143
+ m as stringToBase64String
141
144
  };
142
145
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../node_modules/@metapages/hash-query/dist/core/index.js"],"sourcesContent":["function y(t) {\n return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, \"default\") ? t.default : t;\n}\nvar I = function(t, r) {\n r || (r = {}), typeof r == \"function\" && (r = { cmp: r });\n var n = typeof r.cycles == \"boolean\" ? r.cycles : !1, e = r.cmp && /* @__PURE__ */ function(s) {\n return function(a) {\n return function(c, i) {\n var m = { key: c, value: a[c] }, f = { key: i, value: a[i] };\n return s(m, f);\n };\n };\n }(r.cmp), o = [];\n return function s(a) {\n if (a && a.toJSON && typeof a.toJSON == \"function\" && (a = a.toJSON()), a !== void 0) {\n if (typeof a == \"number\") return isFinite(a) ? \"\" + a : \"null\";\n if (typeof a != \"object\") return JSON.stringify(a);\n var c, i;\n if (Array.isArray(a)) {\n for (i = \"[\", c = 0; c < a.length; c++)\n c && (i += \",\"), i += s(a[c]) || \"null\";\n return i + \"]\";\n }\n if (a === null) return \"null\";\n if (o.indexOf(a) !== -1) {\n if (n) return JSON.stringify(\"__cycle__\");\n throw new TypeError(\"Converting circular structure to JSON\");\n }\n var m = o.push(a) - 1, f = Object.keys(a).sort(e && e(a));\n for (i = \"\", c = 0; c < f.length; c++) {\n var w = f[c], H = s(a[w]);\n H && (i && (i += \",\"), i += JSON.stringify(w) + \":\" + H);\n }\n return o.splice(m, 1), \"{\" + i + \"}\";\n }\n }(t);\n};\nconst V = /* @__PURE__ */ y(I), P = (t) => d(V(t)), F = (t) => {\n if (t && t.length > 0)\n return JSON.parse(S(t));\n}, d = (t) => btoa(encodeURIComponent(t)), S = (t) => decodeURIComponent(atob(t)), b = (t) => {\n const r = new URL(t);\n return v(r.hash);\n}, v = (t) => {\n let r = t;\n for (; r.startsWith(\"#\"); )\n r = r.substring(1);\n const n = r.indexOf(\"?\");\n if (n === -1)\n return [r, {}];\n const e = r.substring(0, n);\n r = r.substring(n + 1);\n const o = {};\n return r.split(\"&\").filter((s) => s.length > 0).map((s) => {\n const a = s.indexOf(\"=\");\n if (a === -1)\n return [s, \"\"];\n const c = s.substring(0, a), i = s.substring(a + 1);\n return [c, i];\n }).forEach(([s, a]) => {\n o[s] = a;\n }), Object.keys(o).forEach((s) => {\n try {\n o[s] = decodeURI(o[s]);\n } catch {\n o[s] = o[s];\n }\n }), [e, o];\n}, l = (t, r) => {\n const [n, e] = b(t);\n return e[r];\n}, E = (t) => U()[1][t], U = () => b(window.location.href), u = (t, r, n) => {\n const e = window.location.hash.startsWith(\"#\") ? window.location.hash.substring(1) : window.location.hash, o = g(e, t, r);\n o !== e && (n != null && n.modifyHistory ? window.location.hash = o : (window.history.replaceState(null, document.title, `${window.location.pathname}${window.location.search}${o.startsWith(\"#\") ? \"\" : \"#\"}${o}`), window.dispatchEvent(new HashChangeEvent(\"hashchange\"))));\n}, g = (t, r, n) => {\n const [e, o] = v(t);\n let s = !1;\n if (o.hasOwnProperty(r) && n === null || n === void 0 ? (delete o[r], s = !0) : o[r] !== n && (o[r] = n, s = !0), !s)\n return t;\n const a = Object.keys(o);\n a.sort();\n const c = a.map((i, m) => `${i}=${encodeURI(o[i])}`).join(\"&\");\n return `${e}?${c}`;\n}, h = (t, r, n) => {\n const e = new URL(t), o = g(e.hash, r, n);\n return e.hash = o, e.href;\n}, $ = (t, r, n) => {\n const e = new URL(t);\n return e.hash = O(e.hash, r, n), e.href;\n}, p = (t, r) => {\n const n = l(t, r);\n if (n && n !== \"\")\n return F(n);\n}, R = (t, r, n) => {\n const e = r ? P(r) : void 0;\n u(t, e, n);\n}, _ = (t) => p(window.location.href, t), O = (t, r, n) => {\n const e = n ? P(n) : void 0;\n return g(t, r, e);\n}, C = (t, r, n) => h(t, r, n ? n.toString() : void 0), W = (t, r) => {\n const n = l(t, r);\n return n ? parseFloat(n) : void 0;\n}, B = (t, r, n) => {\n u(t, r != null ? r.toString() : void 0, n);\n}, x = (t) => W(window.location.href, t), D = (t, r, n) => h(t, r, n != null ? n.toString() : void 0), J = (t, r) => {\n const n = l(t, r);\n return n ? parseInt(n) : void 0;\n}, L = (t, r, n) => {\n B(t, r, n);\n}, T = (t) => J(window.location.href, t), A = (t, r, n) => h(t, r, n ? \"true\" : void 0), j = (t, r) => l(t, r) === \"true\", q = (t, r, n) => {\n u(t, r ? \"true\" : void 0, n);\n}, M = (t) => j(window.location.href, t), k = (t, r, n) => h(t, r, n == null ? void 0 : d(n)), N = (t, r) => {\n const n = l(t, r);\n return n && n !== \"\" ? S(n) : void 0;\n}, z = (t, r, n) => {\n const e = r == null ? void 0 : d(r);\n u(t, e, n);\n}, G = (t) => N(window.location.href, t), K = (t, r) => {\n u(t, void 0, r);\n}, Q = (t, r) => h(t, r, void 0);\nexport {\n F as blobFromBase64String,\n P as blobToBase64String,\n Q as deleteHashParamFromUrl,\n K as deleteHashParamFromWindow,\n E as getHashParamFromWindow,\n l as getHashParamValue,\n N as getHashParamValueBase64DecodedFromUrl,\n G as getHashParamValueBase64DecodedFromWindow,\n j as getHashParamValueBooleanFromUrl,\n M as getHashParamValueBooleanFromWindow,\n W as getHashParamValueFloatFromUrl,\n x as getHashParamValueFloatFromWindow,\n J as getHashParamValueIntFromUrl,\n T as getHashParamValueIntFromWindow,\n p as getHashParamValueJsonFromUrl,\n _ as getHashParamValueJsonFromWindow,\n U as getHashParamsFromWindow,\n b as getUrlHashParams,\n v as getUrlHashParamsFromHashString,\n u as setHashParamInWindow,\n k as setHashParamValueBase64EncodedInUrl,\n z as setHashParamValueBase64EncodedInWindow,\n A as setHashParamValueBooleanInUrl,\n q as setHashParamValueBooleanInWindow,\n C as setHashParamValueFloatInUrl,\n B as setHashParamValueFloatInWindow,\n g as setHashParamValueInHashString,\n h as setHashParamValueInUrl,\n D as setHashParamValueIntInUrl,\n L as setHashParamValueIntInWindow,\n O as setHashParamValueJsonInHashString,\n $ as setHashParamValueJsonInUrl,\n R as setHashParamValueJsonInWindow,\n S as stringFromBase64String,\n d as stringToBase64String\n};\n//# sourceMappingURL=index.js.map\n"],"names":["y","t","I","r","n","e","s","a","c","i","m","f","o","w","H","V","P","d","F","S","b","v","l","E","U","u","g","p","R","_","B","x","J","L","T","j","q","M","N","z","G"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../node_modules/@metapages/hash-query/dist/core/index.js"],"sourcesContent":["function V(t) {\n return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, \"default\") ? t.default : t;\n}\nvar I = function(t, n) {\n n || (n = {}), typeof n == \"function\" && (n = { cmp: n });\n var r = typeof n.cycles == \"boolean\" ? n.cycles : !1, e = n.cmp && /* @__PURE__ */ function(o) {\n return function(a) {\n return function(c, l) {\n var h = { key: c, value: a[c] }, i = { key: l, value: a[l] };\n return o(h, i);\n };\n };\n }(n.cmp), s = [];\n return function o(a) {\n if (a && a.toJSON && typeof a.toJSON == \"function\" && (a = a.toJSON()), a !== void 0) {\n if (typeof a == \"number\") return isFinite(a) ? \"\" + a : \"null\";\n if (typeof a != \"object\") return JSON.stringify(a);\n var c, l;\n if (Array.isArray(a)) {\n for (l = \"[\", c = 0; c < a.length; c++)\n c && (l += \",\"), l += o(a[c]) || \"null\";\n return l + \"]\";\n }\n if (a === null) return \"null\";\n if (s.indexOf(a) !== -1) {\n if (r) return JSON.stringify(\"__cycle__\");\n throw new TypeError(\"Converting circular structure to JSON\");\n }\n var h = s.push(a) - 1, i = Object.keys(a).sort(e && e(a));\n for (l = \"\", c = 0; c < i.length; c++) {\n var u = i[c], m = o(a[u]);\n m && (l && (l += \",\"), l += JSON.stringify(u) + \":\" + m);\n }\n return s.splice(h, 1), \"{\" + l + \"}\";\n }\n }(t);\n};\nconst F = /* @__PURE__ */ V(I), b = (t) => w(F(t)), S = (t) => {\n if (t && t.length > 0)\n return JSON.parse(v(t));\n}, w = (t) => btoa(t), v = (t) => {\n for (; t.endsWith(\"%3D\"); )\n t = t.slice(0, -3);\n return atob(t);\n}, y = (t) => {\n const n = t instanceof URL ? t : new URL(t);\n return H(n.hash);\n}, H = (t) => {\n let n = t;\n for (; n.startsWith(\"#\"); )\n n = n.substring(1);\n const r = n.indexOf(\"?\");\n if (r === -1)\n return [n, {}];\n const e = n.substring(0, r);\n n = n.substring(r + 1);\n const s = {};\n return n.split(\"&\").filter((o) => o.length > 0).map((o) => {\n const a = o.indexOf(\"=\");\n if (a === -1)\n return [o, \"\"];\n const c = o.substring(0, a), l = o.substring(a + 1);\n return [c, l];\n }).forEach(([o, a]) => {\n s[o] = a;\n }), Object.keys(s).forEach((o) => {\n s[o] = s[o];\n }), [e, s];\n}, d = (t, n) => {\n const [r, e] = y(t);\n return e[n];\n}, x = (t) => p()[1][t], p = () => y(window.location.href), f = (t, n, r) => {\n const e = window.location.hash.startsWith(\"#\") ? window.location.hash.substring(1) : window.location.hash, s = P(e, t, n);\n s !== e && (r != null && r.modifyHistory ? window.location.hash = s : (window.history.replaceState(null, document.title, `${window.location.pathname}${window.location.search}${s.startsWith(\"#\") ? \"\" : \"#\"}${s}`), window.dispatchEvent(new HashChangeEvent(\"hashchange\"))));\n}, P = (t, n, r) => {\n const [e, s] = H(t);\n let o = !1;\n if (s.hasOwnProperty(n) && r === null || r === void 0 ? (delete s[n], o = !0) : s[n] !== r && (s[n] = r, o = !0), !o)\n return t;\n const a = Object.keys(s);\n a.sort();\n const c = a.map((l, h) => {\n const i = s[l];\n return /^[A-Za-z0-9+/]+={0,2}$/.test(i) && i.length % 4, `${l}=${i}`;\n }).join(\"&\");\n return !e && !c ? \"\" : `${e || \"\"}${c ? \"?\" + c : \"\"}`;\n}, O = (t, n) => {\n let r = t;\n for (; r.startsWith(\"#\"); )\n r = r.substring(1);\n const e = r.indexOf(\"?\"), s = e === -1 ? r : r.substring(0, e), o = {};\n if (e !== -1) {\n const h = r.substring(e + 1);\n h.length > 0 && h.split(\"&\").forEach((i) => {\n if (i.length > 0) {\n const u = i.indexOf(\"=\");\n if (u === -1)\n o[i] = \"\";\n else {\n const m = i.substring(0, u), U = i.substring(u + 1);\n o[m] = U;\n }\n }\n });\n }\n let a = !1;\n for (const [h, i] of Object.entries(n))\n i == null ? o.hasOwnProperty(h) && (delete o[h], a = !0) : o[h] !== i && (o[h] = i, a = !0);\n if (!a)\n return t;\n const c = Object.keys(o);\n c.sort();\n const l = c.map((h) => {\n const i = o[h];\n return /^[A-Za-z0-9+/]+={0,2}$/.test(i) && i.length % 4, `${h}=${i}`;\n }).join(\"&\");\n return !s && !l ? \"\" : `${s || \"\"}${l ? \"?\" + l : \"\"}`;\n}, g = (t, n, r) => {\n const e = t instanceof URL ? t : new URL(t), s = P(e.hash, n, r);\n return e.hash = s, e;\n}, D = (t, n) => {\n const r = t instanceof URL ? t : new URL(t);\n let e = O(r.hash, n);\n return r.hash = e, r;\n}, L = (t, n, r) => {\n const e = t instanceof URL ? t : new URL(t);\n return e.hash = B(e.hash, n, r), e;\n}, W = (t, n) => {\n const r = d(t, n);\n if (r && r !== \"\")\n return S(r);\n}, _ = (t, n) => {\n const [r, e] = H(t), s = e[n];\n if (s && s !== \"\")\n return S(s);\n}, C = (t, n, r) => {\n const e = n ? b(n) : void 0;\n f(t, e, r);\n}, k = (t) => W(window.location.href, t), B = (t, n, r) => {\n const e = r ? b(r) : void 0;\n return P(t, n, e);\n}, A = (t, n, r) => g(t, n, r ? r.toString() : void 0), j = (t, n) => {\n const r = d(t, n);\n return r ? parseFloat(r) : void 0;\n}, J = (t, n, r) => {\n f(t, n != null ? n.toString() : void 0, r);\n}, T = (t) => j(window.location.href, t), q = (t, n, r) => g(t, n, r != null ? r.toString() : void 0), $ = (t, n) => {\n const r = d(t, n);\n return r ? parseInt(r) : void 0;\n}, z = (t, n, r) => {\n J(t, n, r);\n}, Z = (t) => $(window.location.href, t), M = (t, n, r) => g(t, n, r ? \"true\" : void 0), E = (t, n) => d(t, n) === \"true\", G = (t, n, r) => {\n f(t, n ? \"true\" : void 0, r);\n}, K = (t) => E(window.location.href, t), Q = (t, n, r) => g(t, n, r == null ? void 0 : w(r)), R = (t, n) => {\n const r = d(t, n);\n return r && r !== \"\" ? v(r) : void 0;\n}, X = (t, n, r) => {\n const e = n == null ? void 0 : w(n);\n f(t, e, r);\n}, Y = (t) => R(window.location.href, t), tt = (t, n, r) => g(t, n, r == null ? void 0 : encodeURIComponent(r)), N = (t, n) => {\n const r = d(t, n);\n return r && r !== \"\" ? decodeURIComponent(r) : void 0;\n}, nt = (t, n, r) => {\n const e = n == null ? void 0 : encodeURIComponent(n);\n f(t, e, r);\n}, rt = (t) => N(window.location.href, t), et = (t, n) => {\n f(t, void 0, n);\n}, at = (t, n) => g(t, n, void 0);\nexport {\n S as blobFromBase64String,\n b as blobToBase64String,\n O as createHashParamValuesInHashString,\n at as deleteHashParamFromUrl,\n et as deleteHashParamFromWindow,\n x as getHashParamFromWindow,\n d as getHashParamValue,\n R as getHashParamValueBase64DecodedFromUrl,\n Y as getHashParamValueBase64DecodedFromWindow,\n E as getHashParamValueBooleanFromUrl,\n K as getHashParamValueBooleanFromWindow,\n j as getHashParamValueFloatFromUrl,\n T as getHashParamValueFloatFromWindow,\n $ as getHashParamValueIntFromUrl,\n Z as getHashParamValueIntFromWindow,\n _ as getHashParamValueJsonFromHashString,\n W as getHashParamValueJsonFromUrl,\n k as getHashParamValueJsonFromWindow,\n N as getHashParamValueUriDecodedFromUrl,\n rt as getHashParamValueUriDecodedFromWindow,\n p as getHashParamsFromWindow,\n y as getUrlHashParams,\n H as getUrlHashParamsFromHashString,\n f as setHashParamInWindow,\n Q as setHashParamValueBase64EncodedInUrl,\n X as setHashParamValueBase64EncodedInWindow,\n M as setHashParamValueBooleanInUrl,\n G as setHashParamValueBooleanInWindow,\n A as setHashParamValueFloatInUrl,\n J as setHashParamValueFloatInWindow,\n P as setHashParamValueInHashString,\n g as setHashParamValueInUrl,\n q as setHashParamValueIntInUrl,\n z as setHashParamValueIntInWindow,\n B as setHashParamValueJsonInHashString,\n L as setHashParamValueJsonInUrl,\n C as setHashParamValueJsonInWindow,\n tt as setHashParamValueUriEncodedInUrl,\n nt as setHashParamValueUriEncodedInWindow,\n D as setHashParamsInUrl,\n v as stringFromBase64String,\n w as stringToBase64String\n};\n//# sourceMappingURL=index.js.map\n"],"names":["V","t","I","n","r","e","a","c","l","h","i","s","u","m","F","b","w","S","v","y","H","d","x","p","f","P","W","C","k","j","J","T","$","z","Z","E","G","K","R","X","Y"],"mappings":"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","x_google_ignoreList":[0]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@metapages/metapage",
3
3
  "public": true,
4
- "version": "1.8.8",
4
+ "version": "1.8.10",
5
5
  "description": "Connect web pages together",
6
6
  "repository": "https://github.com/metapages/metapage",
7
7
  "homepage": "https://metapage.io/",
@@ -23,7 +23,7 @@
23
23
  ],
24
24
  "source": "src/index.ts",
25
25
  "dependencies": {
26
- "@metapages/hash-query": "^0.8.15",
26
+ "@metapages/hash-query": "^0.9.1",
27
27
  "base64-arraybuffer": "^1.0.2",
28
28
  "compare-versions": "^6.1.1",
29
29
  "eventemitter3": "^4.0.0",
@@ -34,13 +34,7 @@ function isMetaframeDivider(url: string): boolean {
34
34
  if (!url.startsWith("data:")) {
35
35
  return false;
36
36
  }
37
- try {
38
- const parsed = new URL(url);
39
- const mimetype = parsed.pathname.split(";")[0];
40
- return mimetype.split(";")[1] === "type=metapage-divider";
41
- } catch {
42
- return false;
43
- }
37
+ return url.includes("type=metapage-divider");
44
38
  }
45
39
 
46
40
  // Utility function to validate layout (simplified version)
@@ -118,14 +112,12 @@ function validateLayout(
118
112
  * and returns a function to set inputs and a dispose function
119
113
  */
120
114
  export async function renderMetapage(props: {
121
- url?: string,
115
+ url?: string;
122
116
  definition?: MetapageDefinitionV2;
123
117
  onOutputs?: (outputs: MetapageInstanceInputs) => void;
124
118
  rootDiv: HTMLElement;
125
119
  options?: RenderingOptions;
126
120
  }): Promise<MetapageRendererResult> {
127
-
128
-
129
121
  // Validate and clean the definition
130
122
  let { url, definition, onOutputs, rootDiv, options = {} } = props;
131
123
  if (!url && !definition) {
@@ -138,13 +130,13 @@ export async function renderMetapage(props: {
138
130
  if (url) {
139
131
  definition = await getMetapageDefinitionFromUrl(url);
140
132
  }
141
-
133
+
142
134
  if (!definition) {
143
135
  throw new Error("Failed to fetch metapage definition");
144
136
  }
145
137
 
146
- const validatedDefinition = validateLayout(definition);
147
- const processedDefinition = await processMetapage(validatedDefinition);
138
+ definition = validateLayout(definition);
139
+ definition = await processMetapage(definition);
148
140
 
149
141
  // Wait for page to be loaded
150
142
  await pageLoaded();
@@ -154,7 +146,7 @@ export async function renderMetapage(props: {
154
146
  metapage.debug = options.debug || false;
155
147
 
156
148
  try {
157
- await metapage.setDefinition(processedDefinition);
149
+ await metapage.setDefinition(JSON.parse(JSON.stringify(definition)));
158
150
  } catch (err) {
159
151
  metapage.dispose();
160
152
  throw new Error(`Failed to set metapage definition: ${err}`);
@@ -170,8 +162,7 @@ export async function renderMetapage(props: {
170
162
  }
171
163
 
172
164
  // Get the layout information
173
- const desktopLayoutBlob =
174
- processedDefinition?.meta?.layouts?.["react-grid-layout"];
165
+ const desktopLayoutBlob = definition?.meta?.layouts?.["react-grid-layout"];
175
166
  const layout = desktopLayoutBlob?.layout as LayoutItem[];
176
167
 
177
168
  if (!desktopLayoutBlob || !layout) {
@@ -179,23 +170,22 @@ export async function renderMetapage(props: {
179
170
  }
180
171
 
181
172
  // Find dividers and determine which metaframes to hide
182
- const { metaframesToHide } = (() => {
183
- // Find all dividers and their y positions
184
- const dividers = layout
185
- .map((item: LayoutItem, index: number) => {
186
- const metaframe = metapage.getMetaframes()[item.i];
187
- return metaframe && isMetaframeDivider(metaframe.url)
188
- ? { index, y: item.y, id: item.i }
189
- : null;
190
- })
191
- .filter(
192
- (item): item is { index: number; y: number; id: string } =>
193
- item !== null
194
- );
195
-
196
- // If no dividers found, return empty list
197
- if (dividers.length === 0) return { metaframesToHide: new Set<string>() };
173
+ const metaframesToHide = new Set<string>();
174
+
175
+ // Find all dividers and their y positions
176
+ const dividers = layout
177
+ .map((item: LayoutItem, index: number) => {
178
+ const metaframe = metapage.getMetaframes()[item.i];
179
+ return metaframe && isMetaframeDivider(metaframe.url)
180
+ ? { index, y: item.y, id: item.i }
181
+ : null;
182
+ })
183
+ .filter(
184
+ (item): item is { index: number; y: number; id: string } => item !== null
185
+ );
198
186
 
187
+ // If dividers found, determine which metaframes to hide
188
+ if (dividers.length > 0) {
199
189
  // Find the divider with the lowest y value
200
190
  const lowestYDivider = dividers.reduce(
201
191
  (
@@ -204,8 +194,6 @@ export async function renderMetapage(props: {
204
194
  ) => (current.y < lowest.y ? current : lowest)
205
195
  );
206
196
 
207
- // Create a set of metaframe IDs to hide (divider and those below it)
208
- const metaframesToHide = new Set<string>();
209
197
  const dividerY =
210
198
  layout.find((item: LayoutItem) => item.i === lowestYDivider.id)?.y ?? 0;
211
199
 
@@ -215,31 +203,61 @@ export async function renderMetapage(props: {
215
203
  metaframesToHide.add(item.i);
216
204
  }
217
205
  });
218
-
219
- return { metaframesToHide };
220
- })();
206
+ }
221
207
 
222
208
  // Get visible metaframes
223
- const visibleMetaframeIds = Object.keys(metapage.getMetaframes()).filter(
224
- (metaframeId) => !metaframesToHide.has(metaframeId)
225
- );
209
+ const visibleMetaframeIds = metapage
210
+ .getMetaframeIds()
211
+ .filter((metaframeId) => !metaframesToHide.has(metaframeId));
226
212
 
227
213
  // Calculate grid dimensions based on visible metaframes only
228
- const visibleLayoutItems = layout.filter((item: LayoutItem) =>
214
+ let visibleLayoutItems = layout.filter((item: LayoutItem) =>
229
215
  visibleMetaframeIds.includes(item.i)
230
216
  );
217
+
218
+ // Handle case where no metaframes are visible
219
+ if (visibleLayoutItems.length === 0) {
220
+ console.warn("No visible metaframes found");
221
+ // Return early with empty result
222
+ return {
223
+ setInputs: (inputs: MetapageInstanceInputs) => {
224
+ if (!metapage.isDisposed()) {
225
+ metapage.setInputs(inputs);
226
+ }
227
+ },
228
+ dispose: () => {
229
+ disposers.forEach((disposer) => disposer());
230
+ metapage.dispose();
231
+ rootDiv.innerHTML = "";
232
+ },
233
+ };
234
+ }
235
+
236
+ // Sort visible layout items by y position to ensure proper grid layout
237
+ visibleLayoutItems.sort((a, b) => {
238
+ if (a.y !== b.y) {
239
+ return a.y - b.y;
240
+ }
241
+ return a.x - b.x;
242
+ });
243
+
244
+ // Calculate grid dimensions based on visible items only
231
245
  const maxCol = Math.max(
232
246
  ...visibleLayoutItems.map((item: LayoutItem) => item.x + item.w)
233
247
  );
248
+
249
+ // For rows, we need to account for the fact that we're hiding items below the divider
250
+ // So we should use the actual visible items' positions
234
251
  const maxRow = Math.max(
235
252
  ...visibleLayoutItems.map((item: LayoutItem) => item.y + item.h)
236
253
  );
254
+
237
255
 
238
256
  // Create grid container style
239
257
  const gridStyle = {
240
258
  display: "grid",
241
- gridTemplateColumns: `repeat(${maxCol}, 1fr)`,
242
- gridTemplateRows: `repeat(${maxRow}, minmax(0, 1fr))`,
259
+ gridTemplateColumns: `repeat(${Math.max(1, maxCol)}, 1fr)`,
260
+ gridAutoRows: "minmax(100px, auto)",
243
261
  gap: `${desktopLayoutBlob.props.margin?.[0] || 10}px`,
244
262
  width: "100%",
245
263
  height: "100%",
@@ -286,15 +304,25 @@ export async function renderMetapage(props: {
286
304
  minHeight: "100%",
287
305
  height: "100%",
288
306
  border: options.hideFrameBorders ? "none" : "1px solid #e0e0e0",
307
+ position: "relative" as const,
289
308
  };
290
309
 
291
310
  // Create iframe for the metaframe
292
311
  const iframe = document.createElement("iframe");
293
312
  iframe.src = metaframe.url;
294
313
  iframe.style.border = "none";
295
- Object.assign(iframe.style, itemStyle);
296
-
297
- gridContainer.appendChild(iframe);
314
+ iframe.style.position = "absolute";
315
+ iframe.style.top = "0";
316
+ iframe.style.left = "0";
317
+ iframe.style.width = "100%";
318
+ iframe.style.height = "100%";
319
+
320
+ // Create wrapper div for proper grid positioning
321
+ const wrapper = document.createElement("div");
322
+ Object.assign(wrapper.style, itemStyle);
323
+ wrapper.appendChild(iframe);
324
+
325
+ gridContainer.appendChild(wrapper);
298
326
  });
299
327
 
300
328
  // Create hidden container for hidden metaframes