@expofp/floorplan 3.45.13 → 3.45.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/browser/{Button-RHSLdZ8P.js → Button-DJxJh5jY.js} +5 -5
  2. package/dist/browser/{CookieConsent-tlDN9k4r.js → CookieConsent-BsKTCWg-.js} +7 -7
  3. package/dist/browser/{Debug-8l7GSED6.js → Debug-BjgF_Kna.js} +7 -7
  4. package/dist/browser/{DebugTools-ipof0w8h.js → DebugTools-CwpPMOcc.js} +6 -6
  5. package/dist/browser/{Demo-CwZivFF-.js → Demo-CaqwJvIf.js} +9 -9
  6. package/dist/browser/{Free-D4gNZ4RA.js → Free-DbR2BtL0.js} +10 -10
  7. package/dist/browser/{GalleryContainer-B8L8n_4E.js → GalleryContainer-D1w5d5e5.js} +11 -11
  8. package/dist/browser/{GpsLoader-u9Gln6H7.js → GpsLoader-BN3fD-xT.js} +13 -13
  9. package/dist/browser/{KioskStore-BWf8YM7M.js → KioskStore-D5wg-oqG.js} +9 -9
  10. package/dist/browser/{LayerStore-CrWyrBRa.js → LayerStore-D4A4Uz8J.js} +367 -397
  11. package/dist/browser/{MaplibreAdapter-Cd-gdHxM.js → MaplibreAdapter-qMMg1G4M.js} +17 -17
  12. package/dist/browser/{ModalContainer-DVKprzvo.js → ModalContainer-B5rAhuJK.js} +10 -10
  13. package/dist/browser/{PermissionNotice-BMQHGUs9.js → PermissionNotice-6SQ1nWgS.js} +6 -6
  14. package/dist/browser/{RouteStore-BiUI1Uef.js → RouteStore-Dl9ofk88.js} +9 -9
  15. package/dist/browser/{SetKioskMode-Bt9Ap5HU.js → SetKioskMode-MXSLkf8N.js} +11 -11
  16. package/dist/browser/{ShowKiosk-rsxj5Ort.js → ShowKiosk-Bj95Uldf.js} +10 -10
  17. package/dist/browser/{UIState-DgWaz-eQ.js → UIState-BqS8ZHsB.js} +12 -12
  18. package/dist/browser/{ViewerMenuPanel-6oBbHGtm.js → ViewerMenuPanel-BaWHqzps.js} +10 -10
  19. package/dist/browser/{add-debug-secret-listener-CrdHdOJy.js → add-debug-secret-listener-YEUxcr1j.js} +1 -1
  20. package/dist/browser/{adopt-global-settings-zscIy9Gm.js → adopt-global-settings-w9pmM1xk.js} +9 -9
  21. package/dist/browser/{boolean-editor-CKqy8Ity.js → boolean-editor-zW3D6jsO.js} +9 -9
  22. package/dist/browser/{bootIntercom-B98qYnKB.js → bootIntercom-BI17ZsUs.js} +2 -2
  23. package/dist/browser/bundle.json +85 -85
  24. package/dist/browser/{camera-events-CT_HBink.js → camera-events-83HzWM2T.js} +1 -1
  25. package/dist/browser/{classnames-jjUCCpoy.js → classnames-Dt2nn3fF.js} +2 -2
  26. package/dist/browser/{client-CWN8yeUz.js → client-YOSuhfQr.js} +5 -5
  27. package/dist/browser/{components-BYuTjlcn.js → components-Dsf555FA.js} +49 -49
  28. package/dist/browser/{create-live-plan-DplxEMws.js → create-live-plan-u9HVry9U.js} +13 -13
  29. package/dist/browser/{debug-context-DswaH7mN.js → debug-context-F3sYh6QH.js} +5 -5
  30. package/dist/browser/{debug-overlay-khJHt49U.js → debug-overlay-BEFHLD6d.js} +10 -10
  31. package/dist/browser/{debug-ui-BEApU0Hr.js → debug-ui-BPXXOjRK.js} +6 -6
  32. package/dist/browser/{dist-CgdNmEoc.js → dist-COC0DmKA.js} +3 -3
  33. package/dist/browser/{dist-q2Ip5e-y.js → dist-bvz2TJJx.js} +6 -6
  34. package/dist/browser/{dist-BsTWH7q7.js → dist-o_Z50i4D.js} +5 -5
  35. package/dist/browser/{efp-debug-init-DBQbSv4u.js → efp-debug-init-DUUK8suG.js} +3 -3
  36. package/dist/browser/{enum-editor-CxeGNBqb.js → enum-editor--pS2vSrm.js} +4 -4
  37. package/dist/browser/{es5-C4CifKWw.js → es5-CmEnCAuk.js} +2 -2
  38. package/dist/browser/{event-head-D1EKVWKM.js → event-head-Bi5K5dSK.js} +1 -1
  39. package/dist/browser/{event-not-found-DcLfsbev.js → event-not-found-TwBlrO5t.js} +3 -3
  40. package/dist/browser/{event-scoped-cache-BbzF7HuS.js → event-scoped-cache-CppoYzHF.js} +2 -2
  41. package/dist/browser/{expofpUrl-BkFfQVWT.js → expofpUrl-UU4eQkAn.js} +1 -1
  42. package/dist/browser/{exports-CJmfzEbr.js → exports-CXX0Sbya.js} +1 -1
  43. package/dist/browser/{favicon-C17ZDAmX.js → favicon-Chj3-q3H.js} +1 -1
  44. package/dist/browser/{fetch-retry.umd-KfV_kX2J.js → fetch-retry.umd-Dz9dLChu.js} +2 -2
  45. package/dist/browser/{flex-BlLYvxBy.js → flex-Bw0aFtd2.js} +5 -5
  46. package/dist/browser/{floorplan.loader-BZfuR9KC.js → floorplan.loader-B8UEyzDO.js} +12 -12
  47. package/dist/browser/{floorplan.ready-CuozrQJq.js → floorplan.ready-_93PCRnR.js} +23 -23
  48. package/dist/browser/{framing-rect-_cN7Jp0z.js → framing-rect-BUrhUuXf.js} +12 -12
  49. package/dist/browser/{freeBanner-DC2vjpf5.js → freeBanner-BfoZkGpM.js} +2 -2
  50. package/dist/browser/{fuse-BYQPvbIk.js → fuse-DJyh1TuN.js} +2 -2
  51. package/dist/browser/{i18n-BDc7lWFh.js → i18n-y-94jGwp.js} +6 -6
  52. package/dist/browser/index.js +17 -17
  53. package/dist/browser/{index.module-DUgyUoBP.js → index.module-CvMpbW-i.js} +4 -4
  54. package/dist/browser/{init-ui-xCaP1iGt.js → init-ui-CIds4CAy.js} +9 -9
  55. package/dist/browser/{integrateKiosk-pm7XEmxW.js → integrateKiosk-DdB-p0F1.js} +5 -5
  56. package/dist/browser/{is-debug-Bk6Ww-mR.js → is-debug-IVgDoIV0.js} +4 -4
  57. package/dist/browser/{is-own-domain-DtyPiuBK.js → is-own-domain-Bapkhkco.js} +1 -1
  58. package/dist/browser/{is-webview-DpsVH2Y1.js → is-webview-SZt_n0MB.js} +1 -1
  59. package/dist/browser/{jsx-runtime-ClNfOC6f.js → jsx-runtime-C_sNMI5W.js} +2 -2
  60. package/dist/browser/{kiosk-mode-CHV9ESCa.js → kiosk-mode-Cotv0k2w.js} +3 -3
  61. package/dist/browser/{kiosk-record-WGoZsWrI.js → kiosk-record-cMgADOTG.js} +1 -1
  62. package/dist/browser/{kioskApi-CbDD11ug.js → kioskApi--Rx4n321.js} +7 -7
  63. package/dist/browser/{lib-CyCGPKo7.js → lib-BXaOkSOo.js} +3 -3
  64. package/dist/browser/{loadImage-w_zuSX7Q.js → loadImage-BdRifQQM.js} +1 -1
  65. package/dist/browser/{logDeviceInfo-DladzOhP.js → logDeviceInfo-Dv6Uw_9O.js} +9 -9
  66. package/dist/browser/{mobx-DRjOCpOl.js → mobx-CGp0k-An.js} +4 -4
  67. package/dist/browser/{mobx.module-Cv_4Fqn4.js → mobx.module-BREzXEXH.js} +1 -1
  68. package/dist/browser/{optional-boolean-editor-CX8YBA0h.js → optional-boolean-editor-CQuFfDA2.js} +3 -3
  69. package/dist/browser/{optional-enum-editor-BxGv8bpn.js → optional-enum-editor-CDwOHTD0.js} +4 -4
  70. package/dist/browser/{optional-string-editor-DqMnNBXu.js → optional-string-editor-McI6BDHk.js} +4 -4
  71. package/dist/browser/{particles.min-ejj5e5kU.js → particles.min-CKUEAg7I.js} +2 -2
  72. package/dist/browser/{react-dom-Dd8g1448.js → react-dom-PhzhEh9G.js} +3 -3
  73. package/dist/browser/{react-Dw5YXa-Y.js → react-yAWrnIsO.js} +2 -2
  74. package/dist/browser/{rolldown-runtime-BDjyEY82.js → rolldown-runtime-WQ1PGysg.js} +1 -1
  75. package/dist/browser/{scene-BuSOJ1kI.js → scene-DXBJE279.js} +3 -3
  76. package/dist/browser/{scheduler-2PunDhbX.js → scheduler-Dr889D0o.js} +2 -2
  77. package/dist/browser/{select-BZ4woGJi.js → select-DDjJyjSa.js} +10 -10
  78. package/dist/browser/{settings-BQ58wk59.js → settings-DnzFKuhq.js} +2 -2
  79. package/dist/browser/{settings-item-DkAN7SK-.js → settings-item-DOhZtWZn.js} +6 -6
  80. package/dist/browser/{store-Djiw0f15.js → store-C_8jynbr.js} +2 -2
  81. package/dist/browser/{string-editor-BxjGvgq8.js → string-editor-lJK1y_Zg.js} +4 -4
  82. package/dist/browser/{text-field-1Qf6vcza.js → text-field-CSGP1hqF.js} +5 -5
  83. package/dist/browser/{theme-BY0D9YiW.js → theme-CyaxmL-H.js} +8 -8
  84. package/dist/browser/{ui-DFokN_S5.js → ui-BFl0hzQX.js} +8 -8
  85. package/dist/browser/{useRenderTarget-Bh-xmMgH.js → useRenderTarget-gNwm7SN5.js} +4 -4
  86. package/dist/browser/{viewport-BUn4KlO1.js → viewport-DQnfHiey.js} +3 -3
  87. package/dist/browser/{wayfinding-BHyh7Wne.js → wayfinding-BoPqafnU.js} +5 -5
  88. package/dist/esm/utils/loadLayerImages.d.ts +7 -4
  89. package/dist/esm/utils/loadLayerImages.js +1 -1
  90. package/package.json +10 -10
@@ -1,15 +1,15 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "7cff17ce-12f6-438a-9ef4-00cf6a0b1475", e._sentryDebugIdIdentifier = "sentry-dbid-7cff17ce-12f6-438a-9ef4-00cf6a0b1475");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BDjyEY82.js";
10
- import { t } from "./react-Dw5YXa-Y.js";
11
- import { D as n, i as r, l as i, n as a, s as o, u as s, y as c } from "./flex-BlLYvxBy.js";
12
- import { t as l } from "./classnames-jjUCCpoy.js";
9
+ import { r as e } from "./rolldown-runtime-WQ1PGysg.js";
10
+ import { t } from "./react-yAWrnIsO.js";
11
+ import { D as n, i as r, l as i, n as a, s as o, u as s, y as c } from "./flex-Bw0aFtd2.js";
12
+ import { t as l } from "./classnames-Dt2nn3fF.js";
13
13
  //#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._5ea800d4e947acedb1fa1275f1697b17/node_modules/@radix-ui/themes/dist/esm/components/text-field.props.js
14
14
  var u = /* @__PURE__ */ e(t()), d = /* @__PURE__ */ e(l()), f = {
15
15
  size: {
@@ -1,18 +1,18 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "507523b1-aa12-4507-b680-c254edab8300", e._sentryDebugIdIdentifier = "sentry-dbid-507523b1-aa12-4507-b680-c254edab8300");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BDjyEY82.js";
10
- import { t } from "./react-Dw5YXa-Y.js";
11
- import { t as n } from "./jsx-runtime-ClNfOC6f.js";
12
- import { t as r } from "./react-dom-Dd8g1448.js";
13
- import { C as i, E as a, O as o, T as s, _ as c, o as l, v as u, w as d } from "./flex-BlLYvxBy.js";
14
- import { c as f, i as p, n as m, o as h, r as g, s as _, t as v } from "./dist-q2Ip5e-y.js";
15
- import { t as y } from "./classnames-jjUCCpoy.js";
9
+ import { r as e } from "./rolldown-runtime-WQ1PGysg.js";
10
+ import { t } from "./react-yAWrnIsO.js";
11
+ import { t as n } from "./jsx-runtime-C_sNMI5W.js";
12
+ import { t as r } from "./react-dom-PhzhEh9G.js";
13
+ import { C as i, E as a, O as o, T as s, _ as c, o as l, v as u, w as d } from "./flex-Bw0aFtd2.js";
14
+ import { c as f, i as p, n as m, o as h, r as g, s as _, t as v } from "./dist-bvz2TJJx.js";
15
+ import { t as y } from "./classnames-Dt2nn3fF.js";
16
16
  //#region ../../node_modules/.pnpm/@radix-ui+react-visually-hidden@1.2.3_@types+react-dom@19.2.3_@types+react@19.2.17__@ty_cffccd7838985066e8e1d993b5cb6017/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs
17
17
  var b = /* @__PURE__ */ e(r(), 1), x = /* @__PURE__ */ e(t(), 1), S = n(), C = Object.freeze({
18
18
  position: "absolute",
@@ -1,17 +1,17 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "81863b16-dfcf-4b3e-9293-bdc5f05a30a1", e._sentryDebugIdIdentifier = "sentry-dbid-81863b16-dfcf-4b3e-9293-bdc5f05a30a1");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BDjyEY82.js";
10
- import { a as t, i as n, s as r } from "./efp-debug-init-DBQbSv4u.js";
11
- import { a as i, i as a } from "./adopt-global-settings-zscIy9Gm.js";
12
- import { t as o } from "./jsx-runtime-ClNfOC6f.js";
13
- import "./settings-BQ58wk59.js";
14
- import { t as s } from "./add-debug-secret-listener-CrdHdOJy.js";
9
+ import { r as e } from "./rolldown-runtime-WQ1PGysg.js";
10
+ import { a as t, i as n, s as r } from "./efp-debug-init-DUUK8suG.js";
11
+ import { a as i, i as a } from "./adopt-global-settings-w9pmM1xk.js";
12
+ import { t as o } from "./jsx-runtime-C_sNMI5W.js";
13
+ import "./settings-DnzFKuhq.js";
14
+ import { t as s } from "./add-debug-secret-listener-YEUxcr1j.js";
15
15
  //#region ../debug/src/lib/ui/render-debug-ui.tsx
16
16
  var c = /* @__PURE__ */ e(r(), 1), l = o(), u = !1;
17
17
  function d() {
@@ -29,7 +29,7 @@ function d() {
29
29
  }
30
30
  });
31
31
  let o = async (t) => {
32
- let { DebugUi: n } = await import("./debug-ui-BEApU0Hr.js"), { createRoot: i } = await import("./client-CWN8yeUz.js").then((t) => /* @__PURE__ */ e(t.t(), 1)), a = document.createElement("div");
32
+ let { DebugUi: n } = await import("./debug-ui-BPXXOjRK.js"), { createRoot: i } = await import("./client-YOSuhfQr.js").then((t) => /* @__PURE__ */ e(t.t(), 1)), a = document.createElement("div");
33
33
  document.body.appendChild(a), i(a).render(/* @__PURE__ */ (0, l.jsx)(n, {
34
34
  useDebugButtonState: r.useState,
35
35
  open: t
@@ -1,14 +1,14 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "1e89fc3a-fa3d-42bb-94d8-f0f786d433ec", e._sentryDebugIdIdentifier = "sentry-dbid-1e89fc3a-fa3d-42bb-94d8-f0f786d433ec");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BDjyEY82.js";
10
- import { t } from "./react-Dw5YXa-Y.js";
11
- import { u as n } from "./store-Djiw0f15.js";
9
+ import { r as e } from "./rolldown-runtime-WQ1PGysg.js";
10
+ import { t } from "./react-yAWrnIsO.js";
11
+ import { u as n } from "./store-C_8jynbr.js";
12
12
  //#region ../ui/src/shared/activeElement.ts
13
13
  var r = (e) => !!e && "activeElement" in e;
14
14
  function i(e) {
@@ -1,13 +1,13 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "cd544147-31ec-4446-b8a2-8021e027057b", e._sentryDebugIdIdentifier = "sentry-dbid-cd544147-31ec-4446-b8a2-8021e027057b");
7
7
  } catch {}
8
8
  })();
9
- import { l as e } from "./store-Djiw0f15.js";
10
- import { t } from "./LayerStore-CrWyrBRa.js";
9
+ import { l as e } from "./store-C_8jynbr.js";
10
+ import { t } from "./LayerStore-D4A4Uz8J.js";
11
11
  //#region src/components/Map/viewport.ts
12
12
  function n(e) {
13
13
  return {
@@ -1,15 +1,15 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.45.13" };
4
+ e.SENTRY_RELEASE = { id: "3.45.15" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "859e3db6-e7a2-4092-a448-61d436d2d8d2", e._sentryDebugIdIdentifier = "sentry-dbid-859e3db6-e7a2-4092-a448-61d436d2d8d2");
7
7
  } catch {}
8
8
  })();
9
- import { r as e, t } from "./rolldown-runtime-BDjyEY82.js";
10
- import { o as n } from "./is-debug-Bk6Ww-mR.js";
11
- import { i as r, l as i } from "./mobx.module-Cv_4Fqn4.js";
12
- import { At as a, Ct as o, Et as s, Gt as c, Kt as l, Ot as u, Qt as d, Tt as f, an as p, bt as m, cn as h, in as g, kt as _, ln as v, mt as y, rn as b, rt as x, sn as S, tn as C, un as w, xt as T, yt as E } from "./LayerStore-CrWyrBRa.js";
9
+ import { r as e, t } from "./rolldown-runtime-WQ1PGysg.js";
10
+ import { o as n } from "./is-debug-IVgDoIV0.js";
11
+ import { i as r, l as i } from "./mobx.module-BREzXEXH.js";
12
+ import { At as a, Ct as o, Et as s, Gt as c, Kt as l, Ot as u, Qt as d, Tt as f, an as p, bt as m, cn as h, in as g, kt as _, ln as v, mt as y, rn as b, rt as x, sn as S, tn as C, un as w, xt as T, yt as E } from "./LayerStore-D4A4Uz8J.js";
13
13
  //#region ../geometry/src/lib/geo.ts
14
14
  var D = 6371e3;
15
15
  function O(e, t) {
@@ -15,15 +15,18 @@ export interface LayerImage {
15
15
  * onto the main thread.
16
16
  */
17
17
  source: Blob;
18
- /** Placement on the plan: the image fitted into the element's box, rotated as the element is. */
18
+ /**
19
+ * Placement on the plan: the element's box, rotated as the element is, at the element's
20
+ * `data-elev` (0 when missing).
21
+ */
19
22
  bounds: Rect;
20
23
  }
21
24
  /**
22
25
  * Loads a layer's drawing images as bytes.
23
26
  *
24
- * The image is fitted into its element's box like SVG `xMidYMid meet`. The designer writes the
25
- * file's pixel size into the href query as `w` and `h`. An href without a valid size is measured
26
- * by decoding the image, and if that fails too, the image fills the box.
27
+ * The image fills its element's box, like SVG `preserveAspectRatio="none"`. That is what the
28
+ * Designer sets on every image, so the placement comes from the element alone and a raster image
29
+ * is never decoded here.
27
30
  *
28
31
  * Most of these hrefs are inline `data:image/webp;base64` URLs, not file references. The
29
32
  * converter embeds designer graphics directly in the drawing payload. In a real plan, the first
@@ -1 +1 @@
1
- import{Box as u,degToRad as h,Rect as m}from"@expofp/geometry";import{blobImageSize as f}from"./blob-image-size.js";import{loadBlob as d}from"./loadBlob";import{isSvgBlob as g,svgToPngBlob as w}from"./rasterize-svg";export async function loadLayerImages(n){const t=new Map,e=r=>{let o=t.get(r);return o||(o=b(r),t.set(r,o)),o};return(await Promise.all(n.map(async r=>{const o=r.getAttribute("xlink:href")??r.getAttribute("href"),a=o?await e(o):null;if(!a)return null;const l=y(u.fromSvg(r),a.size),c=r.transform?.animVal[0]?.angle??0;return{bounds:m.fromMinMax(l.min,l.max,h(c)),source:a.source,booth:null}}))).filter(r=>r!==null)}async function b(n){const t=await d(n);if(!t)return null;const e=g(t)?await w(t):t;return e?{source:e,size:p(n)??await f(e)}:null}function p(n){let t;try{({searchParams:t}=new URL(n))}catch{return null}const e=Number(t.get("w")),i=Number(t.get("h"));return s(e)&&s(i)?{width:e,height:i}:null}function s(n){return Number.isFinite(n)&&n>0}function y(n,t){if(!t?.width||!t.height||!n.size.width||!n.size.height)return n;const e=Math.min(n.size.width/t.width,n.size.height/t.height);return u.fromCenter(n.center,{x:t.width*e,y:t.height*e})}
1
+ import{Box as u,degToRad as c,Rect as d}from"@expofp/geometry";import{loadBlob as f}from"./loadBlob";import{isSvgBlob as b,svgToPngBlob as m}from"./rasterize-svg";export async function loadLayerImages(r){const t=new Map,a=o=>{let n=t.get(o);return n||(n=g(o),t.set(o,n)),n};return(await Promise.all(r.map(async o=>{const n=o.getAttribute("xlink:href")??o.getAttribute("href"),l=n?await a(n):null;if(!l)return null;const e=u.fromSvg(o),s=o.transform?.animVal[0]?.angle??0,i=parseFloat(o.dataset.elev??"")||0;return{bounds:d.fromMinMax(e.min,e.max,c(s),i),source:l,booth:null}}))).filter(o=>o!==null)}async function g(r){const t=await f(r);return t?b(t)?m(t):t:null}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expofp/floorplan",
3
- "version": "3.45.13",
3
+ "version": "3.45.15",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/expofp/efp-app.git",
@@ -69,15 +69,15 @@
69
69
  "tslib": "^2.3.0",
70
70
  "uuid": "^9.0.1",
71
71
  "zod": "4.4.3",
72
- "@expofp/config": "3.45.13",
73
- "@expofp/debug": "3.45.13",
74
- "@expofp/geometry": "3.45.13",
75
- "@expofp/renderer": "3.45.13",
76
- "@expofp/resolve": "3.45.13",
77
- "@expofp/schema": "3.45.13",
78
- "@expofp/ui": "3.45.13",
79
- "@expofp/utils": "3.45.13",
80
- "@expofp/wayfinding": "3.45.13"
72
+ "@expofp/config": "3.45.15",
73
+ "@expofp/debug": "3.45.15",
74
+ "@expofp/geometry": "3.45.15",
75
+ "@expofp/renderer": "3.45.15",
76
+ "@expofp/resolve": "3.45.15",
77
+ "@expofp/schema": "3.45.15",
78
+ "@expofp/ui": "3.45.15",
79
+ "@expofp/utils": "3.45.15",
80
+ "@expofp/wayfinding": "3.45.15"
81
81
  },
82
82
  "devDependencies": {
83
83
  "@babel/plugin-proposal-decorators": "^8.0.2",