@mtngtools/frame-vue 0.0.10-experimental.0 → 0.0.12-experimental.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import { t as useSimpleLoggedIn } from "./useSimpleLoggedIn-Bz5zqTrQ.js";
2
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, nextTick, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, useSlots, vShow, watch, withCtx, withDirectives } from "vue";
1
+ import { t as useSimpleLoggedIn } from "./useSimpleLoggedIn-CSv5Xy3J.js";
2
+ import { Comment, Fragment, Text, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, nextTick, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, onUnmounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, useSlots, vShow, watch, withCtx, withDirectives } from "vue";
3
3
  var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ */ defineComponent({
4
4
  __name: "SidePanelControlButton",
5
5
  props: {
@@ -19,26 +19,26 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
19
19
  },
20
20
  emits: ["click"],
21
21
  setup(e, { emit: t }) {
22
- let r = e, i = t, o = {
22
+ let n = e, r = t, a = {
23
23
  auto: "Auto",
24
24
  right: "Right",
25
25
  bottom: "Bottom",
26
26
  full: "Full",
27
27
  minimized: "Close"
28
- }, c = computed(() => o[r.state]), l = computed(() => {
29
- if (r.disabled) return "cursor-not-allowed border-neutral-700 text-neutral-500";
28
+ }, o = computed(() => a[n.state]), c = computed(() => {
29
+ if (n.disabled) return "cursor-not-allowed border-neutral-700 text-neutral-500";
30
30
  {
31
31
  let e = "cursor-pointer";
32
- return r.activeResolved ? `${e} text-accent-400/80 bg-accent/20 border-accent-900/10` : `${e} text-accent-200 bg-accent/50 hover:bg-accent/90 border-accent hover:text-white hover:border-white`;
32
+ return n.activeResolved ? `${e} text-accent-400/80 bg-accent/20 border-accent-900/10` : `${e} text-accent-200 bg-accent/50 hover:bg-accent/90 border-accent hover:text-white hover:border-white`;
33
33
  }
34
34
  });
35
35
  function u() {
36
- r.disabled || i("click", r.state);
36
+ n.disabled || r("click", n.state);
37
37
  }
38
38
  return (t, n) => (openBlock(), createElementBlock("button", {
39
39
  type: "button",
40
40
  disabled: e.disabled,
41
- class: normalizeClass(l.value),
41
+ class: normalizeClass(c.value),
42
42
  style: {
43
43
  display: "inline-flex",
44
44
  alignItems: "center",
@@ -55,7 +55,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
55
55
  textTransform: "uppercase"
56
56
  },
57
57
  onClick: u
58
- }, [renderSlot(t.$slots, "icon", { state: e.state }), renderSlot(t.$slots, "label", { state: e.state }, () => [createTextVNode(toDisplayString(c.value), 1)])], 10, _hoisted_1$4));
58
+ }, [renderSlot(t.$slots, "icon", { state: e.state }), renderSlot(t.$slots, "label", { state: e.state }, () => [createTextVNode(toDisplayString(o.value), 1)])], 10, _hoisted_1$4));
59
59
  }
60
60
  }), _hoisted_1$3 = {
61
61
  class: "",
@@ -76,15 +76,15 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
76
76
  }
77
77
  },
78
78
  emits: ["setSidePanelMode", "closeSidePanel"],
79
- setup(e, { emit: s }) {
80
- let c = e, l = s, u = computed(() => c.sidePanelModeResolved !== "none"), d = computed(() => c.overlayOnly && c.sidePanelModeResolved === "full" ? c.availableStates.includes("minimized") ? ["minimized"] : [] : c.availableStates);
79
+ setup(e, { emit: t }) {
80
+ let r = e, l = t, u = computed(() => r.sidePanelModeResolved !== "none"), d = computed(() => r.overlayOnly && r.sidePanelModeResolved === "full" ? r.availableStates.includes("minimized") ? ["minimized"] : [] : r.availableStates);
81
81
  function f(e) {
82
82
  l("setSidePanelMode", e);
83
83
  }
84
84
  function p() {
85
85
  l("closeSidePanel");
86
86
  }
87
- return (n, s) => u.value ? renderSlot(n.$slots, "default", {
87
+ return (t, r) => u.value ? renderSlot(t.$slots, "default", {
88
88
  key: 0,
89
89
  sidePanelMode: e.sidePanelMode,
90
90
  sidePanelModeResolved: e.sidePanelModeResolved,
@@ -154,17 +154,17 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
154
154
  availableStates: { default: () => [] }
155
155
  },
156
156
  emits: ["setSidePanelMode", "closeSidePanel"],
157
- setup(e, { emit: s }) {
158
- let c = e, l = s, u = useSlots(), d = computed(() => c.sidePanelModeResolved !== "none"), p = computed(() => c.sidePanelModeResolved === "minimized"), m = computed(() => !!u.default), ee = computed(() => !!u.controls), h = computed(() => !p.value);
159
- return (n, s) => d.value ? (openBlock(), createElementBlock("header", _hoisted_1$2, [createElementVNode("div", { style: normalizeStyle({
157
+ setup(e, { emit: t }) {
158
+ let r = e, l = t, u = useSlots(), d = computed(() => r.sidePanelModeResolved !== "none"), f = computed(() => r.sidePanelModeResolved === "minimized"), p = computed(() => !!u.default), m = computed(() => !!u.controls), h = computed(() => !f.value);
159
+ return (t, r) => d.value ? (openBlock(), createElementBlock("header", _hoisted_1$2, [createElementVNode("div", { style: normalizeStyle({
160
160
  display: "flex",
161
- flex: p.value && !m.value ? "1 1 auto" : "0 1 auto",
161
+ flex: f.value && !p.value ? "1 1 auto" : "0 1 auto",
162
162
  minWidth: 0,
163
163
  minHeight: 0,
164
164
  alignItems: "center",
165
- justifyContent: p.value && !m.value ? "center" : "flex-start",
165
+ justifyContent: f.value && !p.value ? "center" : "flex-start",
166
166
  overflow: "hidden"
167
- }) }, [m.value ? renderSlot(n.$slots, "default", { key: 0 }) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [p.value ? (openBlock(), createElementBlock("button", {
167
+ }) }, [p.value ? renderSlot(t.$slots, "default", { key: 0 }) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [f.value ? (openBlock(), createElementBlock("button", {
168
168
  key: 0,
169
169
  type: "button",
170
170
  class: "text-accent-200 bg-accent/50 hover:bg-accent/90 border-accent hover:text-white hover:border-white",
@@ -183,15 +183,15 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
183
183
  lineHeight: "1.2rem",
184
184
  textTransform: "uppercase"
185
185
  },
186
- onClick: s[0] ||= (e) => l("setSidePanelMode", "auto")
187
- }, toDisplayString(e.title), 1)) : e.showTitleLabel ? (openBlock(), createElementBlock("h2", _hoisted_2$1, toDisplayString(e.title) + ": ", 1)) : createCommentVNode("", !0)], 64))], 4), ee.value || h.value ? (openBlock(), createElementBlock("div", _hoisted_3$1, [renderSlot(n.$slots, "controls", {}, () => [h.value ? (openBlock(), createBlock(SidePanelButtonGroup_default, {
186
+ onClick: r[0] ||= (e) => l("setSidePanelMode", "auto")
187
+ }, toDisplayString(e.title), 1)) : e.showTitleLabel ? (openBlock(), createElementBlock("h2", _hoisted_2$1, toDisplayString(e.title) + ": ", 1)) : createCommentVNode("", !0)], 64))], 4), m.value || h.value ? (openBlock(), createElementBlock("div", _hoisted_3$1, [renderSlot(t.$slots, "controls", {}, () => [h.value ? (openBlock(), createBlock(SidePanelButtonGroup_default, {
188
188
  key: 0,
189
189
  "side-panel-mode": e.sidePanelMode,
190
190
  "side-panel-mode-resolved": e.sidePanelModeResolved,
191
191
  "available-states": e.availableStates,
192
192
  "overlay-only": e.overlayOnly,
193
- onSetSidePanelMode: s[1] ||= (e) => l("setSidePanelMode", e),
194
- onCloseSidePanel: s[2] ||= (e) => l("closeSidePanel")
193
+ onSetSidePanelMode: r[1] ||= (e) => l("setSidePanelMode", e),
194
+ onCloseSidePanel: r[2] ||= (e) => l("closeSidePanel")
195
195
  }, null, 8, [
196
196
  "side-panel-mode",
197
197
  "side-panel-mode-resolved",
@@ -248,7 +248,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
248
248
  },
249
249
  emits: ["setSidePanelMode", "closeSidePanel"],
250
250
  setup(e, { emit: t }) {
251
- let r = e, s = t, l = computed(() => r.sidePanelModeResolved !== "none"), u = computed(() => r.sidePanelModeResolved === "minimized"), p = computed(() => {
251
+ let n = e, r = t, a = computed(() => n.sidePanelModeResolved !== "none"), l = computed(() => n.sidePanelModeResolved === "minimized"), d = computed(() => {
252
252
  let e = {
253
253
  width: "100%",
254
254
  height: "100%",
@@ -256,27 +256,27 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
256
256
  overflow: "hidden",
257
257
  placeItems: "stretch"
258
258
  };
259
- return r.sidePanelModeResolved === "full" || r.sidePanelModeResolved === "right" || r.sidePanelModeResolved === "bottom" ? e : {
259
+ return n.sidePanelModeResolved === "full" || n.sidePanelModeResolved === "right" || n.sidePanelModeResolved === "bottom" ? e : {
260
260
  ...e,
261
261
  placeItems: "end center"
262
262
  };
263
- }), m = computed(() => {
264
- if (r.sidePanelModeResolved === "full") return {
263
+ }), f = computed(() => {
264
+ if (n.sidePanelModeResolved === "full") return {
265
265
  width: "100%",
266
266
  height: "100%"
267
267
  };
268
- if (r.sidePanelModeResolved === "right") return {
269
- minWidth: r.minWidth,
270
- maxWidth: r.maxWidth,
268
+ if (n.sidePanelModeResolved === "right") return {
269
+ minWidth: n.minWidth,
270
+ maxWidth: n.maxWidth,
271
271
  width: "100%"
272
272
  };
273
- if (r.sidePanelModeResolved === "bottom") return {
274
- minHeight: r.minHeight,
275
- maxHeight: r.maxHeight,
273
+ if (n.sidePanelModeResolved === "bottom") return {
274
+ minHeight: n.minHeight,
275
+ maxHeight: n.maxHeight,
276
276
  height: "100%",
277
277
  width: "100%"
278
278
  };
279
- }), ee = computed(() => (r.sidePanelModeResolved === "full" && r.overlayOnly, {
279
+ }), m = computed(() => (n.sidePanelModeResolved === "full" && n.overlayOnly, {
280
280
  maxWidth: "100%",
281
281
  maxHeight: "100%",
282
282
  minHeight: 0,
@@ -285,14 +285,14 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
285
285
  })), h = computed(() => ({
286
286
  display: "grid",
287
287
  gridTemplateColumns: "1fr",
288
- gridTemplateRows: u.value ? "1.8rem" : "1.8rem minmax(0, 1fr)"
289
- })), te = computed(() => r.overlayOnly ? "border-neutral-700 bg-black/95" : "");
290
- return (t, n) => l.value ? (openBlock(), createElementBlock("div", _hoisted_1$1, [createElementVNode("div", { style: normalizeStyle(p.value) }, [createElementVNode("section", {
288
+ gridTemplateRows: l.value ? "1.8rem" : "1.8rem minmax(0, 1fr)"
289
+ })), g = computed(() => n.overlayOnly ? "border-neutral-700 bg-black/95" : "");
290
+ return (t, n) => a.value ? (openBlock(), createElementBlock("div", _hoisted_1$1, [createElementVNode("div", { style: normalizeStyle(d.value) }, [createElementVNode("section", {
291
291
  "data-test": "side-panel-frame-shell",
292
- class: normalizeClass(te.value),
292
+ class: normalizeClass(g.value),
293
293
  style: normalizeStyle([
294
- ee.value,
295
294
  m.value,
295
+ f.value,
296
296
  h.value
297
297
  ])
298
298
  }, [createElementVNode("div", _hoisted_2, [createVNode(SidePanelHeader_default, {
@@ -301,15 +301,15 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
301
301
  "side-panel-mode-resolved": e.sidePanelModeResolved,
302
302
  "available-states": e.availableStates,
303
303
  "overlay-only": e.overlayOnly,
304
- onSetSidePanelMode: n[0] ||= (e) => s("setSidePanelMode", e),
305
- onCloseSidePanel: n[1] ||= (e) => s("closeSidePanel")
304
+ onSetSidePanelMode: n[0] ||= (e) => r("setSidePanelMode", e),
305
+ onCloseSidePanel: n[1] ||= (e) => r("closeSidePanel")
306
306
  }, null, 8, [
307
307
  "show-title-label",
308
308
  "side-panel-mode",
309
309
  "side-panel-mode-resolved",
310
310
  "available-states",
311
311
  "overlay-only"
312
- ])]), withDirectives(createElementVNode("div", _hoisted_3, [renderSlot(t.$slots, "default")], 512), [[vShow, !u.value]])], 6)], 4)])) : createCommentVNode("", !0);
312
+ ])]), withDirectives(createElementVNode("div", _hoisted_3, [renderSlot(t.$slots, "default")], 512), [[vShow, !l.value]])], 6)], 4)])) : createCommentVNode("", !0);
313
313
  }
314
314
  }), _hoisted_1 = {
315
315
  id: "header-outer",
@@ -349,36 +349,40 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
349
349
  "sidePanelAvailableStates",
350
350
  "defaultSlotResize"
351
351
  ],
352
- setup(e, { emit: t }) {
353
- let l = e, d = t, h = useSlots(), g = ref(null), _ = ref(null), v = ref(null), y = ref(0), b = ref(0), x = ref(0), S = ref(0), C = ref(0);
354
- function ne() {
355
- let e = v.value;
352
+ setup(e, { emit: n }) {
353
+ let d = e, p = n, g = useSlots(), _ = ref(null), v = ref(null), y = ref(null), b = ref(0), x = ref(0), S = ref(0), C = ref(0), w = ref(0);
354
+ function ee() {
355
+ let e = y.value;
356
356
  if (!e) return;
357
- let t = Array.from(e.children), n = `${C.value}px`;
357
+ let t = Array.from(e.children), n = `${w.value}px`;
358
358
  t.forEach((e) => {
359
359
  e.style.height !== n && (e.style.height = n);
360
360
  });
361
361
  }
362
- let w = ref("none"), T = ref("none"), E = ref([]), D = ref("none"), O = ref(!0), k = ref(!1), re = {
362
+ let T = ref("none"), E = ref("none"), D = ref([]), O = ref("none"), k = ref(!0), A = ref(!1), te = {
363
363
  sm: 640,
364
364
  md: 768,
365
365
  lg: 1024,
366
366
  xl: 1280,
367
367
  "2xl": 1536
368
- }, A = computed(() => !!h.sidePanelContent), j = computed(() => !!h.header), M = computed(() => E.value.filter((e) => e !== "auto")), N = computed(() => Math.max(0, b.value - x.value)), P = computed(() => y.value < G(l.controlsOverlayOnly)), ie = computed(() => y.value === 0 ? !1 : N.value / y.value > 1.1), ae = computed(() => T.value === "right" && D.value === "wide-right" ? l.sidePanelMaxRightWide : l.sidePanelMaxRight), oe = computed(() => ye(l.mainContentAspectRatio, 16 / 9)), se = computed(() => S.value > 0 ? S.value : Math.max(1, y.value)), ce = computed(() => se.value / oe.value + 20), le = computed(() => Math.max(1, y.value) / oe.value), ue = computed(() => K(l.sidePanelMinBottom, y.value, b.value)), de = computed(() => {
369
- let e = le.value + ue.value;
370
- return N.value >= e;
371
- }), fe = computed(() => Math.max(0, N.value - ce.value)), pe = computed(() => {
372
- if (T.value !== "bottom") return l.sidePanelMinBottom;
373
- let e = K(l.sidePanelMinBottom, y.value, b.value), t = Math.min(e, F.value);
368
+ }, j = computed(() => {
369
+ if (!g.sidePanelContent) return !1;
370
+ let e = g.sidePanelContent();
371
+ return e.length > 0 && e.some((e) => !(e.type === Comment || Array.isArray(e.children) && e.children.length === 0 || e.type === Text && !String(e.children).trim()));
372
+ }), M = computed(() => !!g.header), N = computed(() => D.value.filter((e) => e !== "auto")), P = computed(() => Math.max(0, x.value - S.value)), F = computed(() => b.value < K(d.controlsOverlayOnly)), ne = computed(() => b.value === 0 ? !1 : P.value / b.value > 1.1), re = computed(() => E.value === "right" && O.value === "wide-right" ? d.sidePanelMaxRightWide : d.sidePanelMaxRight), ie = computed(() => _e(d.mainContentAspectRatio, 16 / 9)), ae = computed(() => C.value > 0 ? C.value : Math.max(1, b.value)), oe = computed(() => ae.value / ie.value + 20), se = computed(() => Math.max(1, b.value) / ie.value), ce = computed(() => q(d.sidePanelMinBottom, b.value, x.value)), le = computed(() => {
373
+ let e = se.value + ce.value;
374
+ return P.value >= e;
375
+ }), ue = computed(() => Math.max(0, P.value - oe.value)), de = computed(() => {
376
+ if (E.value !== "bottom") return d.sidePanelMinBottom;
377
+ let e = q(d.sidePanelMinBottom, b.value, x.value), t = Math.min(e, I.value);
374
378
  return `${Math.max(0, Math.floor(t))}px`;
375
- }), F = computed(() => {
376
- let e = K(T.value === "bottom" && D.value === "tall-bottom" ? l.sidePanelMaxBottomTall : l.sidePanelMaxBottom, y.value, b.value);
377
- return Math.max(0, Math.min(e, fe.value));
378
- }), I = computed(() => T.value === "bottom" ? `${Math.max(0, Math.floor(F.value))}px` : l.sidePanelMaxBottom), me = computed(() => T.value === "right" || T.value === "bottom" ? {} : T.value === "full" && !P.value ? {
379
+ }), I = computed(() => {
380
+ let e = q(E.value === "bottom" && O.value === "tall-bottom" ? d.sidePanelMaxBottomTall : d.sidePanelMaxBottom, b.value, x.value);
381
+ return Math.max(0, Math.min(e, ue.value));
382
+ }), L = computed(() => E.value === "bottom" ? `${Math.max(0, Math.floor(I.value))}px` : d.sidePanelMaxBottom), fe = computed(() => E.value === "right" || E.value === "bottom" ? {} : E.value === "full" && !F.value ? {
379
383
  opacity: 0,
380
384
  pointerEvents: "none"
381
- } : {}), L = computed(() => !A.value || P.value || T.value === "none" || T.value === "minimized" || T.value === "right" || T.value === "bottom" ? null : {
385
+ } : {}), R = computed(() => !j.value || F.value || E.value === "none" || E.value === "minimized" || E.value === "right" || E.value === "bottom" ? null : {
382
386
  position: "absolute",
383
387
  top: 0,
384
388
  right: 0,
@@ -386,16 +390,16 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
386
390
  left: 0,
387
391
  zIndex: 10,
388
392
  pointerEvents: "none"
389
- }), R = computed(() => !A.value || T.value === "none" || T.value === "full" ? { gridTemplate: "1fr / 1fr" } : T.value === "right" ? {
393
+ }), z = computed(() => !j.value || E.value === "none" || E.value === "full" ? { gridTemplate: "1fr / 1fr" } : E.value === "right" ? {
390
394
  gridTemplateRows: "1fr",
391
- gridTemplateColumns: `minmax(0, 1fr) max(${l.sidePanelMinRight}, ${ae.value})`
392
- } : T.value === "bottom" ? {
393
- gridTemplateRows: `minmax(0, 1fr) ${I.value}`,
395
+ gridTemplateColumns: `minmax(0, 1fr) max(${d.sidePanelMinRight}, ${re.value})`
396
+ } : E.value === "bottom" ? {
397
+ gridTemplateRows: `minmax(0, 1fr) ${L.value}`,
394
398
  gridTemplateColumns: "1fr"
395
- } : T.value === "minimized" ? {
399
+ } : E.value === "minimized" ? {
396
400
  gridTemplateRows: "1fr 34px",
397
401
  gridTemplateColumns: "1fr"
398
- } : { gridTemplate: "1fr / 1fr" }), he = computed(() => {
402
+ } : { gridTemplate: "1fr / 1fr" }), pe = computed(() => {
399
403
  let e = {
400
404
  minWidth: 0,
401
405
  minHeight: 0,
@@ -404,13 +408,13 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
404
408
  placeSelf: "stretch",
405
409
  zIndex: 20
406
410
  };
407
- if (A.value) {
408
- if (T.value === "right") return {
411
+ if (j.value) {
412
+ if (E.value === "right") return {
409
413
  ...e,
410
414
  gridColumn: "2 / 3",
411
415
  gridRow: "1 / 2"
412
416
  };
413
- if (T.value === "full") return {
417
+ if (E.value === "full") return {
414
418
  ...e,
415
419
  gridColumn: "1 / 2",
416
420
  gridRow: "1 / 2"
@@ -421,7 +425,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
421
425
  gridColumn: "1 / 2",
422
426
  gridRow: "2 / 3"
423
427
  };
424
- }), ge = computed(() => {
428
+ }), me = computed(() => {
425
429
  let e = {
426
430
  position: "fixed",
427
431
  top: 0,
@@ -430,7 +434,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
430
434
  left: 0,
431
435
  overflow: "hidden"
432
436
  };
433
- return j.value ? {
437
+ return M.value ? {
434
438
  ...e,
435
439
  display: "grid",
436
440
  gridTemplateRows: "auto 1fr"
@@ -438,11 +442,11 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
438
442
  ...e,
439
443
  display: "block"
440
444
  };
441
- }), _e = computed(() => j.value ? {
445
+ }), he = computed(() => M.value ? {
442
446
  position: "relative",
443
447
  zIndex: 0,
444
448
  display: "grid",
445
- ...R.value,
449
+ ...z.value,
446
450
  gridRow: "2 / 3",
447
451
  minWidth: 0,
448
452
  minHeight: 0,
@@ -451,7 +455,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
451
455
  position: "absolute",
452
456
  zIndex: 0,
453
457
  display: "grid",
454
- ...R.value,
458
+ ...z.value,
455
459
  minWidth: 0,
456
460
  minHeight: 0,
457
461
  overflow: "hidden",
@@ -459,9 +463,9 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
459
463
  right: "0",
460
464
  bottom: "0",
461
465
  left: "0"
462
- }), ve = computed(() => !P.value || O.value), z = null, B, V, H = null, U = "", W = !1;
463
- function G(e) {
464
- let t = re[e];
466
+ }), ge = computed(() => !F.value || k.value), B = null, V, H, U = null, W = "", G = !1;
467
+ function K(e) {
468
+ let t = te[e];
465
469
  if (t !== void 0) return t;
466
470
  if (e.endsWith("px")) {
467
471
  let t = Number.parseFloat(e);
@@ -470,7 +474,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
470
474
  let n = Number.parseFloat(e);
471
475
  return Number.isFinite(n) ? n : 0;
472
476
  }
473
- function ye(e, t) {
477
+ function _e(e, t) {
474
478
  if (typeof e == "number") return Number.isFinite(e) && e > 0 ? e : t;
475
479
  let n = String(e).trim();
476
480
  if (n.includes("/")) {
@@ -480,7 +484,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
480
484
  let r = Number.parseFloat(n);
481
485
  return Number.isFinite(r) && r > 0 ? r : t;
482
486
  }
483
- function K(e, t, n) {
487
+ function q(e, t, n) {
484
488
  let r = e.trim();
485
489
  if (r.endsWith("px")) {
486
490
  let e = Number.parseFloat(r);
@@ -497,9 +501,9 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
497
501
  let i = Number.parseFloat(r);
498
502
  return Number.isFinite(i) ? i : 0;
499
503
  }
500
- function be() {
501
- let e = Math.max(1, y.value), t = Math.max(1, N.value), n = e / t, r = e / t, i = G(l.sidePanelBreakpoint), a = de.value;
502
- return n < l.autoBottomAspectRatioBreakpoint && a ? (D.value = "tall-bottom", {
504
+ function ve() {
505
+ let e = Math.max(1, b.value), t = Math.max(1, P.value), n = e / t, r = e / t, i = K(d.sidePanelBreakpoint), a = le.value;
506
+ return n < d.autoBottomAspectRatioBreakpoint && a ? (O.value = "tall-bottom", {
503
507
  states: [
504
508
  "auto",
505
509
  "full",
@@ -507,7 +511,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
507
511
  "minimized"
508
512
  ],
509
513
  resolved: "bottom"
510
- }) : r > l.autoRightAspectRatioBreakpoint ? (D.value = "wide-right", {
514
+ }) : r > d.autoRightAspectRatioBreakpoint ? (O.value = "wide-right", {
511
515
  states: [
512
516
  "auto",
513
517
  "full",
@@ -515,7 +519,7 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
515
519
  "minimized"
516
520
  ],
517
521
  resolved: "right"
518
- }) : (D.value = "mixed", e >= i ? {
522
+ }) : (O.value = "mixed", e >= i ? {
519
523
  states: a ? [
520
524
  "auto",
521
525
  "full",
@@ -538,74 +542,74 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
538
542
  resolved: "full"
539
543
  });
540
544
  }
541
- function xe(e, t, n) {
542
- e === t || t === "none" || !A.value || d("sidePanelTransition", {
545
+ function ye(e, t, n) {
546
+ e === t || t === "none" || !j.value || p("sidePanelTransition", {
543
547
  from: e,
544
548
  to: t,
545
549
  reason: n
546
550
  });
547
551
  }
548
- function q(e = !1) {
552
+ function J(e = !1) {
549
553
  let t = {
550
- availableStates: A.value ? [...M.value] : [],
551
- sidePanelMode: A.value ? w.value : "none",
552
- sidePanelModeResolved: A.value ? T.value : "none",
553
- overlayOnly: P.value
554
+ availableStates: j.value ? [...N.value] : [],
555
+ sidePanelMode: j.value ? T.value : "none",
556
+ sidePanelModeResolved: j.value ? E.value : "none",
557
+ overlayOnly: F.value
554
558
  };
555
- if (!A.value) {
556
- if (W) return;
557
- W = !0, d("sidePanelAvailableStates", t);
559
+ if (!j.value) {
560
+ if (G) return;
561
+ G = !0, p("sidePanelAvailableStates", t);
558
562
  return;
559
563
  }
560
- W = !1;
564
+ G = !1;
561
565
  let n = JSON.stringify(t);
562
- !e && n === U || (U = n, d("sidePanelAvailableStates", t));
566
+ !e && n === W || (W = n, p("sidePanelAvailableStates", t));
563
567
  }
564
- function J(e) {
565
- let t = T.value;
566
- if (!A.value) {
567
- w.value = "none", T.value = "none", E.value = [], q();
568
+ function be(e) {
569
+ let t = E.value;
570
+ if (!j.value) {
571
+ T.value = "none", E.value = "none", D.value = [], J();
568
572
  return;
569
573
  }
570
- let n = be();
571
- E.value = n.states;
572
- let r = w.value === "none" ? "auto" : w.value;
573
- r !== "auto" && !E.value.includes(r) ? (w.value = "auto", d("update:sidePanelPosition", "auto")) : w.value = r, T.value = w.value === "auto" ? n.resolved : w.value, xe(t, T.value, e), q(k.value === !1);
574
+ let n = ve();
575
+ D.value = n.states;
576
+ let r = T.value === "none" ? "auto" : T.value;
577
+ r !== "auto" && !D.value.includes(r) ? (T.value = "auto", p("update:sidePanelPosition", "auto")) : T.value = r, E.value = T.value === "auto" ? n.resolved : T.value, ye(t, E.value, e), J(A.value === !1);
574
578
  }
575
579
  function Y(e, t = !1) {
576
- if (B &&= (clearTimeout(B), void 0), t || !k.value) {
577
- J(e);
580
+ if (V &&= (clearTimeout(V), void 0), t || !A.value) {
581
+ be(e);
578
582
  return;
579
583
  }
580
- B = setTimeout(() => {
581
- J(e);
582
- }, l.layoutDebounceMs);
584
+ V = setTimeout(() => {
585
+ be(e);
586
+ }, d.layoutDebounceMs);
583
587
  }
584
- function Se(e) {
585
- if (!A.value) return;
586
- let t = E.value.includes(e) ? e : "auto";
587
- t !== w.value && (w.value = t, d("update:sidePanelPosition", t)), Y("set-side-panel-mode", !0);
588
+ function xe(e) {
589
+ if (!j.value) return;
590
+ let t = D.value.includes(e) ? e : "auto";
591
+ t !== T.value && (T.value = t, p("update:sidePanelPosition", t)), Y("set-side-panel-mode", !0);
588
592
  }
589
- function Ce() {
590
- !A.value || !P.value || Se("minimized");
593
+ function Se() {
594
+ !j.value || !F.value || xe("minimized");
591
595
  }
592
596
  function X() {
593
- V &&= (clearTimeout(V), void 0);
597
+ H &&= (clearTimeout(H), void 0);
594
598
  }
595
599
  function Z() {
596
- if (X(), !P.value || ie.value || T.value === "none") {
597
- O.value = !0;
600
+ if (X(), !F.value || ne.value || E.value === "none") {
601
+ k.value = !0;
598
602
  return;
599
603
  }
600
- V = setTimeout(() => {
601
- O.value = !1;
602
- }, l.autoHideTimeout);
604
+ H = setTimeout(() => {
605
+ k.value = !1;
606
+ }, d.autoHideTimeout);
603
607
  }
604
608
  function Q() {
605
- O.value = !0, Z();
609
+ k.value = !0, Z();
606
610
  }
607
- function we() {
608
- if (!g.value) return;
611
+ function Ce() {
612
+ if (!_.value) return;
609
613
  let e = [
610
614
  "mousemove",
611
615
  "click",
@@ -615,67 +619,67 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
615
619
  ], t = () => {
616
620
  Q();
617
621
  };
618
- for (let n of e) g.value.addEventListener(n, t, { passive: !0 });
619
- H = () => {
620
- if (g.value) for (let n of e) g.value.removeEventListener(n, t);
622
+ for (let n of e) _.value.addEventListener(n, t, { passive: !0 });
623
+ U = () => {
624
+ if (_.value) for (let n of e) _.value.removeEventListener(n, t);
621
625
  };
622
626
  }
623
627
  function $() {
624
- y.value = window.innerWidth, b.value = window.innerHeight, Y("viewport-resize");
628
+ b.value = window.innerWidth, x.value = window.innerHeight, Y("viewport-resize");
625
629
  }
626
- return watch(() => l.sidePanelPosition, (e) => {
627
- if (!A.value) {
628
- w.value = "none";
630
+ return watch(() => d.sidePanelPosition, (e) => {
631
+ if (!j.value) {
632
+ T.value = "none";
629
633
  return;
630
634
  }
631
- w.value = e, Y("prop-sync");
632
- }, { immediate: !0 }), watch(A, (e) => {
635
+ T.value = e, Y("prop-sync");
636
+ }, { immediate: !0 }), watch(j, (e) => {
633
637
  if (!e) {
634
- w.value = "none", T.value = "none", E.value = [], q();
638
+ T.value = "none", E.value = "none", D.value = [], J();
635
639
  return;
636
640
  }
637
- w.value = l.sidePanelPosition, Y("slot-state-change", !0);
641
+ T.value = d.sidePanelPosition, Y("slot-state-change", !0);
638
642
  }, { immediate: !0 }), watch(() => [
639
- P.value,
640
- l.autoHideTimeout,
641
- T.value
643
+ F.value,
644
+ d.autoHideTimeout,
645
+ E.value
642
646
  ], () => {
643
- if (T.value === "full") {
647
+ if (E.value === "full") {
644
648
  Z();
645
649
  return;
646
650
  }
647
651
  Q();
648
- }), watch(ie, (e, t) => {
652
+ }), watch(ne, (e, t) => {
649
653
  if (e) {
650
- O.value = !0, X();
654
+ k.value = !0, X();
651
655
  return;
652
656
  }
653
657
  t && Q();
654
658
  }), watch(() => [
655
- S.value,
656
659
  C.value,
657
- T.value,
658
- A.value
660
+ w.value,
661
+ E.value,
662
+ j.value
659
663
  ], () => {
660
- !A.value || T.value === "none" || d("defaultSlotResize", {
661
- width: S.value,
662
- height: C.value
664
+ !j.value || E.value === "none" || p("defaultSlotResize", {
665
+ width: C.value,
666
+ height: w.value
663
667
  });
664
668
  }), onMounted(async () => {
665
- k.value = !0, $(), window.addEventListener("resize", $), we(), Q(), await nextTick(), z = new ResizeObserver(() => {
666
- x.value = _.value?.offsetHeight ?? 0, S.value = v.value?.offsetWidth ?? 0, C.value = v.value?.offsetHeight ?? 0, ne(), Y("slot-measure");
667
- }), _.value && z.observe(_.value), v.value && (z.observe(v.value), S.value = v.value.offsetWidth, C.value = v.value.offsetHeight), x.value = _.value?.offsetHeight ?? 0, Y("mounted", !0);
669
+ A.value = !0, $(), window.addEventListener("resize", $), Ce(), Q(), await nextTick(), B = new ResizeObserver(() => {
670
+ S.value = v.value?.offsetHeight ?? 0, C.value = y.value?.offsetWidth ?? 0, w.value = y.value?.offsetHeight ?? 0, ee(), Y("slot-measure");
671
+ }), v.value && B.observe(v.value), y.value && (B.observe(y.value), C.value = y.value.offsetWidth, w.value = y.value.offsetHeight), S.value = v.value?.offsetHeight ?? 0, Y("mounted", !0);
668
672
  }), onBeforeUnmount(() => {
669
- window.removeEventListener("resize", $), H?.(), H = null, z?.disconnect(), z = null, X(), B &&= (clearTimeout(B), void 0);
673
+ window.removeEventListener("resize", $), U?.(), U = null, B?.disconnect(), B = null, X(), V &&= (clearTimeout(V), void 0);
670
674
  }), (t, n) => (openBlock(), createElementBlock("section", {
671
675
  ref_key: "rootRef",
672
- ref: g,
676
+ ref: _,
673
677
  class: "bg-black text-neutral-100",
674
- style: normalizeStyle({ ...ge.value })
675
- }, [j.value ? withDirectives((openBlock(), createElementBlock("header", {
678
+ style: normalizeStyle({ ...me.value })
679
+ }, [M.value ? withDirectives((openBlock(), createElementBlock("header", {
676
680
  key: 0,
677
681
  ref_key: "headerRef",
678
- ref: _,
682
+ ref: v,
679
683
  class: "",
680
684
  style: {
681
685
  position: "relative",
@@ -684,15 +688,15 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
684
688
  zIndex: 40
685
689
  }
686
690
  }, [(openBlock(), createBlock(resolveDynamicComponent("style"), null, {
687
- default: withCtx(() => [createTextVNode(" #header-outer { display: none; } @media (min-width: " + toDisplayString(l.headerHideWidthThreshold) + ") and (min-height: " + toDisplayString(l.headerHideHeightThreshold) + ") { #header-outer { display: block; } } ", 1)]),
691
+ default: withCtx(() => [createTextVNode(" #header-outer { display: none; } @media (min-width: " + toDisplayString(d.headerHideWidthThreshold) + ") and (min-height: " + toDisplayString(d.headerHideHeightThreshold) + ") { #header-outer { display: block; } } ", 1)]),
688
692
  _: 1
689
- })), createElementVNode("div", _hoisted_1, [renderSlot(t.$slots, "header")])], 512)), [[vShow, ve.value]]) : createCommentVNode("", !0), createElementVNode("article", {
693
+ })), createElementVNode("div", _hoisted_1, [renderSlot(t.$slots, "header")])], 512)), [[vShow, ge.value]]) : createCommentVNode("", !0), createElementVNode("article", {
690
694
  class: "",
691
- style: normalizeStyle({ ..._e.value })
695
+ style: normalizeStyle({ ...he.value })
692
696
  }, [
693
697
  createElementVNode("main", {
694
698
  ref_key: "defaultRef",
695
- ref: v,
699
+ ref: y,
696
700
  class: "slot-content-container",
697
701
  style: normalizeStyle({
698
702
  position: "relative",
@@ -706,33 +710,33 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
706
710
  gridColumn: "1 / 2",
707
711
  gridRow: "1 / 2",
708
712
  zIndex: 0,
709
- ...me.value
713
+ ...fe.value
710
714
  })
711
715
  }, [renderSlot(t.$slots, "default")], 4),
712
- L.value ? (openBlock(), createElementBlock("div", {
716
+ R.value ? (openBlock(), createElementBlock("div", {
713
717
  key: 0,
714
718
  class: "bg-black",
715
719
  style: normalizeStyle({
716
- ...L.value,
720
+ ...R.value,
717
721
  gridColumn: "1 / 2",
718
722
  gridRow: "1 / 2"
719
723
  })
720
724
  }, null, 4)) : createCommentVNode("", !0),
721
- t.$slots.sidePanelContent && T.value !== "none" ? (openBlock(), createElementBlock("div", {
725
+ j.value && E.value !== "none" ? (openBlock(), createElementBlock("div", {
722
726
  key: 1,
723
727
  class: "",
724
- style: normalizeStyle(he.value)
728
+ style: normalizeStyle(pe.value)
725
729
  }, [createVNode(SidePanelFrame_default, {
726
- "side-panel-mode": w.value,
727
- "side-panel-mode-resolved": T.value,
728
- "available-states": M.value,
729
- "overlay-only": P.value,
730
+ "side-panel-mode": T.value,
731
+ "side-panel-mode-resolved": E.value,
732
+ "available-states": N.value,
733
+ "overlay-only": F.value,
730
734
  "min-width": e.sidePanelMinRight,
731
- "max-width": ae.value,
732
- "min-height": pe.value,
733
- "max-height": I.value,
734
- onSetSidePanelMode: Se,
735
- onCloseSidePanel: Ce
735
+ "max-width": re.value,
736
+ "min-height": de.value,
737
+ "max-height": L.value,
738
+ onSetSidePanelMode: xe,
739
+ onCloseSidePanel: Se
736
740
  }, {
737
741
  default: withCtx(() => [renderSlot(t.$slots, "sidePanelContent")]),
738
742
  _: 3
@@ -748,16 +752,46 @@ var _hoisted_1$4 = ["disabled"], SidePanelControlButton_default = /* @__PURE__ *
748
752
  ])], 4)) : createCommentVNode("", !0)
749
753
  ], 4)], 4));
750
754
  }
751
- }), [["__scopeId", "data-v-1dc710d8"]]), LoggedInOut_default = /* @__PURE__ */ defineComponent({
755
+ }), [["__scopeId", "data-v-d0d55234"]]), LoggedInOut_default = /* @__PURE__ */ defineComponent({
752
756
  __name: "LoggedInOut",
757
+ props: {
758
+ initiallyLoggedIn: { type: Boolean },
759
+ addWindowAccess: {
760
+ type: Boolean,
761
+ default: !1
762
+ },
763
+ windowAccessObjectName: { default: "loggedInOut" }
764
+ },
753
765
  setup(t, { expose: n }) {
754
- let { loggedIn: r, setToLoggedIn: i, setToLoggedOut: a, toggleLoggedIn: o } = useSimpleLoggedIn();
755
- return n({
756
- loggedIn: r,
757
- setToLoggedIn: i,
758
- setToLoggedOut: a,
759
- toggleLoggedIn: o
760
- }), (e, t) => unref(r) ? renderSlot(e.$slots, "loggedIn", { key: 0 }) : renderSlot(e.$slots, "loggedOut", { key: 1 });
766
+ let r = t, { loggedIn: i, setToLoggedIn: a, setToLoggedOut: o, toggleLoggedIn: s } = useSimpleLoggedIn(r.initiallyLoggedIn), c = () => i.value, l = (e) => {
767
+ i.value = e;
768
+ }, u = () => {
769
+ r.addWindowAccess && typeof window < "u" && (window[r.windowAccessObjectName] = {
770
+ setToLoggedIn: a,
771
+ setToLoggedOut: o,
772
+ toggleLoggedIn: s,
773
+ getLoggedIn: c,
774
+ setLoggedIn: l
775
+ });
776
+ }, d = (e = r.windowAccessObjectName) => {
777
+ typeof window < "u" && window[e] && delete window[e];
778
+ };
779
+ return onMounted(() => {
780
+ u();
781
+ }), onUnmounted(() => {
782
+ d();
783
+ }), watch(() => r.addWindowAccess, (e) => {
784
+ e ? u() : d();
785
+ }), watch(() => r.windowAccessObjectName, (e, t) => {
786
+ r.addWindowAccess && (d(t), u());
787
+ }), n({
788
+ loggedIn: i,
789
+ setToLoggedIn: a,
790
+ setToLoggedOut: o,
791
+ toggleLoggedIn: s,
792
+ getLoggedIn: c,
793
+ setLoggedIn: l
794
+ }), (e, t) => unref(i) ? renderSlot(e.$slots, "loggedIn", { key: 0 }) : renderSlot(e.$slots, "loggedOut", { key: 1 });
761
795
  }
762
796
  });
763
797
  export { SidePanelButtonGroup_default as a, SidePanelHeader_default as i, LiveFrame_default as n, SidePanelControlButton_default as o, SidePanelFrame_default as r, LoggedInOut_default as t };