grid-layout-plus
Version:
<p align="center"> <a href="https://grid-layout-plus.netlify.app/" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/grid-layout-plus.svg" width="180" style="width: 120px;" /> </a> </p>
1,128 lines • 193 kB
JavaScript
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode('.vgl-layout{--vgl-placeholder-bg: red;--vgl-placeholder-opacity: 20%;--vgl-placeholder-z-index: 2;--vgl-item-resizing-z-index: 3;--vgl-item-resizing-opacity: 60%;--vgl-item-dragging-z-index: 3;--vgl-item-dragging-opacity: 100%;--vgl-resizer-size: 10px;--vgl-resizer-border-color: #444;--vgl-resizer-border-width: 2px;position:relative;box-sizing:border-box;transition:height .2s ease}.vgl-item{position:absolute;box-sizing:border-box;transition:.2s ease;transition-property:left,top,right}.vgl-item--placeholder{z-index:var(--vgl-placeholder-z-index, 2);-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:var(--vgl-placeholder-bg, red);opacity:var(--vgl-placeholder-opacity, 20%);transition-duration:.1s}.vgl-item--no-touch{touch-action:none}.vgl-item--transform{right:auto;left:0;transition-property:transform}.vgl-item--transform.vgl-item--rtl{right:0;left:auto}.vgl-item--resizing{z-index:var(--vgl-item-resizing-z-index, 3);-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--vgl-item-resizing-opacity, 60%)}.vgl-item--dragging{z-index:var(--vgl-item-dragging-z-index, 3);-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--vgl-item-dragging-opacity, 100%);transition:none}.vgl-item__resizer{position:absolute;right:0;bottom:0;box-sizing:border-box;width:var(--vgl-resizer-size);height:var(--vgl-resizer-size);cursor:se-resize}.vgl-item__resizer:before{position:absolute;top:0;right:3px;bottom:3px;left:0;content:"";border:0 solid var(--vgl-resizer-border-color);border-right-width:var(--vgl-resizer-border-width);border-bottom-width:var(--vgl-resizer-border-width)}.vgl-item__resizer--rtl{right:auto;left:0;cursor:sw-resize}.vgl-item__resizer--rtl:before{top:0;right:0;bottom:3px;left:3px;border-right-width:0;border-bottom-width:var(--vgl-resizer-border-width);border-left-width:var(--vgl-resizer-border-width)}')),document.head.appendChild(e)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
import { defineComponent as Ir, inject as or, ref as Pt, reactive as Mt, toRef as ho, onBeforeMount as Cr, onMounted as Ar, watchEffect as go, onBeforeUnmount as Br, computed as tt, watch as ee, openBlock as St, createElementBlock as $t, normalizeClass as ar, normalizeStyle as Fr, renderSlot as yn, createCommentVNode as vo, nextTick as Ge, provide as sr, toRefs as cr, Fragment as mo, renderList as yo, createBlock as bo, mergeProps as wo, withCtx as xo, withDirectives as Eo, createVNode as ko, vShow as So } from "vue";
const To = typeof window < "u";
var lr;
To && ((lr = window == null ? void 0 : window.navigator) != null && lr.userAgent) && /iP(ad|hone|od)/.test(window.navigator.userAgent);
function we(c) {
return c == null;
}
function jr() {
}
const zo = Object.freeze({
aliceblue: "f0f8ff",
antiquewhite: "faebd7",
aqua: "0ff",
aquamarine: "7fffd4",
azure: "f0ffff",
beige: "f5f5dc",
bisque: "ffe4c4",
black: "000",
blanchedalmond: "ffebcd",
blue: "00f",
blueviolet: "8a2be2",
brown: "a52a2a",
burlywood: "deb887",
burntsienna: "ea7e5d",
cadetblue: "5f9ea0",
chartreuse: "7fff00",
chocolate: "d2691e",
coral: "ff7f50",
cornflowerblue: "6495ed",
cornsilk: "fff8dc",
crimson: "dc143c",
cyan: "0ff",
darkblue: "00008b",
darkcyan: "008b8b",
darkgoldenrod: "b8860b",
darkgray: "a9a9a9",
darkgreen: "006400",
darkgrey: "a9a9a9",
darkkhaki: "bdb76b",
darkmagenta: "8b008b",
darkolivegreen: "556b2f",
darkorange: "ff8c00",
darkorchid: "9932cc",
darkred: "8b0000",
darksalmon: "e9967a",
darkseagreen: "8fbc8f",
darkslateblue: "483d8b",
darkslategray: "2f4f4f",
darkslategrey: "2f4f4f",
darkturquoise: "00ced1",
darkviolet: "9400d3",
deeppink: "ff1493",
deepskyblue: "00bfff",
dimgray: "696969",
dimgrey: "696969",
dodgerblue: "1e90ff",
firebrick: "b22222",
floralwhite: "fffaf0",
forestgreen: "228b22",
fuchsia: "f0f",
gainsboro: "dcdcdc",
ghostwhite: "f8f8ff",
gold: "ffd700",
goldenrod: "daa520",
gray: "808080",
green: "008000",
greenyellow: "adff2f",
grey: "808080",
honeydew: "f0fff0",
hotpink: "ff69b4",
indianred: "cd5c5c",
indigo: "4b0082",
ivory: "fffff0",
khaki: "f0e68c",
lavender: "e6e6fa",
lavenderblush: "fff0f5",
lawngreen: "7cfc00",
lemonchiffon: "fffacd",
lightblue: "add8e6",
lightcoral: "f08080",
lightcyan: "e0ffff",
lightgoldenrodyellow: "fafad2",
lightgray: "d3d3d3",
lightgreen: "90ee90",
lightgrey: "d3d3d3",
lightpink: "ffb6c1",
lightsalmon: "ffa07a",
lightseagreen: "20b2aa",
lightskyblue: "87cefa",
lightslategray: "789",
lightslategrey: "789",
lightsteelblue: "b0c4de",
lightyellow: "ffffe0",
lime: "0f0",
limegreen: "32cd32",
linen: "faf0e6",
magenta: "f0f",
maroon: "800000",
mediumaquamarine: "66cdaa",
mediumblue: "0000cd",
mediumorchid: "ba55d3",
mediumpurple: "9370db",
mediumseagreen: "3cb371",
mediumslateblue: "7b68ee",
mediumspringgreen: "00fa9a",
mediumturquoise: "48d1cc",
mediumvioletred: "c71585",
midnightblue: "191970",
mintcream: "f5fffa",
mistyrose: "ffe4e1",
moccasin: "ffe4b5",
navajowhite: "ffdead",
navy: "000080",
oldlace: "fdf5e6",
olive: "808000",
olivedrab: "6b8e23",
orange: "ffa500",
orangered: "ff4500",
orchid: "da70d6",
palegoldenrod: "eee8aa",
palegreen: "98fb98",
paleturquoise: "afeeee",
palevioletred: "db7093",
papayawhip: "ffefd5",
peachpuff: "ffdab9",
peru: "cd853f",
pink: "ffc0cb",
plum: "dda0dd",
powderblue: "b0e0e6",
purple: "800080",
rebeccapurple: "663399",
red: "f00",
rosybrown: "bc8f8f",
royalblue: "4169e1",
saddlebrown: "8b4513",
salmon: "fa8072",
sandybrown: "f4a460",
seagreen: "2e8b57",
seashell: "fff5ee",
sienna: "a0522d",
silver: "c0c0c0",
skyblue: "87ceeb",
slateblue: "6a5acd",
slategray: "708090",
slategrey: "708090",
snow: "fffafa",
springgreen: "00ff7f",
steelblue: "4682b4",
tan: "d2b48c",
teal: "008080",
thistle: "d8bfd8",
tomato: "ff6347",
turquoise: "40e0d0",
violet: "ee82ee",
wheat: "f5deb3",
white: "fff",
whitesmoke: "f5f5f5",
yellow: "ff0",
yellowgreen: "9acd32"
});
Object.freeze(new Set(Object.keys(zo)));
function _o() {
const c = /* @__PURE__ */ new Map();
return {
on(d, h) {
const f = c.get(d);
f != null && f.add(h) || c.set(d, /* @__PURE__ */ new Set([h]));
},
off(d, h) {
const f = c.get(d);
f && f.delete(h);
},
clear(d) {
const h = c.get(d);
h && h.clear();
},
clearAll() {
c.clear();
},
emit(d, ...h) {
const f = c.get(d);
f && f.forEach((w) => {
w(...h);
});
}
};
}
function ur(c, d = 16) {
if (typeof c != "function")
return jr;
const h = (...m) => {
c(...m);
};
if (d <= 0)
return Lr(h);
let f = 0, w;
return function(...m) {
const z = Date.now(), S = z - f;
clearTimeout(w), S >= d ? (f = z, h(...m)) : w = setTimeout(
() => {
f = Date.now(), h(...m);
},
Math.max(0, d - S)
);
};
}
function Oo(c, d = 100) {
if (typeof c != "function")
return jr;
const h = (...w) => {
c(...w);
};
if (d <= 0)
return Lr(h);
let f;
return function(...w) {
clearTimeout(f), f = setTimeout(() => {
h(...w);
}, d);
};
}
function Lr(c) {
if (typeof c != "function")
return c;
let d = !1, h, f;
return function(...w) {
return h = w, d || (d = !0, f = Promise.resolve().then(() => (d = !1, f = void 0, c(...h)))), f;
};
}
const Tt = /* @__PURE__ */ new Set(), Wr = /* @__PURE__ */ new WeakMap();
function Po() {
Tt.forEach((c) => {
c(...Wr.get(c));
}), Tt.clear();
}
function he(c, ...d) {
if (typeof c != "function")
return c;
Wr.set(c, d), !Tt.has(c) && (Tt.add(c), Tt.size === 1 && Promise.resolve().then(Po));
}
const Hr = Symbol("LAYOUT_KEY"), Nr = Symbol("EMITTER_KEY");
function Mo(c) {
let d = 0, h;
for (let f = 0, w = c.length; f < w; f++)
h = c[f].y + c[f].h, h > d && (d = h);
return d;
}
function bn(c) {
const d = Array(c.length);
for (let h = 0, f = c.length; h < f; h++)
d[h] = Do(c[h]);
return d;
}
function Do(c) {
return { ...c };
}
function qr(c, d) {
return !(c === d || c.x + c.w <= d.x || c.x >= d.x + d.w || c.y + c.h <= d.y || c.y >= d.y + d.h);
}
function dt(c, d, h) {
const f = Yr(c), w = $r(c), m = Array(c.length);
for (let z = 0, S = w.length; z < S; z++) {
let v = w[z];
v.static || (v = Ro(f, v, d, h), f.push(v)), m[c.indexOf(v)] = v, v.moved = !1;
}
return m;
}
function Ro(c, d, h, f) {
if (h)
for (; d.y > 0 && !zt(c, d); )
d.y--;
else if (f) {
const m = f[d.i].y;
for (; d.y > m && !zt(c, d); )
d.y--;
}
let w;
for (; w = zt(c, d); )
d.y = w.y + w.h;
return d;
}
function Io(c, d) {
const h = Yr(c);
for (let f = 0, w = c.length; f < w; f++) {
const m = c[f];
if (m.x + m.w > d.cols && (m.x = d.cols - m.w), m.x < 0 && (m.x = 0, m.w = d.cols), !m.static) h.push(m);
else
for (; zt(h, m); )
m.y++;
}
return c;
}
function fr(c, d) {
for (let h = 0, f = c.length; h < f; h++)
if (c[h].i === d) return c[h];
}
function zt(c, d) {
for (let h = 0, f = c.length; h < f; h++)
if (qr(c[h], d)) return c[h];
}
function Xr(c, d) {
return c.filter((h) => qr(h, d));
}
function Yr(c) {
return c.filter((d) => d.static);
}
function wn(c, d, h, f, w = !1, m = !1) {
if (d.static) return c;
const z = d.x, S = d.y, v = f && d.y > f;
typeof h == "number" && (d.x = h), typeof f == "number" && (d.y = f), d.moved = !0;
let U = $r(c);
v && (U = U.reverse());
const te = Xr(U, d);
if (m && te.length)
return d.x = z, d.y = S, d.moved = !1, c;
for (let W = 0, le = te.length; W < le; W++) {
const re = te[W];
re.moved || d.y > re.y && d.y - re.y > re.h / 4 || (re.static ? c = dr(c, re, d, w) : c = dr(c, d, re, w));
}
return c;
}
function dr(c, d, h, f) {
if (f) {
const m = {
x: h.x,
y: h.y,
w: h.w,
h: h.h,
i: "-1"
};
if (m.y = Math.max(d.y - h.h, 0), !zt(c, m))
return wn(c, h, void 0, m.y, !1);
}
return wn(c, h, void 0, h.y + 1, !1);
}
function Co(c, d, h, f) {
const w = "translate3d(" + d + "px," + c + "px, 0)";
return {
transform: w,
WebkitTransform: w,
MozTransform: w,
msTransform: w,
OTransform: w,
width: h + "px",
height: f + "px",
position: "absolute"
};
}
function Ao(c, d, h, f) {
const w = "translate3d(" + d * -1 + "px," + c + "px, 0)";
return {
transform: w,
WebkitTransform: w,
MozTransform: w,
msTransform: w,
OTransform: w,
width: h + "px",
height: f + "px",
position: "absolute"
};
}
function Bo(c, d, h, f) {
return {
top: c + "px",
left: d + "px",
width: h + "px",
height: f + "px",
position: "absolute"
};
}
function Fo(c, d, h, f) {
return {
top: c + "px",
right: d + "px",
width: h + "px",
height: f + "px",
position: "absolute"
};
}
function $r(c) {
return Array.from(c).sort(function(d, h) {
return d.y === h.y && d.x === h.x ? 0 : d.y > h.y || d.y === h.y && d.x > h.x ? 1 : -1;
});
}
function jo(c, d) {
d = d || "Layout";
const h = ["x", "y", "w", "h"], f = [];
if (!Array.isArray(c)) throw new Error(d + " must be an array!");
for (let w = 0, m = c.length; w < m; w++) {
const z = c[w];
for (let S = 0; S < h.length; S++)
if (typeof z[h[S]] != "number")
throw new Error(
"VueGridLayout: " + d + "[" + w + "]." + h[S] + " must be a number!"
);
if (z.i === void 0 || z.i === null)
throw new Error("VueGridLayout: " + d + "[" + w + "].i cannot be null!");
if (typeof z.i != "number" && typeof z.i != "string")
throw new Error("VueGridLayout: " + d + "[" + w + "].i must be a string or number!");
if (f.indexOf(z.i) >= 0)
throw new Error("VueGridLayout: " + d + "[" + w + "].i must be unique!");
if (f.push(z.i), z.static !== void 0 && typeof z.static != "boolean")
throw new Error("VueGridLayout: " + d + "[" + w + "].static must be a boolean!");
}
}
function Lo(c, d = "vgl") {
const h = () => `${d}-${c}`;
return {
b: h,
be: (z) => `${h()}__${z}`,
bm: (z) => `${h()}--${z}`,
bem: (z, S) => `${h()}__${z}--${S}`
};
}
function pr(c) {
return Wo(c);
}
function Wo(c) {
var m;
const d = ((m = c.target) == null ? void 0 : m.offsetParent) || document.body, h = c.offsetParent === document.body ? { left: 0, top: 0 } : d.getBoundingClientRect(), f = c.clientX + d.scrollLeft - h.left, w = c.clientY + d.scrollTop - h.top;
return { x: f, y: w };
}
function hr(c, d, h, f) {
return Ho(c) ? {
deltaX: h - c,
deltaY: f - d,
lastX: c,
lastY: d,
x: h,
y: f
} : {
deltaX: 0,
deltaY: 0,
lastX: h,
lastY: f,
x: h,
y: f
};
}
function Ho(c) {
return typeof c == "number" && !Number.isNaN(c);
}
function No(c, d) {
const h = Vr(c);
let f = h[0];
for (let w = 1, m = h.length; w < m; w++) {
const z = h[w];
d > c[z] && (f = z);
}
return f;
}
function xn(c, d) {
if (!d[c])
throw new Error(
"ResponsiveGridLayout: `cols` entry for breakpoint " + c + " is missing!"
);
return d[c];
}
function qo(c, d, h, f, w, m, z) {
if (d[f]) return bn(d[f]);
let S = c;
const v = Vr(h), U = v.slice(v.indexOf(f));
for (let te = 0, W = U.length; te < W; te++) {
const le = U[te];
if (d[le]) {
S = d[le];
break;
}
}
return S = bn(S || []), dt(Io(S, { cols: m }), z);
}
function Vr(c) {
return Object.keys(c).sort((h, f) => c[h] - c[f]);
}
let Xo = "auto";
function Yo() {
return typeof document < "u";
}
function gr() {
return Yo() ? typeof document.dir < "u" ? document.dir : document.getElementsByTagName("html")[0].getAttribute("dir") : Xo;
}
function $o(c) {
return c && c.__esModule && Object.prototype.hasOwnProperty.call(c, "default") ? c.default : c;
}
var kt = { exports: {} }, Vo = kt.exports, vr;
function Go() {
return vr || (vr = 1, function(c, d) {
(function(h, f) {
c.exports = f();
})(Vo, function() {
function h(t, e) {
var n = Object.keys(t);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(t);
e && (r = r.filter(function(i) {
return Object.getOwnPropertyDescriptor(t, i).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function f(t) {
for (var e = 1; e < arguments.length; e++) {
var n = arguments[e] != null ? arguments[e] : {};
e % 2 ? h(Object(n), !0).forEach(function(r) {
v(t, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(n)) : h(Object(n)).forEach(function(r) {
Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return t;
}
function w(t) {
return w = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
return typeof e;
} : function(e) {
return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
}, w(t);
}
function m(t, e) {
if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
}
function z(t, e) {
for (var n = 0; n < e.length; n++) {
var r = e[n];
r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, Pe(r.key), r);
}
}
function S(t, e, n) {
return e && z(t.prototype, e), Object.defineProperty(t, "prototype", { writable: !1 }), t;
}
function v(t, e, n) {
return (e = Pe(e)) in t ? Object.defineProperty(t, e, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : t[e] = n, t;
}
function U(t, e) {
if (typeof e != "function" && e !== null) throw new TypeError("Super expression must either be null or a function");
t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && W(t, e);
}
function te(t) {
return te = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {
return e.__proto__ || Object.getPrototypeOf(e);
}, te(t);
}
function W(t, e) {
return W = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(n, r) {
return n.__proto__ = r, n;
}, W(t, e);
}
function le(t) {
if (t === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
return t;
}
function re(t) {
var e = function() {
if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
if (typeof Proxy == "function") return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
})), !0;
} catch {
return !1;
}
}();
return function() {
var n, r = te(t);
if (e) {
var i = te(this).constructor;
n = Reflect.construct(r, arguments, i);
} else n = r.apply(this, arguments);
return function(o, a) {
if (a && (typeof a == "object" || typeof a == "function")) return a;
if (a !== void 0) throw new TypeError("Derived constructors may only return object or undefined");
return le(o);
}(this, n);
};
}
function xe() {
return xe = typeof Reflect < "u" && Reflect.get ? Reflect.get.bind() : function(t, e, n) {
var r = function(o, a) {
for (; !Object.prototype.hasOwnProperty.call(o, a) && (o = te(o)) !== null; ) ;
return o;
}(t, e);
if (r) {
var i = Object.getOwnPropertyDescriptor(r, e);
return i.get ? i.get.call(arguments.length < 3 ? t : n) : i.value;
}
}, xe.apply(this, arguments);
}
function Pe(t) {
var e = function(n, r) {
if (typeof n != "object" || n === null) return n;
var i = n[Symbol.toPrimitive];
if (i !== void 0) {
var o = i.call(n, r);
if (typeof o != "object") return o;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return String(n);
}(t, "string");
return typeof e == "symbol" ? e : e + "";
}
var Te = function(t) {
return !(!t || !t.Window) && t instanceof t.Window;
}, ze = void 0, ie = void 0;
function ne(t) {
ze = t;
var e = t.document.createTextNode("");
e.ownerDocument !== t.document && typeof t.wrap == "function" && t.wrap(e) === e && (t = t.wrap(t)), ie = t;
}
function K(t) {
return Te(t) ? t : (t.ownerDocument || t).defaultView || ie.window;
}
typeof window < "u" && window && ne(window);
var Q = function(t) {
return !!t && w(t) === "object";
}, ce = function(t) {
return typeof t == "function";
}, b = { window: function(t) {
return t === ie || Te(t);
}, docFrag: function(t) {
return Q(t) && t.nodeType === 11;
}, object: Q, func: ce, number: function(t) {
return typeof t == "number";
}, bool: function(t) {
return typeof t == "boolean";
}, string: function(t) {
return typeof t == "string";
}, element: function(t) {
if (!t || w(t) !== "object") return !1;
var e = K(t) || ie;
return /object|function/.test(typeof Element > "u" ? "undefined" : w(Element)) ? t instanceof Element || t instanceof e.Element : t.nodeType === 1 && typeof t.nodeName == "string";
}, plainObject: function(t) {
return Q(t) && !!t.constructor && /function Object\b/.test(t.constructor.toString());
}, array: function(t) {
return Q(t) && t.length !== void 0 && ce(t.splice);
} };
function ve(t) {
var e = t.interaction;
if (e.prepared.name === "drag") {
var n = e.prepared.axis;
n === "x" ? (e.coords.cur.page.y = e.coords.start.page.y, e.coords.cur.client.y = e.coords.start.client.y, e.coords.velocity.client.y = 0, e.coords.velocity.page.y = 0) : n === "y" && (e.coords.cur.page.x = e.coords.start.page.x, e.coords.cur.client.x = e.coords.start.client.x, e.coords.velocity.client.x = 0, e.coords.velocity.page.x = 0);
}
}
function me(t) {
var e = t.iEvent, n = t.interaction;
if (n.prepared.name === "drag") {
var r = n.prepared.axis;
if (r === "x" || r === "y") {
var i = r === "x" ? "y" : "x";
e.page[i] = n.coords.start.page[i], e.client[i] = n.coords.start.client[i], e.delta[i] = 0;
}
}
}
var Ee = { id: "actions/drag", install: function(t) {
var e = t.actions, n = t.Interactable, r = t.defaults;
n.prototype.draggable = Ee.draggable, e.map.drag = Ee, e.methodDict.drag = "draggable", r.actions.drag = Ee.defaults;
}, listeners: { "interactions:before-action-move": ve, "interactions:action-resume": ve, "interactions:action-move": me, "auto-start:check": function(t) {
var e = t.interaction, n = t.interactable, r = t.buttons, i = n.options.drag;
if (i && i.enabled && (!e.pointerIsDown || !/mouse|pointer/.test(e.pointerType) || r & n.options.drag.mouseButtons)) return t.action = { name: "drag", axis: i.lockAxis === "start" ? i.startAxis : i.lockAxis }, !1;
} }, draggable: function(t) {
return b.object(t) ? (this.options.drag.enabled = t.enabled !== !1, this.setPerAction("drag", t), this.setOnEvents("drag", t), /^(xy|x|y|start)$/.test(t.lockAxis) && (this.options.drag.lockAxis = t.lockAxis), /^(xy|x|y)$/.test(t.startAxis) && (this.options.drag.startAxis = t.startAxis), this) : b.bool(t) ? (this.options.drag.enabled = t, this) : this.options.drag;
}, beforeMove: ve, move: me, defaults: { startAxis: "xy", lockAxis: "xy" }, getCursor: function() {
return "move";
}, filterEventType: function(t) {
return t.search("drag") === 0;
} }, O = Ee, L = { init: function(t) {
var e = t;
L.document = e.document, L.DocumentFragment = e.DocumentFragment || X, L.SVGElement = e.SVGElement || X, L.SVGSVGElement = e.SVGSVGElement || X, L.SVGElementInstance = e.SVGElementInstance || X, L.Element = e.Element || X, L.HTMLElement = e.HTMLElement || L.Element, L.Event = e.Event, L.Touch = e.Touch || X, L.PointerEvent = e.PointerEvent || e.MSPointerEvent;
}, document: null, DocumentFragment: null, SVGElement: null, SVGSVGElement: null, SVGElementInstance: null, Element: null, HTMLElement: null, Event: null, Touch: null, PointerEvent: null };
function X() {
}
var Y = L, V = { init: function(t) {
var e = Y.Element, n = t.navigator || {};
V.supportsTouch = "ontouchstart" in t || b.func(t.DocumentTouch) && Y.document instanceof t.DocumentTouch, V.supportsPointerEvent = n.pointerEnabled !== !1 && !!Y.PointerEvent, V.isIOS = /iP(hone|od|ad)/.test(n.platform), V.isIOS7 = /iP(hone|od|ad)/.test(n.platform) && /OS 7[^\d]/.test(n.appVersion), V.isIe9 = /MSIE 9/.test(n.userAgent), V.isOperaMobile = n.appName === "Opera" && V.supportsTouch && /Presto/.test(n.userAgent), V.prefixedMatchesSelector = "matches" in e.prototype ? "matches" : "webkitMatchesSelector" in e.prototype ? "webkitMatchesSelector" : "mozMatchesSelector" in e.prototype ? "mozMatchesSelector" : "oMatchesSelector" in e.prototype ? "oMatchesSelector" : "msMatchesSelector", V.pEventTypes = V.supportsPointerEvent ? Y.PointerEvent === t.MSPointerEvent ? { up: "MSPointerUp", down: "MSPointerDown", over: "mouseover", out: "mouseout", move: "MSPointerMove", cancel: "MSPointerCancel" } : { up: "pointerup", down: "pointerdown", over: "pointerover", out: "pointerout", move: "pointermove", cancel: "pointercancel" } : null, V.wheelEvent = Y.document && "onmousewheel" in Y.document ? "mousewheel" : "wheel";
}, supportsTouch: null, supportsPointerEvent: null, isIOS7: null, isIOS: null, isIe9: null, isOperaMobile: null, prefixedMatchesSelector: null, pEventTypes: null, wheelEvent: null }, G = V;
function F(t, e) {
if (t.contains) return t.contains(e);
for (; e; ) {
if (e === t) return !0;
e = e.parentNode;
}
return !1;
}
function ke(t, e) {
for (; b.element(t); ) {
if (ae(t, e)) return t;
t = ue(t);
}
return null;
}
function ue(t) {
var e = t.parentNode;
if (b.docFrag(e)) {
for (; (e = e.host) && b.docFrag(e); ) ;
return e;
}
return e;
}
function ae(t, e) {
return ie !== ze && (e = e.replace(/\/deep\//g, " ")), t[G.prefixedMatchesSelector](e);
}
var Z = function(t) {
return t.parentNode || t.host;
};
function Me(t, e) {
for (var n, r = [], i = t; (n = Z(i)) && i !== e && n !== i.ownerDocument; ) r.unshift(i), i = n;
return r;
}
function ge(t, e, n) {
for (; b.element(t); ) {
if (ae(t, e)) return !0;
if ((t = ue(t)) === n) return ae(t, e);
}
return !1;
}
function Rt(t) {
return t.correspondingUseElement || t;
}
function Ue(t) {
var e = t instanceof Y.SVGElement ? t.getBoundingClientRect() : t.getClientRects()[0];
return e && { left: e.left, right: e.right, top: e.top, bottom: e.bottom, width: e.width || e.right - e.left, height: e.height || e.bottom - e.top };
}
function _e(t) {
var e, n = Ue(t);
if (!G.isIOS7 && n) {
var r = { x: (e = (e = K(t)) || ie).scrollX || e.document.documentElement.scrollLeft, y: e.scrollY || e.document.documentElement.scrollTop };
n.left += r.x, n.right += r.x, n.top += r.y, n.bottom += r.y;
}
return n;
}
function ot(t) {
for (var e = []; t; ) e.push(t), t = ue(t);
return e;
}
function ht(t) {
return !!b.string(t) && (Y.document.querySelector(t), !0);
}
function M(t, e) {
for (var n in e) t[n] = e[n];
return t;
}
function Le(t, e, n) {
return t === "parent" ? ue(n) : t === "self" ? e.getRect(n) : ke(n, t);
}
function De(t, e, n, r) {
var i = t;
return b.string(i) ? i = Le(i, e, n) : b.func(i) && (i = i.apply(void 0, r)), b.element(i) && (i = _e(i)), i;
}
function Re(t) {
return t && { x: "x" in t ? t.x : t.left, y: "y" in t ? t.y : t.top };
}
function at(t) {
return !t || "x" in t && "y" in t || ((t = M({}, t)).x = t.left || 0, t.y = t.top || 0, t.width = t.width || (t.right || 0) - t.x, t.height = t.height || (t.bottom || 0) - t.y), t;
}
function Ke(t, e, n) {
t.left && (e.left += n.x), t.right && (e.right += n.x), t.top && (e.top += n.y), t.bottom && (e.bottom += n.y), e.width = e.right - e.left, e.height = e.bottom - e.top;
}
function Je(t, e, n) {
var r = n && t.options[n];
return Re(De(r && r.origin || t.options.origin, t, e, [t && e])) || { x: 0, y: 0 };
}
function Ie(t, e) {
var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : function(l) {
return !0;
}, r = arguments.length > 3 ? arguments[3] : void 0;
if (r = r || {}, b.string(t) && t.search(" ") !== -1 && (t = gt(t)), b.array(t)) return t.forEach(function(l) {
return Ie(l, e, n, r);
}), r;
if (b.object(t) && (e = t, t = ""), b.func(e) && n(t)) r[t] = r[t] || [], r[t].push(e);
else if (b.array(e)) for (var i = 0, o = e; i < o.length; i++) {
var a = o[i];
Ie(t, a, n, r);
}
else if (b.object(e)) for (var s in e)
Ie(gt(s).map(function(l) {
return "".concat(t).concat(l);
}), e[s], n, r);
return r;
}
function gt(t) {
return t.trim().split(/ +/);
}
var We = function(t, e) {
return Math.sqrt(t * t + e * e);
}, Gt = ["webkit", "moz"];
function Qe(t, e) {
t.__set || (t.__set = {});
var n = function(i) {
if (Gt.some(function(o) {
return i.indexOf(o) === 0;
})) return 1;
typeof t[i] != "function" && i !== "__set" && Object.defineProperty(t, i, { get: function() {
return i in t.__set ? t.__set[i] : t.__set[i] = e[i];
}, set: function(o) {
t.__set[i] = o;
}, configurable: !0 });
};
for (var r in e) n(r);
return t;
}
function st(t, e) {
t.page = t.page || {}, t.page.x = e.page.x, t.page.y = e.page.y, t.client = t.client || {}, t.client.x = e.client.x, t.client.y = e.client.y, t.timeStamp = e.timeStamp;
}
function Ce(t) {
t.page.x = 0, t.page.y = 0, t.client.x = 0, t.client.y = 0;
}
function k(t) {
return t instanceof Y.Event || t instanceof Y.Touch;
}
function A(t, e, n) {
return t = t || "page", (n = n || {}).x = e[t + "X"], n.y = e[t + "Y"], n;
}
function $(t, e) {
return e = e || { x: 0, y: 0 }, G.isOperaMobile && k(t) ? (A("screen", t, e), e.x += window.scrollX, e.y += window.scrollY) : A("page", t, e), e;
}
function q(t) {
return b.number(t.pointerId) ? t.pointerId : t.identifier;
}
function oe(t, e, n) {
var r = e.length > 1 ? R(e) : e[0];
$(r, t.page), function(i, o) {
o = o || {}, G.isOperaMobile && k(i) ? A("screen", i, o) : A("client", i, o);
}(r, t.client), t.timeStamp = n;
}
function H(t) {
var e = [];
return b.array(t) ? (e[0] = t[0], e[1] = t[1]) : t.type === "touchend" ? t.touches.length === 1 ? (e[0] = t.touches[0], e[1] = t.changedTouches[0]) : t.touches.length === 0 && (e[0] = t.changedTouches[0], e[1] = t.changedTouches[1]) : (e[0] = t.touches[0], e[1] = t.touches[1]), e;
}
function R(t) {
for (var e = { pageX: 0, pageY: 0, clientX: 0, clientY: 0, screenX: 0, screenY: 0 }, n = 0; n < t.length; n++) {
var r = t[n];
for (var i in e) e[i] += r[i];
}
for (var o in e) e[o] /= t.length;
return e;
}
function se(t) {
if (!t.length) return null;
var e = H(t), n = Math.min(e[0].pageX, e[1].pageX), r = Math.min(e[0].pageY, e[1].pageY), i = Math.max(e[0].pageX, e[1].pageX), o = Math.max(e[0].pageY, e[1].pageY);
return { x: n, y: r, left: n, top: r, right: i, bottom: o, width: i - n, height: o - r };
}
function fe(t, e) {
var n = e + "X", r = e + "Y", i = H(t), o = i[0][n] - i[1][n], a = i[0][r] - i[1][r];
return We(o, a);
}
function ye(t, e) {
var n = e + "X", r = e + "Y", i = H(t), o = i[1][n] - i[0][n], a = i[1][r] - i[0][r];
return 180 * Math.atan2(a, o) / Math.PI;
}
function He(t) {
return b.string(t.pointerType) ? t.pointerType : b.number(t.pointerType) ? [void 0, void 0, "touch", "pen", "mouse"][t.pointerType] : /touch/.test(t.type || "") || t instanceof Y.Touch ? "touch" : "mouse";
}
function Ne(t) {
var e = b.func(t.composedPath) ? t.composedPath() : t.path;
return [Rt(e ? e[0] : t.target), Rt(t.currentTarget)];
}
var qe = function() {
function t(e) {
m(this, t), this.immediatePropagationStopped = !1, this.propagationStopped = !1, this._interaction = e;
}
return S(t, [{ key: "preventDefault", value: function() {
} }, { key: "stopPropagation", value: function() {
this.propagationStopped = !0;
} }, { key: "stopImmediatePropagation", value: function() {
this.immediatePropagationStopped = this.propagationStopped = !0;
} }]), t;
}();
Object.defineProperty(qe.prototype, "interaction", { get: function() {
return this._interaction._proxy;
}, set: function() {
} });
var ct = function(t, e) {
for (var n = 0; n < e.length; n++) {
var r = e[n];
t.push(r);
}
return t;
}, lt = function(t) {
return ct([], t);
}, Ae = function(t, e) {
for (var n = 0; n < t.length; n++) if (e(t[n], n, t)) return n;
return -1;
}, vt = function(t, e) {
return t[Ae(t, e)];
}, ut = function(t) {
U(n, t);
var e = re(n);
function n(r, i, o) {
var a;
m(this, n), (a = e.call(this, i._interaction)).dropzone = void 0, a.dragEvent = void 0, a.relatedTarget = void 0, a.draggable = void 0, a.propagationStopped = !1, a.immediatePropagationStopped = !1;
var s = o === "dragleave" ? r.prev : r.cur, l = s.element, p = s.dropzone;
return a.type = o, a.target = l, a.currentTarget = l, a.dropzone = p, a.dragEvent = i, a.relatedTarget = i.target, a.draggable = i.interactable, a.timeStamp = i.timeStamp, a;
}
return S(n, [{ key: "reject", value: function() {
var r = this, i = this._interaction.dropState;
if (this.type === "dropactivate" || this.dropzone && i.cur.dropzone === this.dropzone && i.cur.element === this.target) if (i.prev.dropzone = this.dropzone, i.prev.element = this.target, i.rejected = !0, i.events.enter = null, this.stopImmediatePropagation(), this.type === "dropactivate") {
var o = i.activeDrops, a = Ae(o, function(l) {
var p = l.dropzone, u = l.element;
return p === r.dropzone && u === r.target;
});
i.activeDrops.splice(a, 1);
var s = new n(i, this.dragEvent, "dropdeactivate");
s.dropzone = this.dropzone, s.target = this.target, this.dropzone.fire(s);
} else this.dropzone.fire(new n(i, this.dragEvent, "dragleave"));
} }, { key: "preventDefault", value: function() {
} }, { key: "stopPropagation", value: function() {
this.propagationStopped = !0;
} }, { key: "stopImmediatePropagation", value: function() {
this.immediatePropagationStopped = this.propagationStopped = !0;
} }]), n;
}(qe);
function Sn(t, e) {
for (var n = 0, r = t.slice(); n < r.length; n++) {
var i = r[n], o = i.dropzone, a = i.element;
e.dropzone = o, e.target = a, o.fire(e), e.propagationStopped = e.immediatePropagationStopped = !1;
}
}
function Ut(t, e) {
for (var n = function(o, a) {
for (var s = [], l = 0, p = o.interactables.list; l < p.length; l++) {
var u = p[l];
if (u.options.drop.enabled) {
var g = u.options.drop.accept;
if (!(b.element(g) && g !== a || b.string(g) && !ae(a, g) || b.func(g) && !g({ dropzone: u, draggableElement: a }))) for (var y = 0, E = u.getAllElements(); y < E.length; y++) {
var x = E[y];
x !== a && s.push({ dropzone: u, element: x, rect: u.getRect(x) });
}
}
}
return s;
}(t, e), r = 0; r < n.length; r++) {
var i = n[r];
i.rect = i.dropzone.getRect(i.element);
}
return n;
}
function Tn(t, e, n) {
for (var r = t.dropState, i = t.interactable, o = t.element, a = [], s = 0, l = r.activeDrops; s < l.length; s++) {
var p = l[s], u = p.dropzone, g = p.element, y = p.rect, E = u.dropCheck(e, n, i, o, g, y);
a.push(E ? g : null);
}
var x = function(T) {
for (var P, _, D, B = [], N = 0; N < T.length; N++) {
var I = T[N], j = T[P];
if (I && N !== P) if (j) {
var pe = Z(I), J = Z(j);
if (pe !== I.ownerDocument) if (J !== I.ownerDocument) if (pe !== J) {
B = B.length ? B : Me(j);
var be = void 0;
if (j instanceof Y.HTMLElement && I instanceof Y.SVGElement && !(I instanceof Y.SVGSVGElement)) {
if (I === J) continue;
be = I.ownerSVGElement;
} else be = I;
for (var Se = Me(be, j.ownerDocument), je = 0; Se[je] && Se[je] === B[je]; ) je++;
var Ht = [Se[je - 1], Se[je], B[je]];
if (Ht[0]) for (var Et = Ht[0].lastChild; Et; ) {
if (Et === Ht[1]) {
P = N, B = Se;
break;
}
if (Et === Ht[2]) break;
Et = Et.previousSibling;
}
} else D = j, (parseInt(K(_ = I).getComputedStyle(_).zIndex, 10) || 0) >= (parseInt(K(D).getComputedStyle(D).zIndex, 10) || 0) && (P = N);
else P = N;
} else P = N;
}
return P;
}(a);
return r.activeDrops[x] || null;
}
function Kt(t, e, n) {
var r = t.dropState, i = { enter: null, leave: null, activate: null, deactivate: null, move: null, drop: null };
return n.type === "dragstart" && (i.activate = new ut(r, n, "dropactivate"), i.activate.target = null, i.activate.dropzone = null), n.type === "dragend" && (i.deactivate = new ut(r, n, "dropdeactivate"), i.deactivate.target = null, i.deactivate.dropzone = null), r.rejected || (r.cur.element !== r.prev.element && (r.prev.dropzone && (i.leave = new ut(r, n, "dragleave"), n.dragLeave = i.leave.target = r.prev.element, n.prevDropzone = i.leave.dropzone = r.prev.dropzone), r.cur.dropzone && (i.enter = new ut(r, n, "dragenter"), n.dragEnter = r.cur.element, n.dropzone = r.cur.dropzone)), n.type === "dragend" && r.cur.dropzone && (i.drop = new ut(r, n, "drop"), n.dropzone = r.cur.dropzone, n.relatedTarget = r.cur.element), n.type === "dragmove" && r.cur.dropzone && (i.move = new ut(r, n, "dropmove"), n.dropzone = r.cur.dropzone)), i;
}
function Jt(t, e) {
var n = t.dropState, r = n.activeDrops, i = n.cur, o = n.prev;
e.leave && o.dropzone.fire(e.leave), e.enter && i.dropzone.fire(e.enter), e.move && i.dropzone.fire(e.move), e.drop && i.dropzone.fire(e.drop), e.deactivate && Sn(r, e.deactivate), n.prev.dropzone = i.dropzone, n.prev.element = i.element;
}
function zn(t, e) {
var n = t.interaction, r = t.iEvent, i = t.event;
if (r.type === "dragmove" || r.type === "dragend") {
var o = n.dropState;
e.dynamicDrop && (o.activeDrops = Ut(e, n.element));
var a = r, s = Tn(n, a, i);
o.rejected = o.rejected && !!s && s.dropzone === o.cur.dropzone && s.element === o.cur.element, o.cur.dropzone = s && s.dropzone, o.cur.element = s && s.element, o.events = Kt(n, 0, a);
}
}
var _n = { id: "actions/drop", install: function(t) {
var e = t.actions, n = t.interactStatic, r = t.Interactable, i = t.defaults;
t.usePlugin(O), r.prototype.dropzone = function(o) {
return function(a, s) {
if (b.object(s)) {
if (a.options.drop.enabled = s.enabled !== !1, s.listeners) {
var l = Ie(s.listeners), p = Object.keys(l).reduce(function(g, y) {
return g[/^(enter|leave)/.test(y) ? "drag".concat(y) : /^(activate|deactivate|move)/.test(y) ? "drop".concat(y) : y] = l[y], g;
}, {}), u = a.options.drop.listeners;
u && a.off(u), a.on(p), a.options.drop.listeners = p;
}
return b.func(s.ondrop) && a.on("drop", s.ondrop), b.func(s.ondropactivate) && a.on("dropactivate", s.ondropactivate), b.func(s.ondropdeactivate) && a.on("dropdeactivate", s.ondropdeactivate), b.func(s.ondragenter) && a.on("dragenter", s.ondragenter), b.func(s.ondragleave) && a.on("dragleave", s.ondragleave), b.func(s.ondropmove) && a.on("dropmove", s.ondropmove), /^(pointer|center)$/.test(s.overlap) ? a.options.drop.overlap = s.overlap : b.number(s.overlap) && (a.options.drop.overlap = Math.max(Math.min(1, s.overlap), 0)), "accept" in s && (a.options.drop.accept = s.accept), "checker" in s && (a.options.drop.checker = s.checker), a;
}
return b.bool(s) ? (a.options.drop.enabled = s, a) : a.options.drop;
}(this, o);
}, r.prototype.dropCheck = function(o, a, s, l, p, u) {
return function(g, y, E, x, T, P, _) {
var D = !1;
if (!(_ = _ || g.getRect(P))) return !!g.options.drop.checker && g.options.drop.checker(y, E, D, g, P, x, T);
var B = g.options.drop.overlap;
if (B === "pointer") {
var N = Je(x, T, "drag"), I = $(y);
I.x += N.x, I.y += N.y;
var j = I.x > _.left && I.x < _.right, pe = I.y > _.top && I.y < _.bottom;
D = j && pe;
}
var J = x.getRect(T);
if (J && B === "center") {
var be = J.left + J.width / 2, Se = J.top + J.height / 2;
D = be >= _.left && be <= _.right && Se >= _.top && Se <= _.bottom;
}
return J && b.number(B) && (D = Math.max(0, Math.min(_.right, J.right) - Math.max(_.left, J.left)) * Math.max(0, Math.min(_.bottom, J.bottom) - Math.max(_.top, J.top)) / (J.width * J.height) >= B), g.options.drop.checker && (D = g.options.drop.checker(y, E, D, g, P, x, T)), D;
}(this, o, a, s, l, p, u);
}, n.dynamicDrop = function(o) {
return b.bool(o) ? (t.dynamicDrop = o, n) : t.dynamicDrop;
}, M(e.phaselessTypes, { dragenter: !0, dragleave: !0, dropactivate: !0, dropdeactivate: !0, dropmove: !0, drop: !0 }), e.methodDict.drop = "dropzone", t.dynamicDrop = !1, i.actions.drop = _n.defaults;
}, listeners: { "interactions:before-action-start": function(t) {
var e = t.interaction;
e.prepared.name === "drag" && (e.dropState = { cur: { dropzone: null, element: null }, prev: { dropzone: null, element: null }, rejected: null, events: null, activeDrops: [] });
}, "interactions:after-action-start": function(t, e) {
var n = t.interaction, r = (t.event, t.iEvent);
if (n.prepared.name === "drag") {
var i = n.dropState;
i.activeDrops = [], i.events = {}, i.activeDrops = Ut(e, n.element), i.events = Kt(n, 0, r), i.events.activate && (Sn(i.activeDrops, i.events.activate), e.fire("actions/drop:start", { interaction: n, dragEvent: r }));
}
}, "interactions:action-move": zn, "interactions:after-action-move": function(t, e) {
var n = t.interaction, r = t.iEvent;
if (n.prepared.name === "drag") {
var i = n.dropState;
Jt(n, i.events), e.fire("actions/drop:move", { interaction: n, dragEvent: r }), i.events = {};
}
}, "interactions:action-end": function(t, e) {
if (t.interaction.prepared.name === "drag") {
var n = t.interaction, r = t.iEvent;
zn(t, e), Jt(n, n.dropState.events), e.fire("actions/drop:end", { interaction: n, dragEvent: r });
}
}, "interactions:stop": function(t) {
var e = t.interaction;
if (e.prepared.name === "drag") {
var n = e.dropState;
n && (n.activeDrops = null, n.events = null, n.cur.dropzone = null, n.cur.element = null, n.prev.dropzone = null, n.prev.element = null, n.rejected = !1);
}
} }, getActiveDrops: Ut, getDrop: Tn, getDropEvents: Kt, fireDropEvents: Jt, filterEventType: function(t) {
return t.search("drag") === 0 || t.search("drop") === 0;
}, defaults: { enabled: !1, accept: null, overlap: "pointer" } }, ni = _n;
function Qt(t) {
var e = t.interaction, n = t.iEvent, r = t.phase;
if (e.prepared.name === "gesture") {
var i = e.pointers.map(function(p) {
return p.pointer;
}), o = r === "start", a = r === "end", s = e.interactable.options.deltaSource;
if (n.touches = [i[0], i[1]], o) n.distance = fe(i, s), n.box = se(i), n.scale = 1, n.ds = 0, n.angle = ye(i, s), n.da = 0, e.gesture.startDistance = n.distance, e.gesture.startAngle = n.angle;
else if (a || e.pointers.length < 2) {
var l = e.prevEvent;
n.distance = l.distance, n.box = l.box, n.scale = l.scale, n.ds = 0, n.angle = l.angle, n.da = 0;
} else n.distance = fe(i, s), n.box = se(i), n.scale = n.distance / e.gesture.startDistance, n.angle = ye(i, s), n.ds = n.scale - e.gesture.scale, n.da = n.angle - e.gesture.angle;
e.gesture.distance = n.distance, e.gesture.angle = n.angle, b.number(n.scale) && n.scale !== 1 / 0 && !isNaN(n.scale) && (e.gesture.scale = n.scale);
}
}
var Zt = { id: "actions/gesture", before: ["actions/drag", "actions/resize"], install: function(t) {
var e = t.actions, n = t.Interactable, r = t.defaults;
n.prototype.gesturable = function(i) {
return b.object(i) ? (this.options.gesture.enabled = i.enabled !== !1, this.setPerAction("gesture", i), this.setOnEvents("gesture", i), this) : b.bool(i) ? (this.options.gesture.enabled = i, this) : this.options.gesture;
}, e.map.gesture = Zt, e.methodDict.gesture = "gesturable", r.actions.gesture = Zt.defaults;
}, listeners: { "interactions:action-start": Qt, "interactions:action-move": Qt, "interactions:action-end": Qt, "interactions:new": function(t) {
t.interaction.gesture = { angle: 0, distance: 0, scale: 1, startAngle: 0, startDistance: 0 };
}, "auto-start:check": function(t) {
if (!(t.interaction.pointers.length < 2)) {
var e = t.interactable.options.gesture;
if (e && e.enabled) return t.action = { name: "gesture" }, !1;
}
} }, defaults: {}, getCursor: function() {
return "";
}, filterEventType: function(t) {
return t.search("gesture") === 0;
} }, ri = Zt;
function ii(t, e, n, r, i, o, a) {
if (!e) return !1;
if (e === !0) {
var s = b.number(o.width) ? o.width : o.right - o.left, l = b.number(o.height) ? o.height : o.bottom - o.top;
if (a = Math.min(a, Math.abs((t === "left" || t === "right" ? s : l) / 2)), s < 0 && (t === "left" ? t = "right" : t === "right" && (t = "left")), l < 0 && (t === "top" ? t = "bottom" : t === "bottom" && (t = "top")), t === "left") {
var p = s >= 0 ? o.left : o.right;
return n.x < p + a;
}
if (t === "top") {
var u = l >= 0 ? o.top : o.bottom;
return n.y < u + a;
}
if (t === "right") return n.x > (s >= 0 ? o.right : o.left) - a;
if (t === "bottom") return n.y > (l >= 0 ? o.bottom : o.top) - a;
}
return !!b.element(r) && (b.element(e) ? e === r : ge(r, e, i));
}
function On(t) {
var e = t.iEvent, n = t.interaction;
if (n.prepared.name === "resize" && n.resizeAxes) {
var r = e;
n.interactable.options.resize.square ? (n.resizeAxes === "y" ? r.delta.x = r.delta.y : r.delta.y = r.delta.x, r.axes = "xy") : (r.axes = n.resizeAxes, n.resizeAxes === "x" ? r.delta.y = 0 : n.resizeAxes === "y" && (r.delta.x = 0));
}
}
var Be, Ze, Fe = { id: "actions/resize", before: ["actions/drag"], install: function(t) {
var e = t.actions, n = t.browser, r = t.Interactable, i = t.defaults;
Fe.cursors = function(o) {
return o.isIe9 ? { x: "e-resize", y: "s-resize", xy: "se-resize", top: "n-resize", left: "w-resize", bottom: "s-resize", right: "e-resize", topleft: "se-resize", bottomright: "se-resize", topright: "ne-resize", bottomleft: "ne-resize" } : { x: "ew-resize", y: "ns-resize", xy: "nwse-resize", top: "ns-resize", left: "ew-resize", bottom: "ns-resize", right: "ew-resize", topleft: "nwse-resize", bottomright: "nwse-resize", topright: "nesw-resize", bottomleft: "nesw-resize" };
}(n), Fe.defaultMargin = n.supportsTouch || n.supportsPointerEvent ? 20 : 10, r.prototype.resizable = function(o) {
return function(a, s, l) {
return b.object(s) ? (a.options.resize.enabled = s.enabled !== !1, a.setPerAction("resize", s), a.setOnEvents("resize", s), b.string(s.axis) && /^x$|^y$|^xy$/.test(s.axis) ? a.options.resize.axis = s.axis : s.axis === null && (a.options.resize.axis = l.defaults.actions.resize.axis), b.bool(s.preserveAspectRatio) ? a.options.resize.preserveAspectRatio = s.preserveAspectRatio : b.bool(s.square) && (a.options.resize.square = s.square), a) : b.bool(s) ? (a.options.resize.enabled = s, a) : a.options.resize;
}(this, o, t);
}, e.map.resize = Fe, e.methodDict.resize = "resizable", i.actions.resize = Fe.defaults;
}, listeners: { "interactions:new": function(t) {
t.interaction.resizeAxes = "xy";
}, "interactions:action-start": function(t) {
(function(e) {
var n = e.iEvent, r = e.interaction;
if (r.prepared.name === "resize" && r.prepared.edges) {
var i = n, o = r.rect;
r._rects = { start: M({}, o), corrected: M({}, o), previous: M({}, o), delta: { left: 0, right: 0, width: 0, top: 0, bottom: 0, height: 0 } }, i.edges = r.prepared.edges, i.rect = r._rects.corrected, i.deltaRect = r._rects.delta;
}
})(t), On(t);
}, "interactions:action-move": functi