UNPKG

@realsee/dnalogel

Version:
301 lines (300 loc) 7.89 kB
import { SvelteComponent as I, init as W, safe_not_equal as w, append_styles as C, empty as v, insert as h, transition_in as _, group_outros as z, transition_out as g, check_outros as O, detach as E, element as F, attr as M, action_destroyer as j, listen as q, update_keyed_each as G, outro_and_destroy_block as B, run_all as H, assign as J, create_component as K, mount_component as P, get_spread_update as Q, destroy_component as U } from "../../../vendor/svelte/internal/index.js"; import { RoomLabel as X } from "./RoomLabel.js"; import { svelteResizeObserver as Y } from "../../../shared-utils/svelte/resizeObserver.js"; import { getGlobalResponsiveFontSize as Z, getCurrentFontSize as p } from "../../../shared-utils/fontSize.js"; function $(r) { C(r, "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 N(r, e, o) { const l = r.slice(); return l[17] = e[o], l; } function k(r) { let e, o = [], l = /* @__PURE__ */ new Map(), i, f, u, m = ( /*rooms*/ r[12] ); const b = (n) => ( /*room*/ n[17].id ); for (let n = 0; n < m.length; n += 1) { let a = N(r, m, n), s = b(a); l.set(s, o[n] = A(s, a)); } return { c() { e = F("div"); for (let n = 0; n < o.length; n += 1) o[n].c(); M(e, "class", "floorplan-plugin__room-labels svelte-13xux0b"); }, m(n, a) { h(n, e, a); for (let s = 0; s < o.length; s += 1) o[s] && o[s].m(e, null); i = !0, f || (u = [ j(Y.call(null, e)), q( e, "clientWidth", /*clientWidth_handler*/ r[15] ) ], f = !0); }, p(n, a) { a & /*pxmm, rooms, hoveredRoom, roomAreaEnable, roomNameEnable, roomNameOtherTypeEnable, roomDimensionEnable, getLabelElement, getRoomAreaText, getRoomDimensionText, adaptiveRoomLabelVisibleEnable, fontSize*/ 7679 && (m = /*rooms*/ n[12], z(), o = G(o, a, b, 1, n, m, l, e, B, A, null, N), O()); }, i(n) { if (!i) { for (let a = 0; a < m.length; a += 1) _(o[a]); i = !0; } }, o(n) { for (let a = 0; a < o.length; a += 1) g(o[a]); i = !1; }, d(n) { n && E(e); for (let a = 0; a < o.length; a += 1) o[a].d(); f = !1, H(u); } }; } function A(r, e) { let o, l, i; const f = [ { pxmm: ( /*pxmm*/ e[10] ), room: ( /*room*/ e[17] ), hoveredRoom: ( /*hoveredRoom*/ e[4] ), roomAreaEnable: ( /*roomAreaEnable*/ e[0] ), roomNameEnable: ( /*roomNameEnable*/ e[1] ), roomNameOtherTypeEnable: ( /*roomNameOtherTypeEnable*/ e[2] ), roomDimensionEnable: ( /*roomDimensionEnable*/ e[3] ), getLabelElement: ( /*getLabelElement*/ e[7] ), getRoomAreaText: ( /*getRoomAreaText*/ e[5] ), getRoomDimensionText: ( /*getRoomDimensionText*/ e[6] ), adaptiveRoomLabelVisibleEnable: ( /*adaptiveRoomLabelVisibleEnable*/ e[8] ), fontSize: ( /*fontSize*/ e[11] ) } ]; let u = {}; for (let m = 0; m < f.length; m += 1) u = J(u, f[m]); return l = new X({ props: u }), { key: r, first: null, c() { o = v(), K(l.$$.fragment), this.first = o; }, m(m, b) { h(m, o, b), P(l, m, b), i = !0; }, p(m, b) { e = m; const n = b & /*pxmm, rooms, hoveredRoom, roomAreaEnable, roomNameEnable, roomNameOtherTypeEnable, roomDimensionEnable, getLabelElement, getRoomAreaText, getRoomDimensionText, adaptiveRoomLabelVisibleEnable, fontSize*/ 7679 ? Q(f, [ { pxmm: ( /*pxmm*/ e[10] ), room: ( /*room*/ e[17] ), hoveredRoom: ( /*hoveredRoom*/ e[4] ), roomAreaEnable: ( /*roomAreaEnable*/ e[0] ), roomNameEnable: ( /*roomNameEnable*/ e[1] ), roomNameOtherTypeEnable: ( /*roomNameOtherTypeEnable*/ e[2] ), roomDimensionEnable: ( /*roomDimensionEnable*/ e[3] ), getLabelElement: ( /*getLabelElement*/ e[7] ), getRoomAreaText: ( /*getRoomAreaText*/ e[5] ), getRoomDimensionText: ( /*getRoomDimensionText*/ e[6] ), adaptiveRoomLabelVisibleEnable: ( /*adaptiveRoomLabelVisibleEnable*/ e[8] ), fontSize: ( /*fontSize*/ e[11] ) } ]) : {}; l.$set(n); }, i(m) { i || (_(l.$$.fragment, m), i = !0); }, o(m) { g(l.$$.fragment, m), i = !1; }, d(m) { m && E(o), U(l, m); } }; } function ee(r) { let e, o, l = ( /*rooms*/ r[12] && k(r) ); return { c() { l && l.c(), e = v(); }, m(i, f) { l && l.m(i, f), h(i, e, f), o = !0; }, p(i, [f]) { /*rooms*/ i[12] ? l ? (l.p(i, f), f & /*rooms*/ 4096 && _(l, 1)) : (l = k(i), l.c(), _(l, 1), l.m(e.parentNode, e)) : l && (z(), g(l, 1, 1, () => { l = null; }), O()); }, i(i) { o || (_(l), o = !0); }, o(i) { g(l), o = !1; }, d(i) { l && l.d(i), i && E(e); } }; } function oe(r, e, o) { let l, { floorIndex: i } = e, { roomAreaEnable: f } = e, { roomNameEnable: u } = e, { roomNameOtherTypeEnable: m } = e, { roomDimensionEnable: b } = e, { floorplanData: n } = e, { hoveredRoom: a } = e, { getRoomAreaText: s } = e, { getRoomDimensionText: R } = e, { getLabelElement: T } = e, { adaptiveRoomLabelVisibleEnable: D } = e, d = 0, y = 0; const c = Z(); let L = p(); typeof c == "object" && "subscribe" in c && c.subscribe((t) => { o(11, L = t); }); const S = (t) => { o(9, d = t.detail); }; return r.$$set = (t) => { "floorIndex" in t && o(13, i = t.floorIndex), "roomAreaEnable" in t && o(0, f = t.roomAreaEnable), "roomNameEnable" in t && o(1, u = t.roomNameEnable), "roomNameOtherTypeEnable" in t && o(2, m = t.roomNameOtherTypeEnable), "roomDimensionEnable" in t && o(3, b = t.roomDimensionEnable), "floorplanData" in t && o(14, n = t.floorplanData), "hoveredRoom" in t && o(4, a = t.hoveredRoom), "getRoomAreaText" in t && o(5, s = t.getRoomAreaText), "getRoomDimensionText" in t && o(6, R = t.getRoomDimensionText), "getLabelElement" in t && o(7, T = t.getLabelElement), "adaptiveRoomLabelVisibleEnable" in t && o(8, D = t.adaptiveRoomLabelVisibleEnable); }, r.$$.update = () => { if (r.$$.dirty & /*floorplanData, floorIndex*/ 24576 && o(12, l = n.floorDatas[i].rooms), r.$$.dirty & /*floorplanData, clientWidth*/ 16896) { const { max: t, min: V } = n.bounding, x = t.x - V.x; o(10, y = d / x); } }, [ f, u, m, b, a, s, R, T, D, d, y, L, l, i, n, S ]; } class me extends I { constructor(e) { super(), W( this, e, oe, ee, w, { floorIndex: 13, roomAreaEnable: 0, roomNameEnable: 1, roomNameOtherTypeEnable: 2, roomDimensionEnable: 3, floorplanData: 14, hoveredRoom: 4, getRoomAreaText: 5, getRoomDimensionText: 6, getLabelElement: 7, adaptiveRoomLabelVisibleEnable: 8 }, $ ); } } export { me as RoomLabels };