@realsee/dnalogel
Version:
256 lines (255 loc) • 6.34 kB
JavaScript
import { SvelteComponent as T, init as V, safe_not_equal as D, append_styles as I, empty as k, insert as h, transition_in as _, group_outros as A, transition_out as d, check_outros as y, detach as g, element as W, attr as w, action_destroyer as z, listen as q, update_keyed_each as C, outro_and_destroy_block as M, run_all as O, assign as S, create_component as j, mount_component as B, get_spread_update as F, destroy_component as G } from "../../../vendor/svelte/internal/index.js";
import { RoomLabel as H } from "./RoomLabel.js";
import { svelteResizeObserver as J } from "../../../shared-utils/svelte/resizeObserver.js";
function K(m) {
I(m, "svelte-13xux0b", ".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}");
}
function R(m, e, o) {
const l = m.slice();
return l[12] = e[o], l;
}
function L(m) {
let e, o = [], l = /* @__PURE__ */ new Map(), n, f, s, t = (
/*rooms*/
m[8]
);
const b = (a) => (
/*room*/
a[12].id
);
for (let a = 0; a < t.length; a += 1) {
let r = R(m, t, a), u = b(r);
l.set(u, o[a] = v(u, r));
}
return {
c() {
e = W("div");
for (let a = 0; a < o.length; a += 1)
o[a].c();
w(e, "class", "floorplan-plugin__room-labels svelte-13xux0b");
},
m(a, r) {
h(a, e, r);
for (let u = 0; u < o.length; u += 1)
o[u] && o[u].m(e, null);
n = !0, f || (s = [
z(J.call(null, e)),
q(
e,
"clientWidth",
/*clientWidth_handler*/
m[11]
)
], f = !0);
},
p(a, r) {
r & /*pxmm, rooms, hoveredRoom, roomAreaEnable, roomNameEnable, getLabelElement, getRoomAreaText, adaptiveRoomLabelVisibleEnable*/
447 && (t = /*rooms*/
a[8], A(), o = C(o, r, b, 1, a, t, l, e, M, v, null, R), y());
},
i(a) {
if (!n) {
for (let r = 0; r < t.length; r += 1)
_(o[r]);
n = !0;
}
},
o(a) {
for (let r = 0; r < o.length; r += 1)
d(o[r]);
n = !1;
},
d(a) {
a && g(e);
for (let r = 0; r < o.length; r += 1)
o[r].d();
f = !1, O(s);
}
};
}
function v(m, e) {
let o, l, n;
const f = [
{
pxmm: (
/*pxmm*/
e[7]
),
room: (
/*room*/
e[12]
),
hoveredRoom: (
/*hoveredRoom*/
e[2]
),
roomAreaEnable: (
/*roomAreaEnable*/
e[0]
),
roomNameEnable: (
/*roomNameEnable*/
e[1]
),
getLabelElement: (
/*getLabelElement*/
e[4]
),
getRoomAreaText: (
/*getRoomAreaText*/
e[3]
),
adaptiveRoomLabelVisibleEnable: (
/*adaptiveRoomLabelVisibleEnable*/
e[5]
)
}
];
let s = {};
for (let t = 0; t < f.length; t += 1)
s = S(s, f[t]);
return l = new H({ props: s }), {
key: m,
first: null,
c() {
o = k(), j(l.$$.fragment), this.first = o;
},
m(t, b) {
h(t, o, b), B(l, t, b), n = !0;
},
p(t, b) {
e = t;
const a = b & /*pxmm, rooms, hoveredRoom, roomAreaEnable, roomNameEnable, getLabelElement, getRoomAreaText, adaptiveRoomLabelVisibleEnable*/
447 ? F(f, [
{
pxmm: (
/*pxmm*/
e[7]
),
room: (
/*room*/
e[12]
),
hoveredRoom: (
/*hoveredRoom*/
e[2]
),
roomAreaEnable: (
/*roomAreaEnable*/
e[0]
),
roomNameEnable: (
/*roomNameEnable*/
e[1]
),
getLabelElement: (
/*getLabelElement*/
e[4]
),
getRoomAreaText: (
/*getRoomAreaText*/
e[3]
),
adaptiveRoomLabelVisibleEnable: (
/*adaptiveRoomLabelVisibleEnable*/
e[5]
)
}
]) : {};
l.$set(a);
},
i(t) {
n || (_(l.$$.fragment, t), n = !0);
},
o(t) {
d(l.$$.fragment, t), n = !1;
},
d(t) {
t && g(o), G(l, t);
}
};
}
function P(m) {
let e, o, l = (
/*rooms*/
m[8] && L(m)
);
return {
c() {
l && l.c(), e = k();
},
m(n, f) {
l && l.m(n, f), h(n, e, f), o = !0;
},
p(n, [f]) {
/*rooms*/
n[8] ? l ? (l.p(n, f), f & /*rooms*/
256 && _(l, 1)) : (l = L(n), l.c(), _(l, 1), l.m(e.parentNode, e)) : l && (A(), d(l, 1, 1, () => {
l = null;
}), y());
},
i(n) {
o || (_(l), o = !0);
},
o(n) {
d(l), o = !1;
},
d(n) {
l && l.d(n), n && g(e);
}
};
}
function Q(m, e, o) {
let l, { floorIndex: n } = e, { roomAreaEnable: f } = e, { roomNameEnable: s } = e, { floorplanData: t } = e, { hoveredRoom: b } = e, { getRoomAreaText: a } = e, { getLabelElement: r } = e, { adaptiveRoomLabelVisibleEnable: u } = e, c = 0, E = 0;
const N = (i) => {
o(6, c = i.detail);
};
return m.$$set = (i) => {
"floorIndex" in i && o(9, n = i.floorIndex), "roomAreaEnable" in i && o(0, f = i.roomAreaEnable), "roomNameEnable" in i && o(1, s = i.roomNameEnable), "floorplanData" in i && o(10, t = i.floorplanData), "hoveredRoom" in i && o(2, b = i.hoveredRoom), "getRoomAreaText" in i && o(3, a = i.getRoomAreaText), "getLabelElement" in i && o(4, r = i.getLabelElement), "adaptiveRoomLabelVisibleEnable" in i && o(5, u = i.adaptiveRoomLabelVisibleEnable);
}, m.$$.update = () => {
if (m.$$.dirty & /*floorplanData, floorIndex*/
1536 && o(8, l = t.floorDatas[n].rooms), m.$$.dirty & /*floorplanData, clientWidth*/
1088) {
const { max: i, min: p } = t.bounding, x = i.x - p.x;
o(7, E = c / x);
}
}, [
f,
s,
b,
a,
r,
u,
c,
E,
l,
n,
t,
N
];
}
class Z extends T {
constructor(e) {
super(), V(
this,
e,
Q,
P,
D,
{
floorIndex: 9,
roomAreaEnable: 0,
roomNameEnable: 1,
floorplanData: 10,
hoveredRoom: 2,
getRoomAreaText: 3,
getLabelElement: 4,
adaptiveRoomLabelVisibleEnable: 5
},
K
);
}
}
export {
Z as RoomLabels
};