diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 7e0d25d..39d907c 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -223,4 +223,4 @@ # env: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} -# CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} \ No newline at end of file +# CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} diff --git a/analyze/client.html b/analyze/client.html index 2cf6401..997a943 100644 --- a/analyze/client.html +++ b/analyze/client.html @@ -61,7 +61,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Button__button{background:#fff;border:1px solid #aaa;border-radius:4px;cursor:pointer;display:inline-block;font:var(--main-font);outline:none;padding:5px 7px;transition:background .3s ease;white-space:nowrap}.Button__button:focus,.Button__button:hover{background:#ffefd7}.Button__button.Button__active{background:orange;color:#000}.Button__button[disabled]{cursor:default}', '', @@ -77,7 +77,7 @@ sourceRoot: '', }, ]), - (a.locals = { button: 'Button__button', active: 'Button__active' }) + (a.locals = { button: 'Button__button', active: 'Button__active' })) const s = a }, 396: (e, t, n) => { @@ -87,7 +87,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Checkbox__label{display:inline-block}.Checkbox__checkbox,.Checkbox__label{cursor:pointer}.Checkbox__itemText{margin-left:3px;position:relative;top:-2px;vertical-align:middle}', '', @@ -107,7 +107,7 @@ label: 'Checkbox__label', checkbox: 'Checkbox__checkbox', itemText: 'Checkbox__itemText', - }) + })) const s = a }, 213: (e, t, n) => { @@ -117,7 +117,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.CheckboxList__container{font:var(--main-font);white-space:nowrap}.CheckboxList__label{font-size:11px;font-weight:700;margin-bottom:7px}.CheckboxList__item+.CheckboxList__item{margin-top:1px}', '', @@ -137,7 +137,7 @@ container: 'CheckboxList__container', label: 'CheckboxList__label', item: 'CheckboxList__item', - }) + })) const s = a }, 580: (e, t, n) => { @@ -147,7 +147,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.ContextMenu__container{background:#fff;border:1px solid #aaa;border-radius:4px;font:var(--main-font);list-style:none;opacity:1;padding:0;position:absolute;transition:opacity .2s ease,visibility .2s ease;visibility:visible;white-space:nowrap}.ContextMenu__hidden{opacity:0;visibility:hidden}', '', @@ -163,7 +163,7 @@ sourceRoot: '', }, ]), - (a.locals = { container: 'ContextMenu__container', hidden: 'ContextMenu__hidden' }) + (a.locals = { container: 'ContextMenu__container', hidden: 'ContextMenu__hidden' })) const s = a }, 270: (e, t, n) => { @@ -173,7 +173,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.ContextMenuItem__item{cursor:pointer;margin:0;padding:8px 14px;-webkit-user-select:none;user-select:none}.ContextMenuItem__item:hover{background:#ffefd7}.ContextMenuItem__disabled{color:grey;cursor:default}.ContextMenuItem__item.ContextMenuItem__disabled:hover{background:transparent}', '', @@ -192,7 +192,7 @@ (a.locals = { item: 'ContextMenuItem__item', disabled: 'ContextMenuItem__disabled', - }) + })) const s = a }, 172: (e, t, n) => { @@ -202,7 +202,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Dropdown__container{font:var(--main-font);white-space:nowrap}.Dropdown__label{font-size:11px;font-weight:700;margin-bottom:7px}.Dropdown__input{border:1px solid #aaa;border-radius:4px;color:#7f7f7f;display:block;height:27px;width:100%}.Dropdown__option{cursor:pointer;padding:4px 0}', '', @@ -223,7 +223,7 @@ label: 'Dropdown__label', input: 'Dropdown__input', option: 'Dropdown__option', - }) + })) const s = a }, 746: (e, t, n) => { @@ -233,7 +233,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Icon__icon{background:no-repeat 50%/contain;display:inline-block}', '', @@ -248,7 +248,7 @@ sourceRoot: '', }, ]), - (a.locals = { icon: 'Icon__icon' }) + (a.locals = { icon: 'Icon__icon' })) const s = a }, 697: (e, t, n) => { @@ -269,7 +269,7 @@ g = u()(c.Z), b = u()(h.Z), v = u()(f.Z) - d.push([ + ;(d.push([ e.id, '.ModuleItem__container{background:no-repeat 0;cursor:pointer;margin-bottom:4px;padding-left:18px;position:relative;white-space:nowrap}.ModuleItem__container.ModuleItem__module{background-image:url(' + p + @@ -299,7 +299,7 @@ folder: 'ModuleItem__folder', chunk: 'ModuleItem__chunk', invisible: 'ModuleItem__invisible', - }) + })) const m = d }, 784: (e, t, n) => { @@ -309,7 +309,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.ModulesList__container{font:var(--main-font)}', '', @@ -322,7 +322,7 @@ sourceRoot: '', }, ]), - (a.locals = { container: 'ModulesList__container' }) + (a.locals = { container: 'ModulesList__container' })) const s = a }, 393: (e, t, n) => { @@ -332,7 +332,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.ModulesTreemap__container{align-items:stretch;display:flex;height:100%;position:relative;width:100%}.ModulesTreemap__map{flex:1}.ModulesTreemap__sidebarGroup{font:var(--main-font);margin-bottom:20px}.ModulesTreemap__showOption{margin-top:5px}.ModulesTreemap__activeSize{font-weight:700}.ModulesTreemap__foundModulesInfo{display:flex;font:var(--main-font);margin:8px 0 0}.ModulesTreemap__foundModulesInfoItem+.ModulesTreemap__foundModulesInfoItem{margin-left:15px}.ModulesTreemap__foundModulesContainer{margin-top:15px;max-height:600px;overflow:auto}.ModulesTreemap__foundModulesChunk+.ModulesTreemap__foundModulesChunk{margin-top:15px}.ModulesTreemap__foundModulesChunkName{cursor:pointer;font:var(--main-font);font-weight:700;margin-bottom:7px}.ModulesTreemap__foundModulesList{margin-left:7px}', '', @@ -360,7 +360,7 @@ foundModulesChunk: 'ModulesTreemap__foundModulesChunk', foundModulesChunkName: 'ModulesTreemap__foundModulesChunkName', foundModulesList: 'ModulesTreemap__foundModulesList', - }) + })) const s = a }, 976: (e, t, n) => { @@ -370,7 +370,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Search__container{font:var(--main-font);white-space:nowrap}.Search__label{font-weight:700;margin-bottom:7px}.Search__row{display:flex}.Search__input{border:1px solid #aaa;border-radius:4px;display:block;flex:1;padding:5px}.Search__clear{flex:0 0 auto;line-height:1;margin-left:3px;padding:5px 8px 7px}', '', @@ -392,7 +392,7 @@ row: 'Search__row', input: 'Search__input', clear: 'Search__clear', - }) + })) const s = a }, 826: (e, t, n) => { @@ -402,7 +402,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Sidebar__container{background:#fff;border:none;border-right:1px solid #aaa;box-sizing:border-box;max-width:calc(50% - 10px);opacity:.95;z-index:1}.Sidebar__container:not(.Sidebar__hidden){min-width:200px}.Sidebar__container:not(.Sidebar__pinned){bottom:0;position:absolute;top:0;transition:transform .2s ease}.Sidebar__container.Sidebar__pinned{position:relative}.Sidebar__container.Sidebar__left{left:0}.Sidebar__container.Sidebar__left.Sidebar__hidden{transform:translateX(calc(-100% + 7px))}.Sidebar__content{box-sizing:border-box;height:100%;overflow-y:auto;padding:25px 20px 20px;width:100%}.Sidebar__empty.Sidebar__pinned .Sidebar__content{padding:0}.Sidebar__pinButton,.Sidebar__toggleButton{cursor:pointer;height:26px;line-height:0;position:absolute;top:10px;width:27px}.Sidebar__pinButton{right:47px}.Sidebar__toggleButton{padding-left:6px;right:15px}.Sidebar__hidden .Sidebar__toggleButton{right:-35px;transition:transform .2s ease}.Sidebar__hidden .Sidebar__toggleButton:hover{transform:translateX(4px)}.Sidebar__resizer{bottom:0;cursor:col-resize;position:absolute;right:0;top:0;width:7px}', '', @@ -429,7 +429,7 @@ pinButton: 'Sidebar__pinButton', toggleButton: 'Sidebar__toggleButton', resizer: 'Sidebar__resizer', - }) + })) const s = a }, 897: (e, t, n) => { @@ -439,7 +439,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Switcher__container{font:var(--main-font);white-space:nowrap}.Switcher__label{font-size:11px;font-weight:700;margin-bottom:7px}.Switcher__item+.Switcher__item{margin-left:5px}', '', @@ -459,7 +459,7 @@ container: 'Switcher__container', label: 'Switcher__label', item: 'Switcher__item', - }) + })) const s = a }, 527: (e, t, n) => { @@ -469,7 +469,7 @@ r = n.n(i), o = n(645), a = n.n(o)()(r()) - a.push([ + ;(a.push([ e.id, '.Tooltip__container{background:#fff;border:1px solid #aaa;border-radius:4px;font:var(--main-font);opacity:.9;padding:5px 10px;position:absolute;transition:opacity .2s ease,visibility .2s ease;visibility:visible;white-space:nowrap}.Tooltip__hidden{opacity:0;visibility:hidden}', '', @@ -485,7 +485,7 @@ sourceRoot: '', }, ]), - (a.locals = { container: 'Tooltip__container', hidden: 'Tooltip__hidden' }) + (a.locals = { container: 'Tooltip__container', hidden: 'Tooltip__hidden' })) const s = a }, 194: (e, t, n) => { @@ -566,7 +566,7 @@ a = !0 ); } catch (u) { - ;(s = !0), (r = u) + ;((s = !0), (r = u)) } finally { try { a || null == n.return || n.return() @@ -639,9 +639,13 @@ } null == t && (t = 100) var l = function () { - ;(o = this), (r = arguments), (a = Date.now()) + ;((o = this), (r = arguments), (a = Date.now())) var l = n && !i - return i || (i = setTimeout(u, t)), l && ((s = e.apply(o, r)), (o = r = null)), s + return ( + i || (i = setTimeout(u, t)), + l && ((s = e.apply(o, r)), (o = r = null)), + s + ) } return ( (l.clear = function () { @@ -653,7 +657,7 @@ l ) } - ;(t.debounce = t), (e.exports = t) + ;((t.debounce = t), (e.exports = t)) }, 150: e => { 'use strict' @@ -732,19 +736,19 @@ 'exponent' === g) ) return o - if (0 === p) (M[0] = 0), (m = M[1] = y ? '' : t[_][s ? 'bits' : 'bytes'][o]) + if (0 === p) ((M[0] = 0), (m = M[1] = y ? '' : t[_][s ? 'bits' : 'bytes'][o])) else { - ;(T = p / (2 === a ? Math.pow(2, 10 * o) : Math.pow(1e3, o))), - s && (T *= 8) >= u && o < 8 && ((T /= u), o++) + ;((T = p / (2 === a ? Math.pow(2, 10 * o) : Math.pow(1e3, o))), + s && (T *= 8) >= u && o < 8 && ((T /= u), o++)) var k = Math.pow(10, o > 0 ? v : 0) - ;(M[0] = A(T * k) / k), + ;((M[0] = A(T * k) / k), M[0] === u && o < 8 && void 0 === S.exponent && ((M[0] = 1), o++), (m = M[1] = 10 === a && 1 === o ? (s ? 'kb' : 'kB') : t[_][s ? 'bits' : 'bytes'][o]), y && ((M[1] = 'jedec' === _ ? M[1].charAt(0) : o > 0 ? M[1].replace(/B$/, '') : M[1]), - e.test(M[1]) && ((M[0] = Math.floor(M[0])), (M[1] = ''))) + e.test(M[1]) && ((M[0] = Math.floor(M[0])), (M[1] = '')))) } if ( (d && (M[0] = -M[0]), @@ -832,10 +836,10 @@ n[u] = l + 1 var h = s(c), f = { css: o[1], media: o[2], sourceMap: o[3] } - ;-1 !== h + ;(-1 !== h ? (a[h].references++, a[h].updater(f)) : a.push({ identifier: c, updater: b(f, t), references: 1 }), - i.push(c) + i.push(c)) } return i } @@ -867,7 +871,7 @@ h = ((c = []), function (e, t) { - return (c[e] = t), c.filter(Boolean).join('\n') + return ((c[e] = t), c.filter(Boolean).join('\n')) }) function f(e, t, n, i) { var r = n @@ -879,7 +883,8 @@ else { var o = document.createTextNode(r), a = e.childNodes - a[t] && e.removeChild(a[t]), a.length ? e.insertBefore(o, a[t]) : e.appendChild(o) + ;(a[t] && e.removeChild(a[t]), + a.length ? e.insertBefore(o, a[t]) : e.appendChild(o)) } } function d(e, t, n) { @@ -908,16 +913,18 @@ var n, i, r if (t.singleton) { var o = g++ - ;(n = p || (p = l(t))), (i = f.bind(null, n, o, !1)), (r = f.bind(null, n, o, !0)) + ;((n = p || (p = l(t))), + (i = f.bind(null, n, o, !1)), + (r = f.bind(null, n, o, !0))) } else - (n = l(t)), + ((n = l(t)), (i = d.bind(null, n, t)), (r = function () { !(function (e) { if (null === e.parentNode) return !1 e.parentNode.removeChild(e) })(n) - }) + })) return ( i(e), function (t) { @@ -977,11 +984,11 @@ var r = t[i] if (void 0 !== r) return r.exports var o = (t[i] = { id: i, exports: {} }) - return e[i].call(o.exports, o, o.exports, n), o.exports + return (e[i].call(o.exports, o, o.exports, n), o.exports) } - ;(n.n = e => { + ;((n.n = e => { var t = e && e.__esModule ? () => e.default : () => e - return n.d(t, { a: t }), t + return (n.d(t, { a: t }), t) }), (n.d = (e, t) => { for (var i in t) @@ -1035,7 +1042,7 @@ constructor: void 0, __v: null == o ? ++e.__v : o, } - return null != e.vnode && e.vnode(a), a + return (null != e.vnode && e.vnode(a), a) } function d() { return { current: null } @@ -1044,7 +1051,7 @@ return e.children } function g(e, t) { - ;(this.props = e), (this.context = t) + ;((this.props = e), (this.context = t)) } function b(e, t) { if (null == t) return e.__ ? b(e.__, e.__.__k.indexOf(e) + 1) : null @@ -1069,7 +1076,7 @@ } function y() { for (var e; (y.__r = t.length); ) - (e = t.sort(function (e, t) { + ((e = t.sort(function (e, t) { return e.__v.__b - t.__v.__b })), (t = []), @@ -1093,7 +1100,7 @@ ), z(n, r), r.__e != o && v(r))) - }) + })) } function C(e, t, n, i, r, o, u, l, c, h) { var d, @@ -1133,7 +1140,7 @@ } v = null } - k(e, m, (v = v || a), r, o, u, l, c, h), + ;(k(e, m, (v = v || a), r, o, u, l, c, h), (y = m.__e), (g = m.ref) && v.ref != g && @@ -1146,7 +1153,7 @@ h || 'option' !== n.type ? 'function' == typeof n.type && (n.__d = c) : (e.value = '')) - : c && v.__e == c && c.parentNode != e && (c = b(v)) + : c && v.__e == c && c.parentNode != e && (c = b(v))) } for (n.__e = C, d = S; d--; ) null != A[d] && @@ -1180,13 +1187,13 @@ } function x(e, t, n, i, r, o) { var a, s, u - if (void 0 !== t.__d) (a = t.__d), (t.__d = void 0) + if (void 0 !== t.__d) ((a = t.__d), (t.__d = void 0)) else if (null == n || r != o || null == r.parentNode) - e: if (null == o || o.parentNode !== e) e.appendChild(r), (a = null) + e: if (null == o || o.parentNode !== e) (e.appendChild(r), (a = null)) else { for (s = o, u = 0; (s = s.nextSibling) && u < i.length; u += 2) if (s == r) break e - e.insertBefore(r, o), (a = o) + ;(e.insertBefore(r, o), (a = o)) } return void 0 !== a ? a : r.nextSibling } @@ -1205,13 +1212,13 @@ if (n) for (t in n) (i && n[t] === i[t]) || A(e.style, t, n[t]) } else if ('o' === t[0] && 'n' === t[1]) - (o = t !== (t = t.replace(/Capture$/, ''))), + ((o = t !== (t = t.replace(/Capture$/, ''))), (t = t.toLowerCase() in e ? t.toLowerCase().slice(2) : t.slice(2)), e.l || (e.l = {}), (e.l[t + o] = n), n ? i || e.addEventListener(t, o ? T : M, o) - : e.removeEventListener(t, o ? T : M, o) + : e.removeEventListener(t, o ? T : M, o)) else if ('dangerouslySetInnerHTML' !== t) { if (r) t = t.replace(/xlink[H:h]/, 'h').replace(/sName$/, 's') else if ( @@ -1252,8 +1259,8 @@ A, S = n.type if (void 0 !== n.constructor) return null - null != i.__h && ((c = i.__h), (u = n.__e = i.__e), (n.__h = null), (a = [u])), - (h = e.__b) && h(n) + ;(null != i.__h && ((c = i.__h), (u = n.__e = i.__e), (n.__h = null), (a = [u])), + (h = e.__b) && h(n)) try { e: if ('function' == typeof S) { if ( @@ -1280,10 +1287,10 @@ (v = f.state), d) ) - null == S.getDerivedStateFromProps && + (null == S.getDerivedStateFromProps && null != f.componentWillMount && f.componentWillMount(), - null != f.componentDidMount && f.__h.push(f.componentDidMount) + null != f.componentDidMount && f.__h.push(f.componentDidMount)) else { if ( (null == S.getDerivedStateFromProps && @@ -1295,7 +1302,7 @@ !1 === f.shouldComponentUpdate(w, f.__s, x)) || n.__v === i.__v) ) { - ;(f.props = w), + ;((f.props = w), (f.state = f.__s), n.__v !== i.__v && (f.__d = !1), (f.__v = n), @@ -1304,16 +1311,16 @@ n.__k.forEach(function (e) { e && (e.__ = n) }), - f.__h.length && s.push(f) + f.__h.length && s.push(f)) break e } - null != f.componentWillUpdate && f.componentWillUpdate(w, f.__s, x), + ;(null != f.componentWillUpdate && f.componentWillUpdate(w, f.__s, x), null != f.componentDidUpdate && f.__h.push(function () { f.componentDidUpdate(b, v, m) - }) + })) } - ;(f.context = x), + ;((f.context = x), (f.props = w), (f.state = f.__s), (h = e.__r) && h(n), @@ -1330,31 +1337,31 @@ (n.__h = null), f.__h.length && s.push(f), y && (f.__E = f.__ = null), - (f.__e = !1) + (f.__e = !1)) } else null == a && n.__v === i.__v ? ((n.__k = i.__k), (n.__e = i.__e)) : (n.__e = D(i.__e, n, i, r, o, a, s, c)) ;(h = e.diffed) && h(n) } catch (t) { - ;(n.__v = null), + ;((n.__v = null), (c || null != a) && ((n.__e = u), (n.__h = !!c), (a[a.indexOf(u)] = null)), - e.__e(t, n, i) + e.__e(t, n, i)) } } function z(t, n) { - e.__c && e.__c(n, t), + ;(e.__c && e.__c(n, t), t.some(function (n) { try { - ;(t = n.__h), + ;((t = n.__h), (n.__h = []), t.some(function (e) { e.call(n) - }) + })) } catch (t) { e.__e(t, n.__v) } - }) + })) } function D(e, t, n, i, r, o, u, l) { var h, @@ -1368,16 +1375,16 @@ if (('svg' === v && (r = !0), null != o)) for (; m < o.length; m++) if ((h = o[m]) && (h === e || (v ? h.localName == v : 3 == h.nodeType))) { - ;(e = h), (o[m] = null) + ;((e = h), (o[m] = null)) break } if (null == e) { if (null === v) return document.createTextNode(b) - ;(e = r + ;((e = r ? document.createElementNS('http://www.w3.org/2000/svg', v) : document.createElement(v, b.is && b)), (o = null), - (l = !1) + (l = !1)) } if (null === v) g === b || (l && e.data === b) || (e.data = b) else { @@ -1471,7 +1478,7 @@ } function j(t, n, i) { var r, o, u - e.__ && e.__(t, n), + ;(e.__ && e.__(t, n), (o = (r = 'function' == typeof i) ? null : (i && i.__k) || n.__k), (u = []), k( @@ -1485,7 +1492,7 @@ !r && i ? i : o ? o.__e : n.firstChild, r ), - z(u, t) + z(u, t)) } function O(e, t) { j(e, t, O) @@ -1498,7 +1505,7 @@ s = l({}, e.props) for (o in t) 'key' == o ? (i = t[o]) : 'ref' == o ? (r = t[o]) : (s[o] = t[o]) if (arguments.length > 3) for (n = [n], o = 3; o < arguments.length; o++) n.push(a[o]) - return null != n && (s.children = n), f(e.type, s, i || e.key, r || e.ref, null) + return (null != n && (s.children = n), f(e.type, s, i || e.key, r || e.ref, null)) } function N(e, t, n, i) { n && @@ -1532,7 +1539,7 @@ o ) } - ;(e = { + ;((e = { __e: function (e, t) { for (var n, i, r; (t = t.__); ) if ((n = t.__c) && !n.__) @@ -1554,13 +1561,13 @@ }), (g.prototype.setState = function (e, t) { var n - ;(n = + ;((n = null != this.__s && this.__s !== this.state ? this.__s : (this.__s = l({}, this.state))), 'function' == typeof e && (e = e(l({}, n), this.props)), e && l(n, e), - null != e && this.__v && (t && this.__h.push(t), m(this)) + null != e && this.__v && (t && this.__h.push(t), m(this))) }), (g.prototype.forceUpdate = function (e) { this.__v && ((this.__e = !0), e && this.__h.push(e), m(this)) @@ -1572,7 +1579,7 @@ ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout), (y.__r = 0), - (o = 0) + (o = 0)) const F = [] Object.freeze(F) const R = {} @@ -1594,7 +1601,7 @@ function q(e) { let t = !1 return function () { - if (!t) return (t = !0), e.apply(this, arguments) + if (!t) return ((t = !0), e.apply(this, arguments)) } } const V = () => {} @@ -1654,13 +1661,13 @@ ne = Symbol('mobx administration') class ie { constructor(e = 'Atom@' + G()) { - ;(this.name = e), + ;((this.name = e), (this.isPendingUnobservation = !1), (this.isBeingObserved = !1), (this.observers = new Set()), (this.diffValue = 0), (this.lastAccessedBy = 0), - (this.lowestObserverState = Be.NOT_TRACKING) + (this.lowestObserverState = Be.NOT_TRACKING)) } onBecomeObserved() { this.onBecomeObservedListeners && this.onBecomeObservedListeners.forEach(e => e()) @@ -1673,17 +1680,17 @@ return ft(this) } reportChanged() { - ct(), + ;(ct(), (function (e) { if (e.lowestObserverState === Be.STALE) return - ;(e.lowestObserverState = Be.STALE), + ;((e.lowestObserverState = Be.STALE), e.observers.forEach(t => { - t.dependenciesState === Be.UP_TO_DATE && + ;(t.dependenciesState === Be.UP_TO_DATE && (t.isTracing !== Le.NONE && dt(t, e), t.onBecomeStale()), - (t.dependenciesState = Be.STALE) - }) + (t.dependenciesState = Be.STALE)) + })) })(this), - ht() + ht()) } toString() { return this.name @@ -1693,7 +1700,7 @@ function oe(e, t = V, n = V) { const i = new ie(e) var r - return t !== V && Bt('onBecomeObserved', i, t, r), n !== V && Dt(i, n), i + return (t !== V && Bt('onBecomeObserved', i, t, r), n !== V && Dt(i, n), i) } const ae = { identity: function (e, t) { @@ -1721,10 +1728,10 @@ configurable: !0, enumerable: t, get() { - return fe(this), this[e] + return (fe(this), this[e]) }, set(t) { - fe(this), (this[e] = t) + ;(fe(this), (this[e] = t)) }, }) ) @@ -1751,7 +1758,7 @@ return function () { let n const i = function (i, r, o, a) { - if (!0 === a) return t(i, r, o, i, n), null + if (!0 === a) return (t(i, r, o, i, n), null) if (!Object.prototype.hasOwnProperty.call(i, ue)) { const e = i[ue] $(i, ue, Object.assign({}, e)) @@ -1801,7 +1808,7 @@ const a = i ? (i.initializer ? i.initializer.call(t) : i.value) : void 0 dn(t).addObservableProp(n, a, e) }) - return (t.enhancer = e), t + return ((t.enhancer = e), t) } const me = { deep: !0, name: void 0, defaultDecorator: void 0, proxy: !0 } function ye(e) { @@ -1840,7 +1847,7 @@ const n = ye(t) return (function (e, t, n = 'ObservableArray@' + G(), i = !1) { const r = new Qt(n, t, i) - ;(o = r.values), + ;((o = r.values), (a = ne), (s = r), Object.defineProperty(o, a, { @@ -1848,12 +1855,12 @@ writable: !1, configurable: !0, value: s, - }) + })) var o, a, s const u = new Proxy(r.values, Xt) if (((r.proxy = u), e && e.length)) { const t = Ye(!0) - r.spliceWithArray(0, 0, e), Je(t) + ;(r.spliceWithArray(0, 0, e), Je(t)) } return u })(e, Ae(n), n.name) @@ -1876,9 +1883,9 @@ const n = jt(i), r = (function (e) { const t = new Proxy(e, Vt) - return (e[ne].proxy = t), t + return ((e[ne].proxy = t), t) })(Et({}, void 0, void 0, i)) - return Ot(r, e, t, n), r + return (Ot(r, e, t, n), r) } }, ref: _e, @@ -1927,16 +1934,18 @@ ) } var Be, Le - ;(De.struct = ze), + ;((De.struct = ze), (function (e) { - ;(e[(e.NOT_TRACKING = -1)] = 'NOT_TRACKING'), + ;((e[(e.NOT_TRACKING = -1)] = 'NOT_TRACKING'), (e[(e.UP_TO_DATE = 0)] = 'UP_TO_DATE'), (e[(e.POSSIBLY_STALE = 1)] = 'POSSIBLY_STALE'), - (e[(e.STALE = 2)] = 'STALE') + (e[(e.STALE = 2)] = 'STALE')) })(Be || (Be = {})), (function (e) { - ;(e[(e.NONE = 0)] = 'NONE'), (e[(e.LOG = 1)] = 'LOG'), (e[(e.BREAK = 2)] = 'BREAK') - })(Le || (Le = {})) + ;((e[(e.NONE = 0)] = 'NONE'), + (e[(e.LOG = 1)] = 'LOG'), + (e[(e.BREAK = 2)] = 'BREAK')) + })(Le || (Le = {}))) class Ee { constructor(e) { this.cause = e @@ -1965,26 +1974,26 @@ try { r.get() } catch (u) { - return Ge(n), Ue(t), !0 + return (Ge(n), Ue(t), !0) } - if (e.dependenciesState === Be.STALE) return Ge(n), Ue(t), !0 + if (e.dependenciesState === Be.STALE) return (Ge(n), Ue(t), !0) } } - return qe(e), Ge(n), Ue(t), !1 + return (qe(e), Ge(n), Ue(t), !1) } } } function Ie(e) { const t = e.observers.size > 0 - at.computationDepth > 0 && t && H(!1), - at.allowStateChanges || (!t && 'strict' !== at.enforceActions) || H(!1) + ;(at.computationDepth > 0 && t && H(!1), + at.allowStateChanges || (!t && 'strict' !== at.enforceActions) || H(!1)) } function Ne(e, t, n) { const i = He(!0) - qe(e), + ;(qe(e), (e.newObserving = new Array(e.observing.length + 100)), (e.unboundDepsCount = 0), - (e.runId = ++at.runId) + (e.runId = ++at.runId)) const r = at.trackingDerivation let o if (((at.trackingDerivation = e), !0 === at.disableErrorBoundaries)) o = t.call(n) @@ -2004,13 +2013,13 @@ o = e.unboundDepsCount for (let a = 0; a < o; a++) { const e = n[a] - 0 === e.diffValue && ((e.diffValue = 1), r !== a && (n[r] = e), r++), - e.dependenciesState > i && (i = e.dependenciesState) + ;(0 === e.diffValue && ((e.diffValue = 1), r !== a && (n[r] = e), r++), + e.dependenciesState > i && (i = e.dependenciesState)) } - ;(n.length = r), (e.newObserving = null), (o = t.length) + ;((n.length = r), (e.newObserving = null), (o = t.length)) for (; o--; ) { const n = t[o] - 0 === n.diffValue && ut(n, e), (n.diffValue = 0) + ;(0 === n.diffValue && ut(n, e), (n.diffValue = 0)) } for (; r--; ) { const t = n[r] @@ -2039,14 +2048,14 @@ } function Re() { const e = at.trackingDerivation - return (at.trackingDerivation = null), e + return ((at.trackingDerivation = null), e) } function Ge(e) { at.trackingDerivation = e } function He(e) { const t = at.allowStateReads - return (at.allowStateReads = e), t + return ((at.allowStateReads = e), t) } function Ue(e) { at.allowStateReads = e @@ -2066,7 +2075,7 @@ const i = function () { return Ke(e, t, n || this, arguments) } - return (i.isMobxAction = !0), i + return ((i.isMobxAction = !0), i) } function Ke(e, t, n, i) { const r = (function (e, t, n) { @@ -2086,7 +2095,7 @@ actionId: We++, parentActionId: Ve, } - return (Ve = u.actionId), u + return ((Ve = u.actionId), u) })() try { return t.apply(n, i) @@ -2096,31 +2105,31 @@ !(function (e) { Ve !== e.actionId && H('invalid action stack. did you forget to finish an action?') - ;(Ve = e.parentActionId), void 0 !== e.error && (at.suppressReactionErrors = !0) - Je(e.prevAllowStateChanges), + ;((Ve = e.parentActionId), void 0 !== e.error && (at.suppressReactionErrors = !0)) + ;(Je(e.prevAllowStateChanges), Ue(e.prevAllowStateReads), ht(), Ge(e.prevDerivation), - e.notifySpy + e.notifySpy) at.suppressReactionErrors = !1 })(r) } } function Ye(e) { const t = at.allowStateChanges - return (at.allowStateChanges = e), t + return ((at.allowStateChanges = e), t) } function Je(e) { at.allowStateChanges = e } class Xe extends ie { constructor(e, t, n = 'ObservableValue@' + G(), i = !0, r = ae.default) { - super(n), + ;(super(n), (this.enhancer = t), (this.name = n), (this.equals = r), (this.hasUnreportedChange = !1), - (this.value = t(e, void 0, n)) + (this.value = t(e, void 0, n))) } dehanceValue(e) { return void 0 !== this.dehancer ? this.dehancer(e) : e @@ -2128,7 +2137,7 @@ set(e) { this.value if ((e = this.prepareNewValue(e)) !== at.UNCHANGED) { - 0, this.setNewValue(e) + ;(0, this.setNewValue(e)) } } prepareNewValue(e) { @@ -2144,12 +2153,12 @@ } setNewValue(e) { const t = this.value - ;(this.value = e), + ;((this.value = e), this.reportChanged(), - Kt(this) && Jt(this, { type: 'update', object: this, newValue: e, oldValue: t }) + Kt(this) && Jt(this, { type: 'update', object: this, newValue: e, oldValue: t })) } get() { - return this.reportObserved(), this.dehanceValue(this.value) + return (this.reportObserved(), this.dehanceValue(this.value)) } intercept(e) { return Zt(this, e) @@ -2176,7 +2185,7 @@ K('ObservableValue', Xe) class Qe { constructor(e) { - ;(this.dependenciesState = Be.NOT_TRACKING), + ;((this.dependenciesState = Be.NOT_TRACKING), (this.observing = []), (this.newObserving = null), (this.isBeingObserved = !1), @@ -2200,18 +2209,18 @@ e.equals || (e.compareStructural || e.struct ? ae.structural : ae.default)), (this.scope = e.context), (this.requiresReaction = !!e.requiresReaction), - (this.keepAlive = !!e.keepAlive) + (this.keepAlive = !!e.keepAlive)) } onBecomeStale() { !(function (e) { if (e.lowestObserverState !== Be.UP_TO_DATE) return - ;(e.lowestObserverState = Be.POSSIBLY_STALE), + ;((e.lowestObserverState = Be.POSSIBLY_STALE), e.observers.forEach(t => { t.dependenciesState === Be.UP_TO_DATE && ((t.dependenciesState = Be.POSSIBLY_STALE), t.isTracing !== Le.NONE && dt(t, e), t.onBecomeStale()) - }) + })) })(this) } onBecomeObserved() { @@ -2222,7 +2231,7 @@ this.onBecomeUnobservedListeners.forEach(e => e()) } get() { - this.isComputing && + ;(this.isComputing && H(`Cycle detected in computation ${this.name}: ${this.derivation}`), 0 !== at.inBatch || 0 !== this.observers.size || this.keepAlive ? (ft(this), @@ -2230,19 +2239,19 @@ this.trackAndCompute() && (function (e) { if (e.lowestObserverState === Be.STALE) return - ;(e.lowestObserverState = Be.STALE), + ;((e.lowestObserverState = Be.STALE), e.observers.forEach(t => { t.dependenciesState === Be.POSSIBLY_STALE ? (t.dependenciesState = Be.STALE) : t.dependenciesState === Be.UP_TO_DATE && (e.lowestObserverState = Be.UP_TO_DATE) - }) + })) })(this)) : Oe(this) && (this.warnAboutUntrackedRead(), ct(), (this.value = this.computeValue(!1)), - ht()) + ht())) const e = this.value if (je(e)) throw e.cause return e @@ -2254,11 +2263,11 @@ } set(e) { if (this.setter) { - U( + ;(U( !this.isRunningSetter, `The setter of computed value '${this.name}' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?` ), - (this.isRunningSetter = !0) + (this.isRunningSetter = !0)) try { this.setter.call(this.scope, e) } finally { @@ -2271,7 +2280,7 @@ t = this.dependenciesState === Be.NOT_TRACKING, n = this.computeValue(!0), i = t || je(e) || je(n) || !this.equals(e, n) - return i && (this.value = n), i + return (i && (this.value = n), i) } computeValue(e) { let t @@ -2284,7 +2293,7 @@ } catch (u) { t = new Ee(u) } - return at.computationDepth--, (this.isComputing = !1), t + return (at.computationDepth--, (this.isComputing = !1), t) } suspend() { this.keepAlive || (Pe(this), (this.value = void 0)) @@ -2296,9 +2305,9 @@ let r = this.get() if (!i || t) { const t = Re() - e({ type: 'update', object: this, newValue: r, oldValue: n }), Ge(t) + ;(e({ type: 'update', object: this, newValue: r, oldValue: n }), Ge(t)) } - ;(i = !1), (n = r) + ;((i = !1), (n = r)) }) } warnAboutUntrackedRead() {} @@ -2318,7 +2327,7 @@ const et = K('ComputedValue', Qe) class tt { constructor() { - ;(this.version = 5), + ;((this.version = 5), (this.UNCHANGED = {}), (this.trackingDerivation = null), (this.computationDepth = 0), @@ -2338,7 +2347,7 @@ (this.observableRequiresReaction = !1), (this.computedConfigurable = !1), (this.disableErrorBoundaries = !1), - (this.suppressReactionErrors = !1) + (this.suppressReactionErrors = !1)) } } const nt = {} @@ -2368,12 +2377,12 @@ ) })() function st(e, t) { - e.observers.add(t), + ;(e.observers.add(t), e.lowestObserverState > t.dependenciesState && - (e.lowestObserverState = t.dependenciesState) + (e.lowestObserverState = t.dependenciesState)) } function ut(e, t) { - e.observers.delete(t), 0 === e.observers.size && lt(e) + ;(e.observers.delete(t), 0 === e.observers.size && lt(e)) } function lt(e) { !1 === e.isPendingUnobservation && @@ -2388,10 +2397,10 @@ const e = at.pendingUnobservations for (let t = 0; t < e.length; t++) { const n = e[t] - ;(n.isPendingUnobservation = !1), + ;((n.isPendingUnobservation = !1), 0 === n.observers.size && (n.isBeingObserved && ((n.isBeingObserved = !1), n.onBecomeUnobserved()), - n instanceof Qe && n.suspend()) + n instanceof Qe && n.suspend())) } at.pendingUnobservations = [] } @@ -2414,10 +2423,10 @@ e.isTracing === Le.BREAK) ) { const n = [] - pt(It(e), n, 1), + ;(pt(It(e), n, 1), new Function( `debugger;\n/*\nTracing '${e.name}'\n\nYou are entering this break point because derivation '${e.name}' is being traced and '${t.name}' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n${e instanceof Qe ? e.derivation.toString().replace(/[*]\//g, '/') : ''}\n\nThe dependencies for this derivation are:\n\n${n.join('\n')}\n*/\n ` - )() + )()) } } function pt(e, t, n) { @@ -2428,7 +2437,7 @@ } class gt { constructor(e = 'Reaction@' + G(), t, n, i = !1) { - ;(this.name = e), + ;((this.name = e), (this.onInvalidate = t), (this.errorHandler = n), (this.requiresObservable = i), @@ -2443,7 +2452,7 @@ (this._isScheduled = !1), (this._isTrackPending = !1), (this._isRunning = !1), - (this.isTracing = Le.NONE) + (this.isTracing = Le.NONE)) } onBecomeStale() { this.schedule() @@ -2460,7 +2469,7 @@ if ((ct(), (this._isScheduled = !1), Oe(this))) { this._isTrackPending = !0 try { - this.onInvalidate(), this._isTrackPending + ;(this.onInvalidate(), this._isTrackPending) } catch (u) { this.reportExceptionInDerivation(u) } @@ -2473,22 +2482,22 @@ ct() this._isRunning = !0 const t = Ne(this, e, void 0) - ;(this._isRunning = !1), + ;((this._isRunning = !1), (this._isTrackPending = !1), this.isDisposed && Pe(this), je(t) && this.reportExceptionInDerivation(t.cause), - ht() + ht()) } reportExceptionInDerivation(e) { if (this.errorHandler) return void this.errorHandler(e, this) if (at.disableErrorBoundaries) throw e const t = `[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '${this}'` - at.suppressReactionErrors + ;(at.suppressReactionErrors ? console.warn( `[mobx] (error in reaction '${this.name}' suppressed, fix error of causing action below)` ) : console.error(t, e), - at.globalReactionErrorHandlers.forEach(t => t(e, this)) + at.globalReactionErrorHandlers.forEach(t => t(e, this))) } dispose() { this.isDisposed || @@ -2496,7 +2505,7 @@ } getDisposer() { const e = this.dispose.bind(this) - return (e[ne] = this), e + return ((e[ne] = this), e) } toString() { return `Reaction[${this.name}]` @@ -2546,7 +2555,7 @@ bt = n => e(() => t(n)) } function wt(e) { - return console.warn('[mobx.spy] Is a no-op in production builds'), function () {} + return (console.warn('[mobx.spy] Is a no-op in production builds'), function () {}) } function _t() { H(!1) @@ -2616,7 +2625,7 @@ o || ((o = !0), e(() => { - ;(o = !1), i.isDisposed || i.track(r) + ;((o = !1), i.isDisposed || i.track(r)) })) }, t.onError, @@ -2626,7 +2635,7 @@ function r() { e(i) } - return i.schedule(), i.getDisposer() + return (i.schedule(), i.getDisposer()) } St.bound = function (e, t, n, i) { return !0 === i @@ -2636,7 +2645,7 @@ configurable: !0, enumerable: !1, get() { - return Mt(this, t, n.value || n.initializer.call(this)), this[t] + return (Mt(this, t, n.value || n.initializer.call(this)), this[t]) }, set: _t, } @@ -2707,9 +2716,9 @@ `Invalid value for 'enforceActions': '${t}', expected 'never', 'always' or 'observed'` ) } - ;(at.enforceActions = e), (at.allowStateChanges = !0 !== e && 'strict' !== e) + ;((at.enforceActions = e), (at.allowStateChanges = !0 !== e && 'strict' !== e)) } - void 0 !== n && (at.computedRequiresReaction = !!n), + ;(void 0 !== n && (at.computedRequiresReaction = !!n), void 0 !== a && (at.reactionRequiresObservable = !!a), void 0 !== s && ((at.observableRequiresReaction = !!s), @@ -2721,11 +2730,11 @@ 'WARNING: Debug feature only. MobX will NOT recover from errors when `disableErrorBoundaries` is enabled.' ), (at.disableErrorBoundaries = !!r)), - o && Ct(o) + o && Ct(o)) } function Et(e, t, n, i) { const r = jt((i = ye(i))) - return fe(e), dn(e, i.name, r.enhancer), t && Ot(e, t, n, r), e + return (fe(e), dn(e, i.name, r.enhancer), t && Ot(e, t, n, r), e) } function jt(e) { return e.defaultDecorator || (!1 === e.deep ? _e : Ce) @@ -2777,7 +2786,7 @@ ) } function Rt(e) { - return 1 !== arguments.length && H(!1), Ft(e) + return (1 !== arguments.length && H(!1), Ft(e)) } function Gt(e, t, n) { if (2 !== arguments.length || hn(e)) @@ -2788,12 +2797,12 @@ else if (hn(e)) e.add(t) else { if (!nn(e)) return H(!1) - 'number' != typeof t && (t = parseInt(t, 10)), + ;('number' != typeof t && (t = parseInt(t, 10)), U(t >= 0, `Not a valid index: '${t}'`), ct(), t >= e.length && (e.length = t + 1), (e[t] = n), - ht() + ht()) } else { ct() @@ -2832,14 +2841,14 @@ i = n.values.get(t) if (i instanceof ie) { const e = i.get() - return void 0 === e && n.has(t), e + return (void 0 === e && n.has(t), e) } - return qt(t) && n.has(t), e[t] + return (qt(t) && n.has(t), e[t]) }, set: (e, t, n) => !!qt(t) && (Gt(e, t, n), !0), deleteProperty(e, t) { if (!qt(t)) return !1 - return Ut(e).remove(t), !0 + return (Ut(e).remove(t), !0) }, ownKeys: e => (Ut(e).keysAtom.reportObserved(), Reflect.ownKeys(e)), preventExtensions: e => (H('Dynamic observable objects cannot be frozen'), !1), @@ -2919,12 +2928,12 @@ } class Qt { constructor(e, t, n) { - ;(this.owned = n), + ;((this.owned = n), (this.values = []), (this.proxy = void 0), (this.lastKnownLength = 0), (this.atom = new ie(e || 'ObservableArray@' + G())), - (this.enhancer = (n, i) => t(n, i, e + '[..]')) + (this.enhancer = (n, i) => t(n, i, e + '[..]'))) } dehanceValue(e) { return void 0 !== this.dehancer ? this.dehancer(e) : e @@ -2951,7 +2960,7 @@ ) } getArrayLength() { - return this.atom.reportObserved(), this.values.length + return (this.atom.reportObserved(), this.values.length) } setArrayLength(e) { if ('number' != typeof e || e < 0) @@ -2993,7 +3002,7 @@ added: n, }) if (!i) return F - ;(t = i.removedCount), (n = i.added) + ;((t = i.removedCount), (n = i.added)) } n = 0 === n.length ? n : n.map(e => this.enhancer(e, void 0)) const r = this.spliceItemsIntoValues(e, t, n) @@ -3007,7 +3016,8 @@ { const i = this.values.slice(e, e + t) return ( - (this.values = this.values.slice(0, e).concat(n, this.values.slice(e + t))), i + (this.values = this.values.slice(0, e).concat(n, this.values.slice(e + t))), + i ) } } @@ -3018,7 +3028,7 @@ r || i ? { object: this.proxy, type: 'update', index: e, newValue: t, oldValue: n } : null - this.atom.reportChanged(), r && Jt(this, o) + ;(this.atom.reportChanged(), r && Jt(this, o)) } notifyArraySplice(e, t, n) { const i = !this.owned && !1, @@ -3035,7 +3045,7 @@ addedCount: t.length, } : null - this.atom.reportChanged(), r && Jt(this, o) + ;(this.atom.reportChanged(), r && Jt(this, o)) } } const en = { @@ -3075,7 +3085,7 @@ }, push(...e) { const t = this[ne] - return t.spliceWithArray(t.values.length, 0, e), t.values.length + return (t.spliceWithArray(t.values.length, 0, e), t.values.length) }, pop() { return this.splice(Math.max(this[ne].values.length - 1, 0), 1)[0] @@ -3085,7 +3095,7 @@ }, unshift(...e) { const t = this[ne] - return t.spliceWithArray(0, 0, e), t.values.length + return (t.spliceWithArray(0, 0, e), t.values.length) }, reverse() { const e = this.slice() @@ -3104,7 +3114,7 @@ const t = this[ne] if (t) { if (e < t.values.length) - return t.atom.reportObserved(), t.dehanceValue(t.values[e]) + return (t.atom.reportObserved(), t.dehanceValue(t.values[e])) console.warn( `[mobx.array] Attempt to read an array index (${e}) that is out of bounds (${t.values.length}). Please check length first. Out of bound indices will not be tracked by MobX` ) @@ -3131,7 +3141,7 @@ } }, } - ;[ + ;([ 'concat', 'flat', 'includes', @@ -3170,7 +3180,7 @@ t.values[e].apply(t.values, arguments) ) } - }) + })) const tn = K('ObservableArrayAdministration', Qt) function nn(e) { return W(e) && tn(e[ne]) @@ -3190,7 +3200,7 @@ throw new Error( 'mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js' ) - ;(this._data = new Map()), (this._hasMap = new Map()), this.merge(e) + ;((this._data = new Map()), (this._hasMap = new Map()), this.merge(e)) } _has(e) { return this._data.has(e) @@ -3200,7 +3210,7 @@ let t = this._hasMap.get(e) if (!t) { const n = (t = new Xe(this._has(e), be, `${this.name}.${Q(e)}?`, !1)) - this._hasMap.set(e, n), Dt(n, () => this._hasMap.delete(e)) + ;(this._hasMap.set(e, n), Dt(n, () => this._hasMap.delete(e))) } return t.get() } @@ -3216,7 +3226,7 @@ if (!i) return this t = i.newValue } - return n ? this._updateValue(e, t) : this._addValue(e, t), this + return (n ? this._updateValue(e, t) : this._addValue(e, t), this) } delete(e) { if ((Ie(this._keysAtom), Wt(this))) { @@ -3236,8 +3246,8 @@ : null return ( Ht(() => { - this._keysAtom.reportChanged(), this._updateHasMapEntry(e, !1) - this._data.get(e).setNewValue(void 0), this._data.delete(e) + ;(this._keysAtom.reportChanged(), this._updateHasMapEntry(e, !1)) + ;(this._data.get(e).setNewValue(void 0), this._data.delete(e)) }), n && Jt(this, i), !0 @@ -3258,18 +3268,18 @@ r || i ? { type: 'update', object: this, oldValue: n.value, name: e, newValue: t } : null - 0, n.setNewValue(t), r && Jt(this, o) + ;(0, n.setNewValue(t), r && Jt(this, o)) } } _addValue(e, t) { - Ie(this._keysAtom), + ;(Ie(this._keysAtom), Ht(() => { const n = new Xe(t, this.enhancer, `${this.name}.${Q(e)}`, !1) - this._data.set(e, n), + ;(this._data.set(e, n), (t = n.value), this._updateHasMapEntry(e, !0), - this._keysAtom.reportChanged() - }) + this._keysAtom.reportChanged()) + })) const n = !1, i = Kt(this) i && Jt(this, i ? { type: 'add', object: this, name: e, newValue: t } : null) @@ -3283,7 +3293,7 @@ return void 0 !== this.dehancer ? this.dehancer(e) : e } keys() { - return this._keysAtom.reportObserved(), this._data.keys() + return (this._keysAtom.reportObserved(), this._data.keys()) } values() { const e = this, @@ -3370,7 +3380,7 @@ const t = this._data.has(e) if ((this.set(e, r), this._data.has(e))) { const r = this._data.get(e) - n.set(e, r), t || (i = !0) + ;(n.set(e, r), t || (i = !0)) } } if (!i) @@ -3385,7 +3395,7 @@ this._keysAtom.reportChanged() break } - ;(i = e.next()), (r = t.next()) + ;((i = e.next()), (r = t.next())) } } this._data = n @@ -3394,7 +3404,7 @@ ) } get size() { - return this._keysAtom.reportObserved(), this._data.size + return (this._keysAtom.reportObserved(), this._data.size) } toPOJO() { const e = {} @@ -3440,7 +3450,7 @@ throw new Error( 'mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js' ) - ;(this.enhancer = (e, i) => t(e, i, n)), e && this.replace(e) + ;((this.enhancer = (e, i) => t(e, i, n)), e && this.replace(e)) } dehanceValue(e) { return void 0 !== this.dehancer ? this.dehancer(e) : e @@ -3456,7 +3466,7 @@ for (const n of this) e.call(t, n, n, this) } get size() { - return this._atom.reportObserved(), this._data.size + return (this._atom.reportObserved(), this._data.size) } add(e) { if ((Ie(this._atom), Wt(this))) { @@ -3464,12 +3474,12 @@ } if (!this.has(e)) { Ht(() => { - this._data.add(this.enhancer(e, void 0)), this._atom.reportChanged() + ;(this._data.add(this.enhancer(e, void 0)), this._atom.reportChanged()) }) const t = !1, n = Kt(this), i = n || t ? { type: 'add', object: this, newValue: e } : null - 0, n && Jt(this, i) + ;(0, n && Jt(this, i)) } return this } @@ -3483,7 +3493,7 @@ i = n || t ? { type: 'delete', object: this, oldValue: e } : null return ( Ht(() => { - this._atom.reportChanged(), this._data.delete(e) + ;(this._atom.reportChanged(), this._data.delete(e)) }), n && Jt(this, i), !0 @@ -3492,7 +3502,7 @@ return !1 } has(e) { - return this._atom.reportObserved(), this._data.has(this.dehanceValue(e)) + return (this._atom.reportObserved(), this._data.has(this.dehanceValue(e))) } entries() { let e = 0 @@ -3501,7 +3511,10 @@ return Mn({ next() { const i = e - return (e += 1), i < n.length ? { value: [t[i], n[i]], done: !1 } : { done: !0 } + return ( + (e += 1), + i < n.length ? { value: [t[i], n[i]], done: !1 } : { done: !0 } + ) }, }) } @@ -3553,11 +3566,11 @@ const hn = K('ObservableSet', cn) class fn { constructor(e, t = new Map(), n, i) { - ;(this.target = e), + ;((this.target = e), (this.values = t), (this.name = n), (this.defaultEnhancer = i), - (this.keysAtom = new ie(n + '.keys')) + (this.keysAtom = new ie(n + '.keys'))) } read(e) { return this.values.get(e).get() @@ -3590,7 +3603,7 @@ newValue: t, } : null - 0, i.setNewValue(t), r && Jt(this, a) + ;(0, i.setNewValue(t), r && Jt(this, a)) } } } @@ -3600,7 +3613,7 @@ if (n) return n.get() { const i = !!this.values.get(e) - return (n = new Xe(i, be, `${this.name}.${Q(e)}?`, !1)), t.set(e, n), n.get() + return ((n = new Xe(i, be, `${this.name}.${Q(e)}?`, !1)), t.set(e, n), n.get()) } } addObservableProp(e, t, n = this.defaultEnhancer) { @@ -3611,7 +3624,7 @@ t = n.newValue } const r = new Xe(t, n, `${this.name}.${Q(e)}`, !1) - this.values.set(e, r), + ;(this.values.set(e, r), (t = r.value), Object.defineProperty( i, @@ -3632,11 +3645,11 @@ ) })(e) ), - this.notifyPropertyAddition(e, t) + this.notifyPropertyAddition(e, t)) } addComputedProp(e, t, n) { const { target: i } = this - ;(n.name = n.name || `${this.name}.${Q(t)}`), + ;((n.name = n.name || `${this.name}.${Q(t)}`), this.values.set(t, new Qe(n)), (e === i || (function (e, t) { @@ -3661,7 +3674,7 @@ }) ) })(t) - ) + )) } remove(e) { if (!this.values.has(e)) return @@ -3689,7 +3702,7 @@ n || i ? { type: 'remove', object: this.proxy || t, oldValue: o, name: e } : null - 0, n && Jt(this, a) + ;(0, n && Jt(this, a)) } finally { ht() } @@ -3725,10 +3738,10 @@ } function dn(e, t = '', n = ge) { if (Object.prototype.hasOwnProperty.call(e, ne)) return e[ne] - Z(e) || (t = (e.constructor.name || 'ObservableObject') + '@' + G()), - t || (t = 'ObservableObject@' + G()) + ;(Z(e) || (t = (e.constructor.name || 'ObservableObject') + '@' + G()), + t || (t = 'ObservableObject@' + G())) const i = new fn(e, new Map(), Q(t), n) - return $(e, ne, i), i + return ($(e, ne, i), i) } const pn = Object.create(null), gn = Object.create(null) @@ -3742,18 +3755,18 @@ } function yn(e, t) { if ('object' == typeof e && null !== e) { - if (nn(e)) return void 0 !== t && H(!1), e[ne].atom + if (nn(e)) return (void 0 !== t && H(!1), e[ne].atom) if (hn(e)) return e[ne] if (sn(e)) { const n = e if (void 0 === t) return n._keysAtom const i = n._data.get(t) || n._hasMap.get(t) - return i || H(!1), i + return (i || H(!1), i) } if ((fe(e), t && !e[ne] && e[t], mn(e))) { if (!t) return H(!1) const n = e[ne].values.get(t) - return n || H(!1), n + return (n || H(!1), n) } if (re(e) || et(e) || yt(e)) return e } else if ('function' == typeof e && yt(e[ne])) return e[ne] @@ -3799,7 +3812,7 @@ case '[object Set]': n >= 0 && n++ } - ;(e = An(e)), (t = An(t)) + ;((e = An(e)), (t = An(t))) const s = '[object Array]' === a if (!s) { if ('object' != typeof e || 'object' != typeof t) return !1 @@ -3819,7 +3832,7 @@ return !1 } if (0 === n) return !1 - n < 0 && (n = -1), (r = r || []) + ;(n < 0 && (n = -1), (r = r || [])) let u = (i = i || []).length for (; u--; ) if (i[u] === e) return r[u] === t if ((i.push(e), r.push(t), s)) { @@ -3831,7 +3844,7 @@ if (((u = o.length), Object.keys(t).length !== u)) return !1 for (; u--; ) if (((a = o[u]), !Sn(t, a) || !xn(e[a], t[a], n - 1, i, r))) return !1 } - return i.pop(), r.pop(), !0 + return (i.pop(), r.pop(), !0) } function An(e) { return nn(e) @@ -3844,7 +3857,7 @@ return Object.prototype.hasOwnProperty.call(e, t) } function Mn(e) { - return (e[Symbol.iterator] = Tn), e + return ((e[Symbol.iterator] = Tn), e) } function Tn() { return this @@ -3901,21 +3914,21 @@ (jn = P( (En = class { constructor() { - ;(this.cid = 0), + ;((this.cid = 0), (this.sizes = new Set(['statSize', 'parsedSize', 'gzipSize'])), N(this, 'allChunks', jn, this), N(this, 'selectedChunks', On, this), N(this, 'searchQuery', In, this), N(this, 'defaultSize', Nn, this), N(this, 'selectedSize', Pn, this), - N(this, 'showConcatenatedModulesContent', Fn, this) + N(this, 'showConcatenatedModulesContent', Fn, this)) } setModules(e) { - zn(e, e => { + ;(zn(e, e => { e.cid = this.cid++ }), (this.allChunks = e), - (this.selectedChunks = this.allChunks) + (this.selectedChunks = this.allChunks)) } setEntrypoints(e) { this.entrypoints = e @@ -3982,7 +3995,7 @@ let e = !1 return ( zn(this.visibleChunks, t => { - if (t.concatenated) return (e = !0), !1 + if (t.concatenated) return ((e = !0), !1) }), e ) @@ -3997,7 +4010,7 @@ const e = !n.concatenated || this.showConcatenatedModulesContent n = { ...n, groups: e ? this.filterModulesForSize(n.groups, t) : null } } - ;(n.weight = n[t]), e.push(n) + ;((n.weight = n[t]), e.push(n)) } return e }, []) @@ -4139,12 +4152,12 @@ Jn = e.__c, Xn = e.unmount function Qn(t, n) { - e.__h && e.__h(Hn, t, Wn || n), (Wn = 0) + ;(e.__h && e.__h(Hn, t, Wn || n), (Wn = 0)) var i = Hn.__H || (Hn.__H = { __: [], __h: [] }) - return t >= i.__.length && i.__.push({}), i.__[t] + return (t >= i.__.length && i.__.push({}), i.__[t]) } function ei(e) { - return (Wn = 1), ti(ci, e) + return ((Wn = 1), ti(ci, e)) } function ti(e, t, n) { var i = Qn(Gn++, 2) @@ -4168,7 +4181,7 @@ } function ii(e, t) { var n = Qn(Gn++, 7) - return li(n.__H, t) && ((n.__ = e()), (n.__H = t), (n.__h = e)), n.__ + return (li(n.__H, t) && ((n.__ = e()), (n.__H = t), (n.__h = e)), n.__) } function ri(e, t) { return ( @@ -4179,28 +4192,28 @@ ) } function oi() { - Zn.forEach(function (n) { + ;(Zn.forEach(function (n) { if (n.__P) try { - n.__H.__h.forEach(si), n.__H.__h.forEach(ui), (n.__H.__h = []) + ;(n.__H.__h.forEach(si), n.__H.__h.forEach(ui), (n.__H.__h = [])) } catch (t) { - ;(n.__H.__h = []), e.__e(t, n.__v) + ;((n.__H.__h = []), e.__e(t, n.__v)) } }), - (Zn = []) + (Zn = [])) } - ;(e.__b = function (e) { - ;(Hn = null), $n && $n(e) + ;((e.__b = function (e) { + ;((Hn = null), $n && $n(e)) }), (e.__r = function (e) { - Kn && Kn(e), (Gn = 0) + ;(Kn && Kn(e), (Gn = 0)) var t = (Hn = e.__c).__H t && (t.__h.forEach(si), t.__h.forEach(ui), (t.__h = [])) }), (e.diffed = function (t) { Yn && Yn(t) var n = t.__c - n && + ;(n && n.__H && n.__H.__h.length && ((1 !== Zn.push(n) && Un === e.requestAnimationFrame) || @@ -4209,30 +4222,30 @@ function (e) { var t, n = function () { - clearTimeout(i), ai && cancelAnimationFrame(t), setTimeout(e) + ;(clearTimeout(i), ai && cancelAnimationFrame(t), setTimeout(e)) }, i = setTimeout(n, 100) ai && (t = requestAnimationFrame(n)) } )(oi)), - (Hn = void 0) + (Hn = void 0)) }), (e.__c = function (t, n) { - n.some(function (t) { + ;(n.some(function (t) { try { - t.__h.forEach(si), + ;(t.__h.forEach(si), (t.__h = t.__h.filter(function (e) { return !e.__ || ui(e) - })) + }))) } catch (a) { - n.some(function (e) { + ;(n.some(function (e) { e.__h && (e.__h = []) }), (n = []), - e.__e(a, t.__v) + e.__e(a, t.__v)) } }), - Jn && Jn(t, n) + Jn && Jn(t, n)) }), (e.unmount = function (t) { Xn && Xn(t) @@ -4243,15 +4256,15 @@ } catch (t) { e.__e(t, n.__v) } - }) + })) var ai = 'function' == typeof requestAnimationFrame function si(e) { var t = Hn - 'function' == typeof e.__c && e.__c(), (Hn = t) + ;('function' == typeof e.__c && e.__c(), (Hn = t)) } function ui(e) { var t = Hn - ;(e.__c = e.__()), (Hn = t) + ;((e.__c = e.__()), (Hn = t)) } function li(e, t) { return ( @@ -4287,7 +4300,7 @@ ) } function i(t) { - return (this.shouldComponentUpdate = n), h(e, t) + return ((this.shouldComponentUpdate = n), h(e, t)) } return ( (i.displayName = 'Memo(' + (e.displayName || e.name) + ')'), @@ -4296,13 +4309,14 @@ i ) } - ;((di.prototype = new g()).isPureReactComponent = !0), + ;(((di.prototype = new g()).isPureReactComponent = !0), (di.prototype.shouldComponentUpdate = function (e, t) { return fi(this.props, e) || fi(this.state, t) - }) + })) var gi = e.__b e.__b = function (e) { - e.type && e.type.__f && e.ref && ((e.props.ref = e.ref), (e.ref = null)), gi && gi(e) + ;(e.type && e.type.__f && e.ref && ((e.props.ref = e.ref), (e.ref = null)), + gi && gi(e)) } var bi = ('undefined' != typeof Symbol && Symbol.for && Symbol.for('react.forward_ref')) || @@ -4344,28 +4358,28 @@ if (e.then) for (var i, r = t; (r = r.__); ) if ((i = r.__c) && i.__c) - return null == t.__e && ((t.__e = n.__e), (t.__k = n.__k)), i.__c(e, t) + return (null == t.__e && ((t.__e = n.__e), (t.__k = n.__k)), i.__c(e, t)) Ci(e, t, n) } var wi = e.unmount function _i() { - ;(this.__u = 0), (this.t = null), (this.__b = null) + ;((this.__u = 0), (this.t = null), (this.__b = null)) } function xi(e) { var t = e.__.__c return t && t.__e && t.__e(e) } function Ai() { - ;(this.u = null), (this.o = null) + ;((this.u = null), (this.o = null)) } - ;(e.unmount = function (e) { + ;((e.unmount = function (e) { var t = e.__c - t && t.__R && t.__R(), t && !0 === e.__h && (e.type = null), wi && wi(e) + ;(t && t.__R && t.__R(), t && !0 === e.__h && (e.type = null), wi && wi(e)) }), ((_i.prototype = new g()).__c = function (e, t) { var n = t.__c, i = this - null == i.t && (i.t = []), i.t.push(n) + ;(null == i.t && (i.t = []), i.t.push(n)) var r = xi(i.__v), o = !1, a = function () { @@ -4399,7 +4413,7 @@ } }, u = !0 === t.__h - i.__u++ || u || i.setState({ __e: (i.__b = i.__v.__k[0]) }), e.then(a, a) + ;(i.__u++ || u || i.setState({ __e: (i.__b = i.__v.__k[0]) }), e.then(a, a)) }), (_i.prototype.componentWillUnmount = function () { this.t = [] @@ -4432,8 +4446,8 @@ this.__b = null } var r = t.__e && h(p, null, e.fallback) - return r && (r.__h = null), [h(p, null, t.__e ? null : e.children), r] - }) + return (r && (r.__h = null), [h(p, null, t.__e ? null : e.children), r]) + })) var Si = function (e, t, n) { if ( (++n[1] === n[0] && e.o.delete(t), @@ -4456,8 +4470,8 @@ function Ti(e) { var t = this, n = e.i - ;(t.componentWillUnmount = function () { - j(null, t.l), (t.l = null), (t.i = null) + ;((t.componentWillUnmount = function () { + ;(j(null, t.l), (t.l = null), (t.i = null)) }), t.i && t.i !== n && t.componentWillUnmount(), e.__v @@ -4468,20 +4482,20 @@ parentNode: n, childNodes: [], appendChild: function (e) { - this.childNodes.push(e), t.i.appendChild(e) + ;(this.childNodes.push(e), t.i.appendChild(e)) }, insertBefore: function (e, n) { - this.childNodes.push(e), t.i.appendChild(e) + ;(this.childNodes.push(e), t.i.appendChild(e)) }, removeChild: function (e) { - this.childNodes.splice(this.childNodes.indexOf(e) >>> 1, 1), - t.i.removeChild(e) + ;(this.childNodes.splice(this.childNodes.indexOf(e) >>> 1, 1), + t.i.removeChild(e)) }, })), j(h(Mi, { context: t.context }, e.__v), t.l)) - : t.l && t.componentWillUnmount() + : t.l && t.componentWillUnmount()) } - ;((Ai.prototype = new g()).__e = function (e) { + ;(((Ai.prototype = new g()).__e = function (e) { var t = this, n = xi(t.__v), i = t.o.get(e) @@ -4496,7 +4510,7 @@ ) }), (Ai.prototype.render = function (e) { - ;(this.u = null), (this.o = new Map()) + ;((this.u = null), (this.o = new Map())) var t = _(e.children) e.revealOrder && 'b' === e.revealOrder[0] && t.reverse() for (var n = t.length; n--; ) this.o.set(t[n], (this.u = [1, 0, this.u])) @@ -4508,7 +4522,7 @@ this.o.forEach(function (t, n) { Si(e, n, t) }) - }) + })) var ki = ('undefined' != typeof Symbol && Symbol.for && Symbol.for('react.element')) || 60103, @@ -4521,7 +4535,7 @@ : /fil|che|ra/i ).test(e) } - ;(g.prototype.isReactComponent = {}), + ;((g.prototype.isReactComponent = {}), ['componentWillMount', 'componentWillReceiveProps', 'componentWillUpdate'].forEach( function (e) { Object.defineProperty(g.prototype, e, { @@ -4534,7 +4548,7 @@ }, }) } - ) + )) var Bi = e.event function Li() {} function Ei() { @@ -4583,7 +4597,7 @@ : null === o && (o = void 0), (i[r] = o)) } - 'select' == t && + ;('select' == t && i.multiple && Array.isArray(i.value) && (i.value = _(n.children).forEach(function (e) { @@ -4596,19 +4610,19 @@ ? -1 != i.defaultValue.indexOf(e.props.value) : i.defaultValue == e.props.value })), - (e.props = i) + (e.props = i)) } - t && + ;(t && n.class != n.className && ((Ii.enumerable = 'className' in n), null != n.className && (i.class = n.className), Object.defineProperty(i, 'className', Ii)), (e.$$typeof = ki), - Ni && Ni(e) + Ni && Ni(e)) } var Pi = e.__r e.__r = function (e) { - Pi && Pi(e), (Oi = e.__c) + ;(Pi && Pi(e), (Oi = e.__c)) } var Fi = { ReactCurrentDispatcher: { @@ -4645,13 +4659,13 @@ ) }, useImperativeHandle: function (e, t, n) { - ;(Wn = 6), + ;((Wn = 6), ni( function () { 'function' == typeof e ? e(t()) : e && (e.current = t()) }, null == n ? n : n.concat(e) - ) + )) }, useMemo: ii, useCallback: ri, @@ -4659,7 +4673,8 @@ var t = Hn.context[e.__c], n = Qn(Gn++, 9) return ( - (n.__c = e), t ? (null == n.__ && ((n.__ = !0), t.sub(Hn)), t.props.value) : e.__ + (n.__c = e), + t ? (null == n.__ && ((n.__ = !0), t.sub(Hn)), t.props.value) : e.__ ) }, useDebugValue: function (t, n) { @@ -4676,7 +4691,7 @@ ) }, hydrate: function (e, t, n) { - return O(e, t), 'function' == typeof n && n(), e ? e.__c : null + return (O(e, t), 'function' == typeof n && n(), e ? e.__c : null) }, unmountComponentAtNode: function (e) { return !!e.__k && (j(null, e), !0) @@ -4708,7 +4723,7 @@ n.push(e) var t = e.componentWillUnmount e.componentWillUnmount = function () { - n.splice(n.indexOf(e), 1), t && t.call(e) + ;(n.splice(n.indexOf(e), 1), t && t.call(e)) } })), e.children @@ -4756,7 +4771,7 @@ if (!n) throw t return h(n, r) } - return (r.displayName = 'Lazy'), (r.__f = !0), r + return ((r.displayName = 'Lazy'), (r.__f = !0), r) }, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: Fi, } @@ -4815,11 +4830,11 @@ function nr() { Xi = void 0 var e = Date.now() - er.forEach(function (t) { + ;(er.forEach(function (t) { var n = t.current n && e >= n.cleanAt && (n.reaction.dispose(), (t.current = null), er.delete(t)) }), - er.size > 0 && tr() + er.size > 0 && tr()) } var ir = !1, rr = [] @@ -4843,7 +4858,7 @@ s = (function (e) { return { cleanAt: Date.now() + Qi, reaction: e } })(a) - ;(o.current = s), (i = o), er.add(i), tr() + ;((o.current = s), (i = o), er.add(i), tr()) } var l = o.current.reaction return ( @@ -4863,12 +4878,12 @@ }), r()), function () { - o.current.reaction.dispose(), (o.current = null) + ;(o.current.reaction.dispose(), (o.current = null)) } ) }, []), (function (e) { - ;(ir = !0), (rr = []) + ;((ir = !0), (rr = [])) try { var t = e() ir = !1 @@ -4969,13 +4984,13 @@ '`, expected `function`.' ) } - ;(hr.propTypes = { children: fr, render: fr }), (hr.displayName = 'Observer') + ;((hr.propTypes = { children: fr, render: fr }), (hr.displayName = 'Observer')) !(function (e) { - e || (e = $i), + ;(e || (e = $i), Lt({ reactionScheduler: e }), (('undefined' != typeof window ? window : 'undefined' != typeof self ? self : Vi)[ Zi - ] = !0) + ] = !0)) })(Gi) var dr = 0 var pr = {} @@ -4985,7 +5000,7 @@ (pr[e] = (function (e) { if ('function' == typeof Symbol) return Symbol(e) var t = '__$mobx-react ' + e + ' (' + dr + ')' - return dr++, t + return (dr++, t) })(e)), pr[e] ) @@ -5026,13 +5041,13 @@ t.locks++ try { var a - return null != e && (a = e.apply(this, r)), a + return (null != e && (a = e.apply(this, r)), a) } finally { - t.locks--, + ;(t.locks--, 0 === t.locks && t.methods.forEach(function (e) { e.apply(n, r) - }) + })) } } function _r(e, t) { @@ -5046,7 +5061,7 @@ var i = (function (e, t) { var n = (e[yr] = e[yr] || {}), i = (n[t] = n[t] || {}) - return (i.locks = i.locks || 0), (i.methods = i.methods || []), i + return ((i.locks = i.locks || 0), (i.methods = i.methods || []), i) })(e, t) i.methods.indexOf(n) < 0 && i.methods.push(n) var r = Object.getOwnPropertyDescriptor(e, t) @@ -5100,7 +5115,7 @@ 'It is not allowed to use shouldComponentUpdate in observer based components.' ) } else t.shouldComponentUpdate = Er - jr(t, 'props'), jr(t, 'state') + ;(jr(t, 'props'), jr(t, 'state')) var i = t.render return ( (t.render = function () { @@ -5136,7 +5151,7 @@ function Lr(e) { var t = this if (!0 === Yi()) return e.call(this) - mr(this, kr, !1), mr(this, zr, !1) + ;(mr(this, kr, !1), mr(this, zr, !1)) var n = Br(this), i = e.bind(this), r = !1, @@ -5144,9 +5159,9 @@ if (!r && ((r = !0), !0 !== t[Tr])) { var e = !0 try { - mr(t, zr, !0), t[kr] || g.prototype.forceUpdate.call(t), (e = !1) + ;(mr(t, zr, !0), t[kr] || g.prototype.forceUpdate.call(t), (e = !1)) } finally { - mr(t, zr, !1), e && o.dispose() + ;(mr(t, zr, !1), e && o.dispose()) } } }) @@ -5176,7 +5191,7 @@ throw e return t } - return (o.reactComponent = this), (a[Sr] = o), (this.render = a), a.call(this) + return ((o.reactComponent = this), (a[Sr] = o), (this.render = a), a.call(this)) } function Er(e, t) { return ( @@ -5191,7 +5206,7 @@ var n = gr('reactProp_' + t + '_valueHolder'), i = gr('reactProp_' + t + '_atomHolder') function r() { - return this[i] || mr(this, i, oe('reactive ' + t)), this[i] + return (this[i] || mr(this, i, oe('reactive ' + t)), this[i]) } Object.defineProperty(e, t, { configurable: !0, @@ -5269,8 +5284,8 @@ t = (function () { var e = window.navigator.userAgent try { - window.localStorage.setItem('ftap5caavc', 'ftap5caavc'), - window.localStorage.removeItem('ftap5caavc') + ;(window.localStorage.setItem('ftap5caavc', 'ftap5caavc'), + window.localStorage.removeItem('ftap5caavc')) var n = !0 } catch (i) { n = !1 @@ -5339,12 +5354,12 @@ function i() { if (!u) throw 'AF0' var e = n.now() - 0 !== l && (o.sd = e - l), + ;(0 !== l && (o.sd = e - l), (l = e), (s = s.filter(function (e) { return null !== e })), - o.frames++ + o.frames++) for (var t = 0; t < s.length; t++) { var i = s[t] null !== i && @@ -5353,7 +5368,7 @@ : y.zc(i.repeat) && ((i.repeat = i.repeat - 1), 0 >= i.repeat && (s[t] = null))) } - ;(s = s.filter(function (e) { + ;((s = s.filter(function (e) { return null !== e })), (u = !1), @@ -5361,7 +5376,7 @@ 0 !== (e = n.now() - e) && (o.rd = e), (o.totalTime += e), (o.ue = (1e3 * o.frames) / o.totalTime), - (l = 0 === s.length ? 0 : n.now()) + (l = 0 === s.length ? 0 : n.now())) } function r() { 0 < s.length && !u && ((u = !0), a(i)) @@ -5384,7 +5399,7 @@ window.setTimeout( function () { var i = e.now() - t(), (n = e.now() - i) + ;(t(), (n = e.now() - i)) }, 16 > n ? 16 - n : 0 ) @@ -5393,8 +5408,8 @@ s = [], u = !1, l = 0 - ;(this.repeat = function (e, t, n) { - this.cancel(e), s.push({ ee: e, context: n, repeat: t }), r() + ;((this.repeat = function (e, t, n) { + ;(this.cancel(e), s.push({ ee: e, context: n, repeat: t }), r()) }), (this.once = function (e, t) { this.repeat(e, 1, t) @@ -5407,11 +5422,11 @@ }), (this.i = function () { s = [] - }) + })) } var r = t.md(function () { function e() { - ;(this.buffer = []), (this.ma = 0), (this.current = y.extend({}, s)) + ;((this.buffer = []), (this.ma = 0), (this.current = y.extend({}, s))) } function t(e) { return function () { @@ -5433,7 +5448,7 @@ } } var i = document.createElement('canvas') - ;(i.width = 1), (i.height = 1) + ;((i.width = 1), (i.height = 1)) var o = i.getContext('2d') i = ['font'] var a = @@ -5548,16 +5563,16 @@ o = t(i) e.prototype[i] = (function (e, t) { return function () { - e.apply(this, arguments), t.apply(this, arguments) + ;(e.apply(this, arguments), t.apply(this, arguments)) } })(o, r) }), i.forEach(function (t) { Object.defineProperty(e.prototype, t, { set: function (e) { - ;(o[t] = e), (this.current[t] = e) + ;((o[t] = e), (this.current[t] = e)) var n = this.buffer - ;(n[this.ma++] = 'set'), (n[this.ma++] = t), (n[this.ma++] = e) + ;((n[this.ma++] = 'set'), (n[this.ma++] = t), (n[this.ma++] = e)) }, get: function () { return this.current[t] @@ -5569,9 +5584,9 @@ set: function (e) { this.current[t] = e var n = this.buffer - ;(n[this.ma++] = 'globalAlpha' === t ? 'setGlobalAlpha' : 'set'), + ;((n[this.ma++] = 'globalAlpha' === t ? 'setGlobalAlpha' : 'set'), (n[this.ma++] = t), - (n[this.ma++] = e) + (n[this.ma++] = e)) }, get: function () { return this.current[t] @@ -5579,7 +5594,7 @@ }) }), (e.prototype.roundRect = function (e, t, n, i, r) { - this.beginPath(), + ;(this.beginPath(), this.moveTo(e + r, t), this.lineTo(e + n - r, t), this.quadraticCurveTo(e + n, t, e + n, t + r), @@ -5589,7 +5604,7 @@ this.quadraticCurveTo(e, t + i, e, t + i - r), this.lineTo(e, t + r), this.quadraticCurveTo(e, t, e + r, t), - this.closePath() + this.closePath()) }), (e.prototype.fillPolygonWithText = function (e, t, n, i, o) { o || (o = {}) @@ -5651,7 +5666,7 @@ }), o = t.md(function () { function e(e) { - ;(this.S = e), + ;((this.S = e), (this.canvas = e.canvas), (this.i = []), (this.zb = [void 0]), @@ -5674,18 +5689,18 @@ this.Sd, this.Td, ]), - (this.da = [1, 0, 0, 1, 0, 0]) + (this.da = [1, 0, 0, 1, 0, 0])) } function t(e) { var t = e.S, n = e.Hb[0].length - 1 - e.zb[n] && (t.setLineDash(e.zb[n]), (t.lineDashOffset = e.td[n])), + ;(e.zb[n] && (t.setLineDash(e.zb[n]), (t.lineDashOffset = e.td[n])), (t.miterLimit = e.yd[n]), (t.lineWidth = e.ud[n]), (t.shadowBlur = e.Rd[n]), (t.shadowOffsetX = e.Sd[n]), (t.shadowOffsetY = e.Td[n]), - (t.font = e.vc[n].replace('#SIZE#', e.Xb[n].toString())) + (t.font = e.vc[n].replace('#SIZE#', e.Xb[n].toString()))) } function n(e, t, n) { return e * n[0] + t * n[2] + n[4] @@ -5697,7 +5712,7 @@ for (var n = 0; n < e.length; n++) e[n] *= t[0] return e } - ;(e.prototype.save = function () { + ;((e.prototype.save = function () { this.i.push(this.da.slice(0)) for (var e = 0; e < this.Hb.length; e++) { var t = this.Hb[e] @@ -5708,16 +5723,16 @@ (e.prototype.restore = function () { this.da = this.i.pop() for (var e = 0; e < this.Hb.length; e++) this.Hb[e].pop() - this.S.restore(), t(this) + ;(this.S.restore(), t(this)) }), (e.prototype.scale = function (e, n) { var i = this.da - ;(i[0] *= e), + ;((i[0] *= e), (i[1] *= e), (i[2] *= n), (i[3] *= n), (e = this.da), - (i = (n = this.Hb)[0].length - 1) + (i = (n = this.Hb)[0].length - 1)) var o = this.zb[i] for (o && r(o, e), o = 2; o < n.length; o++) { n[o][i] *= e[0] @@ -5726,7 +5741,7 @@ }), (e.prototype.translate = function (e, t) { var n = this.da - ;(n[4] += n[0] * e + n[2] * t), (n[5] += n[1] * e + n[3] * t) + ;((n[4] += n[0] * e + n[2] * t), (n[5] += n[1] * e + n[3] * t)) }), ['moveTo', 'lineTo'].forEach(function (t) { e.prototype[t] = (function (e) { @@ -5794,10 +5809,10 @@ Object.defineProperty(e.prototype, t.p, { set: function (e) { var n = t.a(this) - ;(e *= this.da[0]), (n[n.length - 1] = e), (this.S[t.p] = e) + ;((e *= this.da[0]), (n[n.length - 1] = e), (this.S[t.p] = e)) }, }) - }) + })) var o = /(\d+(?:\.\d+)?)px/ return ( Object.defineProperty(e.prototype, 'font', { @@ -5805,14 +5820,14 @@ var t = o.exec(e) if (1 < t.length) { var n = this.Xb.length - 1 - ;(this.Xb[n] = parseFloat(t[1])), + ;((this.Xb[n] = parseFloat(t[1])), (this.vc[n] = e.replace(o, '#SIZE#px')), (e = this.S), (n = this.vc[n].replace( '#SIZE#', (this.Xb[n] * this.da[0]).toString() )), - (e.font = n) + (e.font = n)) } }, }), @@ -5846,16 +5861,16 @@ }), (e.prototype.drawImage = function (e, t, r, o, a, s, u, l, c) { function h(t, r, o, a) { - d.push(n(t, r, f)), + ;(d.push(n(t, r, f)), d.push(i(t, r, f)), (o = y.V(o) ? e.width : o), (a = y.V(a) ? e.height : a), d.push(o * f[0]), - d.push(a * f[3]) + d.push(a * f[3])) } var f = this.da, d = [e] - y.V(s) ? h(t, r, o, a) : h(s, u, l, c), this.S.drawImage.apply(this.S, d) + ;(y.V(s) ? h(t, r, o, a) : h(s, u, l, c), this.S.drawImage.apply(this.S, d)) }), (e.prototype.quadraticCurveTo = function (e, t, r, o) { var a = this.da @@ -5866,9 +5881,9 @@ this.S.fillText(e, n(t, r, a), i(t, r, a), y.zc(o) ? o * a[0] : 1e20) }), (e.prototype.setLineDash = function (e) { - ;(e = r(e.slice(0), this.da)), + ;((e = r(e.slice(0), this.da)), (this.zb[this.zb.length - 1] = e), - this.S.setLineDash(e) + this.S.setLineDash(e)) }), e ) @@ -5878,10 +5893,10 @@ return { estimate: function () { function t(e) { - e.beginPath(), s.Ud(e, l) + ;(e.beginPath(), s.Ud(e, l)) } var i = document.createElement('canvas') - ;(i.width = 800), (i.height = 600) + ;((i.width = 800), (i.height = 600)) var r = i.getContext('2d'), o = i.width i = i.height @@ -5889,50 +5904,50 @@ u = 0, l = [{ x: 0, y: 100 }] for (a = 1; 6 >= a; a++) - (u = (2 * a * Math.PI) / 6), - l.push({ x: 100 * Math.sin(u), y: 100 * Math.cos(u) }) - ;(a = { + ((u = (2 * a * Math.PI) / 6), + l.push({ x: 100 * Math.sin(u), y: 100 * Math.cos(u) })) + ;((a = { polygonPlainFill: [ t, function (e) { - ;(e.fillStyle = 'rgb(255, 0, 0)'), e.fill() + ;((e.fillStyle = 'rgb(255, 0, 0)'), e.fill()) }, ], polygonPlainStroke: [ t, function (e) { - ;(e.strokeStyle = 'rgb(128, 0, 0)'), + ;((e.strokeStyle = 'rgb(128, 0, 0)'), (e.lineWidth = 2), e.closePath(), - e.stroke() + e.stroke()) }, ], polygonGradientFill: [ t, function (e) { var t = e.createRadialGradient(0, 0, 10, 0, 0, 60) - t.addColorStop(0, 'rgb(255, 0, 0)'), + ;(t.addColorStop(0, 'rgb(255, 0, 0)'), t.addColorStop(1, 'rgb(255, 255, 0)'), (e.fillStyle = t), - e.fill() + e.fill()) }, ], polygonGradientStroke: [ t, function (e) { var t = e.createLinearGradient(-100, -100, 100, 100) - t.addColorStop(0, 'rgb(224, 0, 0)'), + ;(t.addColorStop(0, 'rgb(224, 0, 0)'), t.addColorStop(1, 'rgb(32, 0, 0)'), (e.strokeStyle = t), (e.lineWidth = 2), e.closePath(), - e.stroke() + e.stroke()) }, ], polygonExposureShadow: [ t, function (e) { - ;(e.shadowBlur = 50), + ;((e.shadowBlur = 50), (e.shadowColor = 'rgba(0, 0, 0, 1)'), (e.fillStyle = 'rgba(0, 0, 0, 1)'), (e.globalCompositeOperation = 'source-over'), @@ -5940,22 +5955,22 @@ (e.shadowBlur = 0), (e.shadowColor = 'transparent'), (e.globalCompositeOperation = 'destination-out'), - e.fill() + e.fill()) }, ], labelPlainFill: [ function (e) { - ;(e.fillStyle = '#000'), + ;((e.fillStyle = '#000'), (e.font = '24px sans-serif'), - (e.textAlign = 'center') + (e.textAlign = 'center')) }, function (e) { - e.fillText('Some text', 0, -16), - e.fillText('for testing purposes', 0, 16) + ;(e.fillText('Some text', 0, -16), + e.fillText('for testing purposes', 0, 16)) }, ], }), - (u = 100 / Object.keys(a).length) + (u = 100 / Object.keys(a).length)) var c, h = n.now(), f = {} @@ -5964,14 +5979,14 @@ p = n.now(), g = 0 do { - r.save(), r.translate(Math.random() * o, Math.random() * i) + ;(r.save(), r.translate(Math.random() * o, Math.random() * i)) var b = 3 * Math.random() + 0.5 for (r.scale(b, b), b = 0; b < d.length; b++) d[b](r) - r.restore(), g++, (b = n.now()) + ;(r.restore(), g++, (b = n.now())) } while (b - p < u) f[c] = (e * (b - p)) / g } - return (f.total = n.now() - h), f + return ((f.total = n.now() - h), f) }, } })(), @@ -5979,7 +5994,7 @@ Ud: function (e, t) { var n = t[0] e.moveTo(n.x, n.y) - for (var i = t.length - 1; 0 < i; i--) (n = t[i]), e.lineTo(n.x, n.y) + for (var i = t.length - 1; 0 < i; i--) ((n = t[i]), e.lineTo(n.x, n.y)) }, Ti: function (e, t, n, i) { var r, @@ -5989,20 +6004,20 @@ for (r = 0; r < s; r++) { var u = t[r], l = t[(r + 1) % s] - ;(u = M.i(u, l)), (u = Math.sqrt(u)), o.push(u), (a += u) + ;((u = M.i(u, l)), (u = Math.sqrt(u)), o.push(u), (a += u)) } - ;(n = i * (n + (0.5 * i * a) / s)), (a = {}) + ;((n = i * (n + (0.5 * i * a) / s)), (a = {})) var c = {}, h = {} for (r = 0; r < s; r++) { - ;(u = t[r]), (l = t[(r + 1) % s]), (i = t[(r + 2) % s]) + ;((u = t[r]), (l = t[(r + 1) % s]), (i = t[(r + 2) % s])) var f = o[(r + 1) % s] - ;(f = Math.min(0.5, n / f)), + ;((f = Math.min(0.5, n / f)), M.ga(1 - f, l, i, c), M.ga(f, l, i, h), 0 == r && (M.ga(Math.min(0.5, n / o[0]), u, l, a), e.moveTo(a.x, a.y)), e.quadraticCurveTo(l.x, l.y, c.x, c.y), - e.lineTo(h.x, h.y) + e.lineTo(h.x, h.y)) } return !0 }, @@ -6015,7 +6030,7 @@ h[e] && (h[e].style.opacity = d * f[e]) } function i(e) { - ;(e.width = Math.round(a * e.B)), (e.height = Math.round(s * e.B)) + ;((e.width = Math.round(a * e.B)), (e.height = Math.round(s * e.B))) } var r, o, @@ -6027,8 +6042,8 @@ h = {}, f = {}, d = 0 - ;(this.M = function (n) { - ;(0 !== (r = n).clientWidth && 0 !== r.clientHeight) || + ;((this.M = function (n) { + ;((0 !== (r = n).clientWidth && 0 !== r.clientHeight) || j.i( 'element has zero dimensions: ' + r.clientWidth + ' x ' + r.clientHeight + '.' ), @@ -6043,7 +6058,7 @@ (o.style.height = '100%'), (o.style.position = 'relative'), r.appendChild(o), - e.j.D('stage:initialized', this, o, a, s) + e.j.D('stage:initialized', this, o, a, s)) }), (this.Za = function () { t() && @@ -6060,11 +6075,11 @@ 0 !== a && 0 !== s && (a !== u || s !== l)) ) { for (var t = c.length - 1; 0 <= t; t--) i(c[t]) - e.j.D('stage:resized', u, l, a, s), (u = a), (l = s) + ;(e.j.D('stage:resized', u, l, a, s), (u = a), (l = s)) } }), (this.Hi = function (e, t) { - ;(e.B = t), i(e) + ;((e.B = t), i(e)) }), (this.dc = function (t, r, a) { var s = document.createElement('canvas') @@ -6085,7 +6100,7 @@ ) }), (this.$b = function (e, t) { - return y.V(t) || ((f[e] = t), n(e)), f[e] + return (y.V(t) || ((f[e] = t), n(e)), f[e]) }), (this.i = function (e) { return ( @@ -6096,7 +6111,7 @@ })), d ) - }) + })) } function l(e) { function t(e, t, n) { @@ -6117,7 +6132,7 @@ ) } function n(e, t) { - return (t.x = e.x / f + d.x), (t.y = e.y / f + d.y), t + return ((t.x = e.x / f + d.x), (t.y = e.y / f + d.y), t) } function i(e, t, n, i, r, o, a, s, u) { var l = (e - n) * (o - s) - (t - i) * (r - a) @@ -6143,8 +6158,8 @@ b = { x: 0, y: 0, w: 0, o: 0 }, v = { x: 0, y: 0, w: 0, o: 0, scale: 1 }, m = !0 - e.j.subscribe('stage:initialized', function (e, t, n, i) { - ;(r = n), + ;(e.j.subscribe('stage:initialized', function (e, t, n, i) { + ;((r = n), (o = i), (b.x = 0), (b.y = 0), @@ -6154,19 +6169,19 @@ (v.y = 0), (v.w = n), (v.o = i), - (v.scale = 1) + (v.scale = 1)) }), e.j.subscribe('stage:resized', function (e, t, n, i) { function a(e) { - ;(e.x *= l), (e.y *= c) + ;((e.x *= l), (e.y *= c)) } function u(e) { - a(e), (e.w *= l), (e.o *= c) + ;(a(e), (e.w *= l), (e.o *= c)) } - ;(r = n), (o = i) + ;((r = n), (o = i)) var l = n / e, c = i / t - a(s), a(d), a(h), a(p), a(g), u(b), u(v) + ;(a(s), a(d), a(h), a(p), a(g), u(b), u(v)) }), (this.Nb = function (e, i) { return t( @@ -6181,7 +6196,7 @@ if (1 == Math.round(1e4 * n) / 1e4) { n = b.x - d.x var r = b.y - d.y - return t(1, function () {}, !0), this.i(-n, -r) + return (t(1, function () {}, !0), this.i(-n, -r)) } return t( n, @@ -6213,7 +6228,7 @@ if (a < s) { var u = e.o * s, l = e.o - ;(a = e.x - 0.5 * (u - e.w)), (s = e.y) + ;((a = e.x - 0.5 * (u - e.w)), (s = e.y)) } else a > s ? ((u = e.w), (l = (e.w * o) / r), (a = e.x), (s = e.y - 0.5 * (l - e.o))) @@ -6260,7 +6275,7 @@ }), (this.update = function (e) { var t = Math.abs(Math.log(l)) - 6 > t ? (t = 2) : ((t /= 4), (t += 3 * t * (1 < l ? e : 1 - e))), + ;(6 > t ? (t = 2) : ((t /= 4), (t += 3 * t * (1 < l ? e : 1 - e))), (t = 1 < l ? Math.pow(e, t) : 1 - Math.pow(1 - e, t)), (f = a * (t = (m ? t : 1) * (l - 1) + 1)), (d.x = h.x - (h.x - s.x) / t), @@ -6272,16 +6287,16 @@ (v.y = d.y), (v.w = r / f), (v.o = o / f), - (v.scale = f) + (v.scale = f)) }), (this.T = function (e) { - return (e.x = v.x), (e.y = v.y), (e.scale = v.scale), e + return ((e.x = v.x), (e.y = v.y), (e.scale = v.scale), e) }), (this.absolute = function (e, t) { return n(e, t || {}) }), (this.Uc = function (e, t) { - return ((t = t || {}).x = (e.x - d.x) * f), (t.y = (e.y - d.y) * f), t + return (((t = t || {}).x = (e.x - d.x) * f), (t.y = (e.y - d.y) * f), t) }), (this.pc = function (e) { return this.scale() < c / e @@ -6293,16 +6308,16 @@ return Math.round(1e4 * f) / 1e4 }), (this.content = function (e, t, n, i) { - ;(b.x = e), (b.y = t), (b.w = n), (b.o = i) + ;((b.x = e), (b.y = t), (b.w = n), (b.o = i)) }), (this.rc = function (e, t) { var n for (n = e.length - 1; 0 <= n; n--) { var i = e[n] - i.save(), i.scale(f, f), i.translate(-d.x, -d.y) + ;(i.save(), i.scale(f, f), i.translate(-d.x, -d.y)) } for (t(v), n = e.length - 1; 0 <= n; n--) (i = e[n]).restore() - }) + })) } var c = new (function () { function e(e) { @@ -6328,10 +6343,10 @@ } s /= 6 } - return (e.h = 360 * s), (e.s = 100 * o), (e.l = 100 * a), (e.model = 'hsl'), e + return ((e.h = 360 * s), (e.s = 100 * o), (e.l = 100 * a), (e.model = 'hsl'), e) } var t = { h: 0, s: 0, l: 0, a: 1, model: 'hsla' } - ;(this.u = function (n) { + ;((this.u = function (n) { return y.Ac(n) ? e(c.ga(n)) : y.wb(n) ? e(n) : t }), (this.ga = function (e) { @@ -6421,7 +6436,7 @@ if (0 == e.zj) i = e = o = i else { var a = 2 * i - (r = 0.5 > i ? i * (1 + r) : i + r - i * r) - ;(i = t(a, r, o + 1 / 3)), (e = t(a, r, o)), (o = t(a, r, o - 1 / 3)) + ;((i = t(a, r, o + 1 / 3)), (e = t(a, r, o)), (o = t(a, r, o - 1 / 3))) } return n(255 * i, 255 * e, 255 * o) }), @@ -6499,7 +6514,7 @@ ((0.5 + n) | 0) + '%)' ) - }) + })) })() function h() { var e, @@ -6507,21 +6522,21 @@ n = [], i = this, r = new (function () { - ;(this.then = function (r) { - return r && (t ? r.apply(i, e) : n.push(r)), this + ;((this.then = function (r) { + return (r && (t ? r.apply(i, e) : n.push(r)), this) }), (this.Fg = function (e) { - return (i = e), { then: this.then } - }) + return ((i = e), { then: this.then }) + })) })() - ;(this.resolve = function () { + ;((this.resolve = function () { e = arguments for (var r = 0; r < n.length; r++) n[r].apply(i, e) - return (t = !0), this + return ((t = !0), this) }), (this.promise = function () { return r - }) + })) } function f(e) { var t = new h(), @@ -6536,7 +6551,7 @@ } function d(e) { var t = 0 - ;(this.i = function () { + ;((this.i = function () { t++ }), (this.u = function () { @@ -6547,7 +6562,7 @@ }), (this.initial = function () { return 0 === t - }) + })) } var p = { oe: function (e, t, n, i) { @@ -6556,30 +6571,30 @@ var r = e.getBoundingClientRect() } catch (g) { if (!p.Ih) { - ;(p.Ih = !0), + ;((p.Ih = !0), window.console.log('getBoundingClientRect() failed.'), - window.console.log('Element', e) + window.console.log('Element', e)) for (var o = (r = window.console).log; null !== e.parentElement; ) e = e.parentElement o.call(r, 'Attached to DOM', e === document.body.parentElement) } r = { left: 0, top: 0 } } - return (i.x = t - r.left), (i.y = n - r.top), i + return ((i.x = t - r.left), (i.y = n - r.top), i) }, } function b() { var e = document, t = {} - ;(this.addEventListener = function (n, i, r) { + ;((this.addEventListener = function (n, i, r) { var o = t[n] - o || ((o = []), (t[n] = o)), o.push(i), e.addEventListener(n, i, r) + ;(o || ((o = []), (t[n] = o)), o.push(i), e.addEventListener(n, i, r)) }), (this.i = function () { y.Aa(t, function (t, n) { for (var i = t.length - 1; 0 <= i; i--) e.removeEventListener(n, t[i]) }) - }) + })) } function v(e) { function t(e) { @@ -6626,7 +6641,7 @@ g = [], v = [], m = [] - ;(this.i = function (e) { + ;((this.i = function (e) { a.push(e) }), (this.u = function (e) { @@ -6661,7 +6676,7 @@ }), (this.Za = function () { o.i() - }) + })) var y, C, w, @@ -6670,12 +6685,12 @@ A = { x: 0, y: 0 }, S = !1, T = !1 - o.addEventListener( + ;(o.addEventListener( 'mousedown', t(function (t) { if (t.target !== e) { var n = i(t, u) - ;(A.x = n.x), + ;((A.x = n.x), (A.y = n.y), (x.x = n.x), (x.y = n.y), @@ -6684,7 +6699,7 @@ (C = !1), (y = window.setTimeout(function () { 100 > M.i(x, n) && (window.clearTimeout(_), i(t, s), (C = !0)) - }, 400)) + }, 400))) } }) ), @@ -6706,11 +6721,11 @@ }), o.addEventListener('mousemove', function (e) { var t = r(e, {}) - n(e) && i(e, h, { type: 'move' }), + ;(n(e) && i(e, h, { type: 'move' }), (x.x = t.x), (x.y = t.y), S && !T && 100 < M.i(A, x) && (T = !0), - T && i(e, g, t) + T && i(e, g, t)) }), o.addEventListener( 'mouseout', @@ -6723,14 +6738,14 @@ t(function (e) { if ('deltaY' in e) var t = e.deltaY else - (t = 0), + ((t = 0), 'detail' in e && (t = e.detail), 'wheelDelta' in e && (t = -e.wheelDelta / 120), 'wheelDeltaY' in e && (t = -e.wheelDeltaY / 120), 'axis' in e && e.axis === e.HORIZONTAL_AXIS && (t = 0), - (t *= 10) - t && e.deltaMode && (t = 1 === e.deltaMode ? 67 * t : 800 * t), - i(e, m, { ed: -t / 200, $h: !0 }) + (t *= 10)) + ;(t && e.deltaMode && (t = 1 === e.deltaMode ? 67 * t : 800 * t), + i(e, m, { ed: -t / 200, $h: !0 })) }), { passive: !1 } ), @@ -6739,7 +6754,7 @@ t(function (e) { e.preventDefault() }) - ) + )) } var m = (function () { function e(e) { @@ -6885,11 +6900,11 @@ var r = this, o = arguments, a = n && !i - clearTimeout(i), + ;(clearTimeout(i), (i = setTimeout(function () { - ;(i = null), n || e.apply(r, o) + ;((i = null), n || e.apply(r, o)) }, t)), - a && e.apply(r, o) + a && e.apply(r, o)) } }, defer: function (e) { @@ -6939,9 +6954,9 @@ } function _() { var e = {} - ;(this.subscribe = function (t, n) { + ;((this.subscribe = function (t, n) { var i = e[t] - i || ((i = []), (e[t] = i)), i.push(n) + ;(i || ((i = []), (e[t] = i)), i.push(n)) }), (this.D = function (t, n) { var i = e[t] @@ -6952,7 +6967,7 @@ o++ ) i[o].apply(this, r) - }) + })) } var x = function (e) { for (var t = '', n = 0; n < e.length; n++) @@ -6964,7 +6979,7 @@ var l, c = this, h = 0 - ;(this.id = o++), + ;((this.id = o++), (this.name = u || '{unnamed on ' + t + '}'), (this.target = function () { return t @@ -6997,22 +7012,22 @@ } else t = n[l] for (; l < n.length; ) { if (t.gb && t.gb.call(t, e, h, c)) return !0 - t.after && t.after.call(t, e, h, c), + ;(t.after && t.after.call(t, e, h, c), y.V(l) && (l = -1), - ++l < n.length && (t = n[l]).before && t.before.call(t, e, h, c) + ++l < n.length && (t = n[l]).before && t.before.call(t, e, h, c)) } } return !1 - }) + })) } function i() { - !(function () { + ;(!(function () { var e = a.now() s.forEach(function (t) { !0 !== t.af(e) && r(t) }) })(), - 0 == s.length && e.cancel(i) + 0 == s.length && e.cancel(i)) } function r(e) { s = s.filter(function (t) { @@ -7022,7 +7037,7 @@ var o = 0, a = n.create(), s = [] - ;(this.i = function () { + ;((this.i = function () { for (var e = s.length - 1; 0 <= e; e--) s[e].stop() s = [] }), @@ -7037,7 +7052,7 @@ r = e.target, o = e.duration, s = e.ba - ;(this.before = function () { + ;((this.before = function () { for (var o in ((n = {}), e.P)) r.hasOwnProperty(o) && (n[o] = { @@ -7053,35 +7068,35 @@ var u = n[t] r[t] = u.start + (u.end - u.start) * u.easing(e) } - return s && s.call(r, e), 1 > e - }) + return (s && s.call(r, e), 1 > e) + })) } function i(e, t, n) { - ;(this.Xa = n), + ;((this.Xa = n), (this.gb = function () { - return e.call(t), !1 - }) + return (e.call(t), !1) + })) } function r(e) { var t - ;(this.before = function (n, i) { + ;((this.before = function (n, i) { t = i + e }), (this.gb = function (e, n) { return n < t - }) + })) } function o(e) { var t - ;(this.before = function (n) { + ;((this.before = function (n) { t = n + e }), (this.gb = function (e) { return e < t - }) + })) } function u(e) { - ;(this.before = function () { + ;((this.before = function () { e.forEach(function (e) { e.start() }) @@ -7089,7 +7104,7 @@ (this.gb = function () { for (var t = 0; t < e.length; t++) if (e[t].xb()) return !0 return !1 - }) + })) } return ( (e.A = function (e, a) { @@ -7098,8 +7113,8 @@ return n ? (y.V(r) && (r = e), t.Mb(new i(n, r, o))) : t } var l = [] - ;(this.Mb = function (e) { - return l.push(e), this + ;((this.Mb = function (e) { + return (l.push(e), this) }), (this.wait = function (e) { return this.Mb(new o(e)) @@ -7114,7 +7129,7 @@ return s(this, e, t, !0) }), (this.fa = function (t) { - return y.V(t.target) && (t.target = e), this.Mb(new n(t)) + return (y.V(t.target) && (t.target = e), this.Mb(new n(t))) }), (this.Qa = function (e) { return this.Mb(new u(e)) @@ -7127,12 +7142,12 @@ }), (this.i = function () { var e = new h() - return this.Xd().call(e.resolve).done(), e.promise() + return (this.Xd().call(e.resolve).done(), e.promise()) }), (this.Ta = function () { var e = this.i() - return this.start(), e - }) + return (this.start(), e) + })) })() }), (e.jc = function (t) { @@ -7151,7 +7166,7 @@ }), e ) - })()) + })())) } var S = (function () { var e = { @@ -7268,26 +7283,26 @@ } for (o = 0; o < e.length; o++) if (((h = i[o]), (c = l[o]), h && c)) { - ;(n = e[o]), (u = r) + ;((n = e[o]), (u = r)) var f = h.x - r.x if (((h = h.y - r.y), 1e-12 < (h = Math.sqrt(f * f + h * h)))) { f = n.x - r.x var d = n.y - r.y - ;(h = Math.sqrt(f * f + d * d) / h), + ;((h = Math.sqrt(f * f + d * d) / h), (n.x = u.x + h * (c.x - u.x)), - (n.y = u.y + h * (c.y - u.y)) - } else (n.x = u.x), (n.y = u.y) + (n.y = u.y + h * (c.y - u.y))) + } else ((n.x = u.x), (n.y = u.y)) } - for (o = 0; o < e.length; o++) ((l = e[o]).x += a), (l.y += s) + for (o = 0; o < e.length; o++) (((l = e[o]).x += a), (l.y += s)) }), (this.F = function (e, t) { if (0 !== e.length) { for (var n, i, r = (n = e[0].x), o = (i = e[0].y), a = e.length; 0 < --a; ) - (r = Math.min(r, e[a].x)), + ((r = Math.min(r, e[a].x)), (n = Math.max(n, e[a].x)), (o = Math.min(o, e[a].y)), - (i = Math.max(i, e[a].y)) - return (t.x = r), (t.y = o), (t.w = n - r), (t.o = i - o), t + (i = Math.max(i, e[a].y))) + return ((t.x = r), (t.y = o), (t.w = n - r), (t.o = i - o), t) } }), (this.H = function (e) { @@ -7304,12 +7319,12 @@ l = e[s + 1], c = o.y + u.y + l.y, h = (u.x - o.x) * (l.y - o.y) - (l.x - o.x) * (u.y - o.y) - ;(n += h * (o.x + u.x + l.x)), (i += h * c), (a += h) + ;((n += h * (o.x + u.x + l.x)), (i += h * c), (a += h)) } - return (t.x = n / (3 * a)), (t.y = i / (3 * a)), (t.ha = a / 2), t + return ((t.x = n / (3 * a)), (t.y = i / (3 * a)), (t.ha = a / 2), t) }), (this.Ja = function (e, t) { - this.u(e, t), (t.r = Math.sqrt(t.ha / Math.PI)) + ;(this.u(e, t), (t.r = Math.sqrt(t.ha / Math.PI))) }), (this.sa = function (e, t) { for (var n = 0; n < e.length; n++) { @@ -7356,12 +7371,12 @@ : Math.abs(s - i.x) / Math.abs(r)) : a } - ;(o = y.I(o, 0.5)), (a = y.I(a, 0.5)), (r = y.I(r, 1)) + ;((o = y.I(o, 0.5)), (a = y.I(a, 0.5)), (r = y.I(r, 1))) var l = Number.MAX_VALUE, c = (s = 0), h = { x: 0, y: 0 }, f = o * r - ;(r *= 1 - o), (o = 1 - a), (h.x = i.x - f), (h.y = i.y - a) + ;((r *= 1 - o), (o = 1 - a), (h.x = i.x - f), (h.y = i.y - a)) var d = u(f, a, d) return ( (h.x = i.x + r), @@ -7403,12 +7418,12 @@ if (s && (r.push(s), 2 == o.push(i))) break } if (2 == r.length) { - ;(s = r[0]), (r = r[1]) + ;((s = r[0]), (r = r[1])) var u = o[0] o = o[1] var l = [r, s] for (i = u + 1; i <= o; i++) l.push(e[i]) - for (i = [s, r]; o != u; ) (o = (o + 1) % a), i.push(e[o]) + for (i = [s, r]; o != u; ) ((o = (o + 1) % a), i.push(e[o])) return ( (e = [l, i]), (a = n.x - t.x), @@ -7421,7 +7436,7 @@ } }), (this.ga = function (e, t, n, i) { - return (i.x = e * (t.x - n.x) + n.x), (i.y = e * (t.y - n.y) + n.y), i + return ((i.x = e * (t.x - n.x) + n.x), (i.y = e * (t.y - n.y) + n.y), i) }), (this.i = e), (this.ta = function (e, n, i) { @@ -7468,21 +7483,21 @@ })(), T = new (function () { function e(e, t) { - ;(this.face = e), (this.Rc = t), (this.ec = this.Lc = null) + ;((this.face = e), (this.Rc = t), (this.ec = this.Lc = null)) } function t(e, t, n) { - ;(this.la = [e, t, n]), (this.J = Array(3)) + ;((this.la = [e, t, n]), (this.J = Array(3))) var i = t.y - e.y, r = n.z - e.z, o = t.x - e.x t = t.z - e.z var a = n.x - e.x - ;(e = n.y - e.y), + ;((e = n.y - e.y), (this.Ha = { x: i * r - t * e, y: t * a - o * r, z: o * e - i * a }), (this.Ya = []), - (this.ad = this.visible = !1) + (this.ad = this.visible = !1)) } - ;(this.i = function (i) { + ;((this.i = function (i) { function o(t, n, i) { var r = t.la[0], o = t.Ha, @@ -7493,8 +7508,8 @@ h = (n = n.Ya).length for (s = 0; s < h; s++) { var f = n[s].Rc - ;(c[f.index] = !0), - 0 > a * (f.x - r.x) + l * (f.y - r.y) + o * (f.z - r.z) && e.add(t, f) + ;((c[f.index] = !0), + 0 > a * (f.x - r.x) + l * (f.y - r.y) + o * (f.z - r.z) && e.add(t, f)) } for (h = (n = i.Ya).length, s = 0; s < h; s++) !0 !== c[(f = n[s].Rc).index] && @@ -7504,7 +7519,7 @@ var a, s, u = i.length - for (a = 0; a < u; a++) (i[a].index = a), (i[a].Pb = null) + for (a = 0; a < u; a++) ((i[a].index = a), (i[a].Pb = null)) var l, c = [] if ( @@ -7531,7 +7546,7 @@ ? (t + 2) % 3 : t } - ;(t.J[r(t, n, i)] = e), (e.J[r(e, i, n)] = t) + ;((t.J[r(t, n, i)] = e), (e.J[r(e, i, n)] = t)) } if (4 > u) return 0 var o = i[0], @@ -7555,18 +7570,18 @@ o++ ) for (a = i[o], s = 0; 4 > s; s++) - (h = (l = c[s]).la[0]), + ((h = (l = c[s]).la[0]), 0 > (f = l.Ha).x * (a.x - h.x) + f.y * (a.y - h.y) + - f.z * (a.z - h.z) && e.add(l, a) + f.z * (a.z - h.z) && e.add(l, a)) return 4 })()) ) { for (; l < u; ) { var h = i[l] if (h.Pb) { - for (a = h.Pb; null !== a; ) (a.face.visible = !0), (a = a.ec) + for (a = h.Pb; null !== a; ) ((a.face.visible = !0), (a = a.ec)) a = 0 e: for (; a < c.length; a++) { var f = c[a] @@ -7580,7 +7595,7 @@ } } } - ;(f = []), (d = []) + ;((f = []), (d = [])) var b = p, v = g do { @@ -7593,7 +7608,7 @@ var m = null, y = null for (a = 0; a < f.length; a++) { - ;(b = f[a]), (v = d[a]) + ;((b = f[a]), (v = d[a])) var C = b.J[v], w = b.la[(v + 1) % 3], _ = b.la[v], @@ -7605,7 +7620,7 @@ k = _.y - h.y if (0 < r.length) { var z = r.pop() - ;(z.la[0] = h), + ;((z.la[0] = h), (z.la[1] = w), (z.la[2] = _), (z.Ha.x = x * A - M * k), @@ -7613,7 +7628,7 @@ (z.Ha.z = S * k - x * T), (z.Ya.length = 0), (z.visible = !1), - (z.ad = !0) + (z.ad = !0)) } else z = { la: [h, w, _], @@ -7622,23 +7637,23 @@ Ya: [], visible: !1, } - c.push(z), + ;(c.push(z), (b.J[v] = z), (z.J[1] = b), null !== y && ((y.J[0] = z), (z.J[2] = y)), (y = z), null === m && (m = z), - o(z, b, C) + o(z, b, C)) } for (y.J[0] = m, m.J[2] = y, a = [], s = 0; s < c.length; s++) if (!0 === (f = c[s]).visible) { for (b = (d = f.Ya).length, h = 0; h < b; h++) - (m = (v = d[h]).Lc), + ((m = (v = d[h]).Lc), (y = v.ec), null !== m && (m.ec = y), null !== y && (y.Lc = m), null === m && (v.Rc.Pb = y), - n.push(v) + n.push(v)) f.ad && r.push(f) } else a.push(f) c = a @@ -7652,10 +7667,10 @@ (e.add = function (t, i) { if (0 < n.length) { var r = n.pop() - ;(r.face = t), (r.Rc = i), (r.ec = null), (r.Lc = null) + ;((r.face = t), (r.Rc = i), (r.ec = null), (r.Lc = null)) } else r = new e(t, i) - t.Ya.push(r), null !== (t = i.Pb) && (t.Lc = r), (r.ec = t), (i.Pb = r) - }) + ;(t.Ya.push(r), null !== (t = i.Pb) && (t.Lc = r), (r.ec = t), (i.Pb = r)) + })) for (var n = Array(2e3), i = 0; i < n.length; i++) n[i] = new e(null, null) var r = Array(1e3) for (i = 0; i < r.length; i++) @@ -7683,11 +7698,11 @@ 0 < u; u-- ) - (i = t[u]), + ((i = t[u]), (r = Math.min(r, i.x)), (o = Math.min(o, i.y)), (a = Math.max(a, i.x)), - (s = Math.max(s, i.y)) + (s = Math.max(s, i.y))) if (!(a - r < 3 * n || s - o < 3 * n)) { e: { for ( @@ -7695,7 +7710,7 @@ a <= o; a++ ) { - ;(s = t[a % o]), (u = t[(a + 1) % o]) + ;((s = t[a % o]), (u = t[(a + 1) % o])) var l = t[(a + 2) % o], c = u.x - s.x, h = u.y - s.y, @@ -7730,7 +7745,7 @@ break e } } - r.shift(), (i = 3 > r.length ? void 0 : r) + ;(r.shift(), (i = 3 > r.length ? void 0 : r)) } if (!i) e: { @@ -7753,20 +7768,20 @@ u++ ) { var g = p * (a - r[u].y) - (o - r[u].x) * h - 1e-12 >= g && -1e-12 <= g && (g = 0), + ;(1e-12 >= g && -1e-12 <= g && (g = 0), d.push(g), 0 < g && (f = !1), - 0 > g && (c = !1) + 0 > g && (c = !1)) } if (f) r = [] else if (!c) { for (p = [], u = 0; u < r.length; u++) - (h = (u + 1) % r.length), + ((h = (u + 1) % r.length), (f = d[u]), (c = d[h]), 0 <= f && p.push(r[u]), ((0 < f && 0 > c) || (0 > f && 0 < c)) && - p.push(e(r[u].x, r[u].y, r[h].x, r[h].y, o, a, s, l)) + p.push(e(r[u].x, r[u].y, r[h].x, r[h].y, o, a, s, l))) r = p } } @@ -7787,10 +7802,10 @@ function e(e) { for (var t = e[0].x, n = e[0].y, i = t, r = n, o = 1; o < e.length; o++) { var a = e[o] - ;(t = Math.min(t, a.x)), + ;((t = Math.min(t, a.x)), (n = Math.min(n, a.y)), (i = Math.max(i, a.x)), - (r = Math.max(r, a.y)) + (r = Math.max(r, a.y))) } return [ { x: t + 2 * (e = i - t), y: n + 2 * (r -= n), w: 0 }, @@ -7798,7 +7813,7 @@ { x: t - 2 * e, y: n + 2 * r, w: 0 }, ] } - ;(this.i = function (t, n) { + ;((this.i = function (t, n) { function i(e) { var t = [e[0]], n = e[0][0], @@ -7820,7 +7835,7 @@ break e } } - return t[0][0] != t[r - 1][1] && t.push([t[r - 1][1], t[0][0]]), t + return (t[0][0] != t[r - 1][1] && t.push([t[r - 1][1], t[0][0]]), t) } function r(e, t, n, i) { var r, @@ -7859,16 +7874,16 @@ -1 === h && (h = r), -1 !== f) ) - for (; r != f; ) (f = (f + 1) % l), a.push(t[f]), s.push(null) - a.push(v[g], v[o]), s.push(n[d][2], null), (f = m[o]) + for (; r != f; ) ((f = (f + 1) % l), a.push(t[f]), s.push(null)) + ;(a.push(v[g], v[o]), s.push(n[d][2], null), (f = m[o])) } } else if (g.jb && !b.jb) for (r = 0; r < l; r++) { if (((y = (c + 1) % l), (o = M.T(t[c], t[y], g.ea, b.ea, !1)))) { if (-1 !== f) for (v = f; c != v; ) - (v = (v + 1) % l), a.push(t[v]), s.push(null) - a.push(o), s.push(n[d][2]), -1 === h && (h = c) + ((v = (v + 1) % l), a.push(t[v]), s.push(null)) + ;(a.push(o), s.push(n[d][2]), -1 === h && (h = c)) break } c = y @@ -7876,20 +7891,20 @@ else if (!g.jb && b.jb) for (r = 0; r < l; r++) { if (((y = (c + 1) % l), (o = M.T(t[c], t[y], g.ea, b.ea, !1)))) { - a.push(g.ea, o), s.push(n[d][2], null), (f = c) + ;(a.push(g.ea, o), s.push(n[d][2], null), (f = c)) break } c = y } - else a.push(g.ea), s.push(n[d][2]) + else (a.push(g.ea), s.push(n[d][2])) d = p } if (0 == a.length) s = a = null else if (-1 !== f) - for (; h != f; ) (f = (f + 1) % l), a.push(t[f]), s.push(null) - ;(e.C = a), (e.J = s) + for (; h != f; ) ((f = (f + 1) % l), a.push(t[f]), s.push(null)) + ;((e.C = a), (e.J = s)) } - if (1 === t.length) (t[0].C = n.slice(0)), (t[0].J = []) + if (1 === t.length) ((t[0].C = n.slice(0)), (t[0].J = [])) else { var o, a = e(n), @@ -7899,8 +7914,8 @@ s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y - u.w }) } for (o = 0; o < t.length; o++) - ((u = t[o]).C = null), - s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y - u.w }) + (((u = t[o]).C = null), + s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y - u.w })) var l = T.i(s).pe for ( (function () { @@ -7944,8 +7959,8 @@ if (!(0 > s.Ha.z)) { var u = r.la, l = u[(a + 1) % 3].index - ;(u = u[a].index), - 2 < l && i[l - 3].push([r, s, 2 < u ? t[u - 3] : null]) + ;((u = u[a].index), + 2 < l && i[l - 3].push([r, s, 2 < u ? t[u - 3] : null])) } } } @@ -7967,7 +7982,7 @@ for (a = 0; a < h; a++) 1e-12 < M.i(u[a][0].ea, u[(a + 1) % h][0].ea) && (f.push(u[a][0].ea), d.push(u[a][2])) - ;(c.C = f), (c.J = d) + ;((c.C = f), (c.J = d)) } c.C && 3 > c.C.length && ((c.C = null), (c.J = null)) } @@ -7979,7 +7994,7 @@ o = t.length for (i = 0; i < o; i++) { var a = t[i] - null === a.C && (r = !0), (a.Yd = a.w) + ;(null === a.C && (r = !0), (a.Yd = a.w)) } if (r) { r = e(n) @@ -7989,7 +8004,7 @@ s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y }) } for (a = 0; a < i; a++) - (u = t[a]), s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y }) + ((u = t[a]), s.push({ x: u.x, y: u.y, z: u.x * u.x + u.y * u.y })) for (u = T.i(s).pe, r = Array(i), a = 0; a < i; a++) r[a] = {} for (s = u.length, a = 0; a < s; a++) { var l = u[a] @@ -8001,8 +8016,8 @@ d = c[l + 1].index - 3 0 <= f && 0 <= d && ((r[f][d] = !0), (r[d][f] = !0)) } - ;(l = c[0].index - 3), - 0 <= d && 0 <= l && ((r[d][l] = !0), (r[l][d] = !0)) + ;((l = c[0].index - 3), + 0 <= d && 0 <= l && ((r[d][l] = !0), (r[l][d] = !0))) } } for (a = 0; a < i; a++) { @@ -8011,28 +8026,28 @@ (d = Number.MAX_VALUE), (s = null), l)) - (l = t[p]), d > (c = M.i(u, l)) && ((d = c), (s = l)) - ;(u.wj = s), (u.Ze = Math.sqrt(d)) + ((l = t[p]), d > (c = M.i(u, l)) && ((d = c), (s = l))) + ;((u.wj = s), (u.Ze = Math.sqrt(d))) } for (i = 0; i < o; i++) - (a = t[i]), (p = Math.min(Math.sqrt(a.w), 0.95 * a.Ze)), (a.w = p * p) + ((a = t[i]), (p = Math.min(Math.sqrt(a.w), 0.95 * a.Ze)), (a.w = p * p)) for (this.i(t, n), i = 0; i < o; i++) (a = t[i]).Yd !== a.w && 0 < a.kc && ((n = Math.min(a.kc, a.Yd - a.w)), (a.w += n), (a.kc -= n)) } - }) + })) })(), D = new (function () { - ;(this.H = function (e) { + ;((this.H = function (e) { for (var t = 0, n = (e = e.m).length, i = 0; i < n; i++) { var r = e[i] if (r.C) { var o = r.x, a = r.y - M.u(r.C, r), + ;(M.u(r.C, r), t < (r = (0 < (o -= r.x) ? o : -o) + (0 < (r = a - r.y) ? r : -r)) && - (t = r) + (t = r)) } } return t @@ -8067,11 +8082,11 @@ if (i[0].J) { var r, o = i.length - for (e = 0; e < o; e++) (i[e].Sc = !1), (i[e].Zb = 0) + for (e = 0; e < o; e++) ((i[e].Sc = !1), (i[e].Zb = 0)) var a = (r = 0) for ((o = [])[r++] = t || i[0], t = t.Zb = 0; a < r; ) if (!(i = o[a++]).Sc && i.J) { - n(i, t++, i.Zb), (i.Sc = !0) + ;(n(i, t++, i.Zb), (i.Sc = !0)) var s = i.J, u = s.length for (e = 0; e < u; e++) { @@ -8080,12 +8095,12 @@ } } } else for (e = 0; e < i.length; e++) n(i[e], e, 1) - }) + })) })(), B = (function () { function e(e, r, u, l, c, d, p, g) { var b = y.extend({}, a, e) - 1 > e.lineHeight && (e.lineHeight = 1), (e = b.fontFamily) + ;(1 > e.lineHeight && (e.lineHeight = 1), (e = b.fontFamily)) var v = b.fontStyle + ' ' + b.fontVariant + ' ' + b.fontWeight, m = b.hb, C = b.Gc, @@ -8100,22 +8115,22 @@ (function (e, t) { t = t.te var n = s[t] - void 0 === n && ((n = {}), (s[t] = n)), + ;(void 0 === n && ((n = {}), (s[t] = n)), (n[' '] = e.measureText(' ').width), - (n['…'] = e.measureText('…').width) + (n['…'] = e.measureText('…').width)) })(r, b), (u = u.trim()), (h.text = u), (function (e, t, n, i) { for (var r, o, a = 0; a < e.length; a++) e[a].y === t.y && (void 0 === r ? (r = a) : (o = a)) - void 0 === o && (o = r), + ;(void 0 === o && (o = r), r !== o && e[o].x < e[r].x && ((a = r), (r = o), (o = a)), (i.C = e), (i.F = t), (i.cd = n), (i.Xe = r), - (i.Ye = o) + (i.Ye = o)) })(l, c, d, f), /[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/.test( u @@ -8132,7 +8147,7 @@ A = 0, S = Number.MAX_VALUE, M = Number.MIN_VALUE - o( + ;(o( b, h, _.bc, @@ -8140,10 +8155,10 @@ f, _.Ub, function (e, t) { - 0 < x.length && ' ' === t && (x += ' '), (x += e) + ;(0 < x.length && ' ' === t && (x += ' '), (x += e)) }, function (e, t, n, i, o) { - '­' === i && (x += '‐'), + ;('­' === i && (x += '‐'), r.save(), r.translate(d.x, t), (e = _.fontSize / 100), @@ -8153,7 +8168,7 @@ (x = n), A < o && (A = o), S > t && (S = t), - M < t && (M = t) + M < t && (M = t)) } ), (_.box = { @@ -8162,7 +8177,7 @@ w: A, o: M - S + _.fontSize, }), - r.restore() + r.restore()) } else r.clear && r.clear() return _ } @@ -8172,14 +8187,14 @@ o = [], a = [], u = r.length >>> 1 - for (i = 0; i < u; i++) o.push(r[2 * i]), a.push(r[2 * i + 1]) + for (i = 0; i < u; i++) (o.push(r[2 * i]), a.push(r[2 * i + 1])) for ( 2 * i < r.length && (o.push(r[2 * i]), a.push(void 0)), n = s[n], i = 0; i < o.length; i++ ) void 0 === (u = n[(r = o[i])]) && ((u = e.measureText(r).width), (n[r] = u)) - ;(t.Tc = o), (t.Qf = a) + ;((t.Tc = o), (t.Qf = a)) } function n(e) { for ( @@ -8193,15 +8208,15 @@ var o = t[r] if (3 < o.length) { var a = '' - ;(a += o.charAt(0)), (a += o.charAt(1)) + ;((a += o.charAt(0)), (a += o.charAt(1))) for (var s = 2; s < o.length - 2; s++) { var u = o.charAt(s) - i[u] || (a += '​'), (a += u) + ;(i[u] || (a += '​'), (a += u)) } - ;(a += '​'), + ;((a += '​'), (a += o.charAt(o.length - 2)), (a += o.charAt(o.length - 1)), - n.push(a) + n.push(a)) } else n.push(o) } e.text = n.join(' ') @@ -8226,9 +8241,9 @@ f = 2 * Math.min(f.y - d.y, d.y + d.o - f.y) } if (!(0 >= (c = Math.min(f, c * n.F.o)))) { - ;(f = i), + ;((f = i), (r = Math.min(r, c)), - (d = Math.min(1, c / Math.max(20, t.Tc.length))) + (d = Math.min(1, c / Math.max(20, t.Tc.length)))) do { var b = (f + r) / 2, v = Math.min(h.length, Math.floor((c + b * (u - 1 - 2 * l)) / (b * u))), @@ -8268,15 +8283,18 @@ var w = 1 break case 'bottom': - ;(r = m.y - (i * n + d * (n - 1)) + i / 2 - i * p), (w = -1) + ;((r = m.y - (i * n + d * (n - 1)) + i / 2 - i * p), (w = -1)) break default: - ;(r = m.y - ((i * (n - 1)) / 2 + (d * (n - 1)) / 2)), (w = 1) + ;((r = m.y - ((i * (n - 1)) / 2 + (d * (n - 1)) / 2)), (w = 1)) } for (e = r, p = 0; p < n; p++) - (u[2 * p] = r - i / 2), (u[2 * p + 1] = r + i / 2), (r += w * i), (r += w * d) + ((u[2 * p] = r - i / 2), + (u[2 * p + 1] = r + i / 2), + (r += w * i), + (r += w * d)) for (; l.length < u.length; ) l.push(Array(2)) - ;(p = u), (r = 2 * n), (w = l) + ;((p = u), (r = 2 * n), (w = l)) var _ = v.length, x = y y = (y - 1 + _) % _ @@ -8284,20 +8302,20 @@ C = (C + 1) % _ for (var S = 0; S < r; ) { for (var M = p[S], T = v[y]; T.y < M; ) - (x = y), (T = v[(y = (y - 1 + _) % _)]) - for (var k = v[C]; k.y < M; ) (A = C), (k = v[(C = (C + 1) % _)]) + ((x = y), (T = v[(y = (y - 1 + _) % _)])) + for (var k = v[C]; k.y < M; ) ((A = C), (k = v[(C = (C + 1) % _)])) var z = v[x], D = v[A] - ;(k = D.x + ((k.x - D.x) * (M - D.y)) / (k.y - D.y)), + ;((k = D.x + ((k.x - D.x) * (M - D.y)) / (k.y - D.y)), (w[S][0] = z.x + ((T.x - z.x) * (M - z.y)) / (T.y - z.y)), (w[S][1] = k), - S++ + S++) } for (p = 0; p < n; p++) - (v = 2 * p), + ((v = 2 * p), (w = (w = (r = m.x) - l[v][0]) < (_ = l[v][1] - r) ? w : _), (v = (_ = r - l[v + 1][0]) < (v = l[v + 1][1] - r) ? _ : v), - (c[p] = 2 * (w < v ? w : v) - f * i) + (c[p] = 2 * (w < v ? w : v) - f * i)) for ( x = (g[' '] * i) / 100, w = (g['…'] * i) / 100, @@ -8313,7 +8331,7 @@ (A = t[p]), m + (_ = (g[r] * i) / 100) < y && b.length - p >= n - f && '\n' != v) ) - (m += _), ' ' === A && (m += x), a && a(r, v) + ((m += _), ' ' === A && (m += x), a && a(r, v)) else { if (_ > y && (f !== n - 1 || !o)) return !1 if (f + 1 >= n) @@ -8340,7 +8358,7 @@ } v = A } - return h && h(f, e, void 0, void 0, m), !0 + return (h && h(f, e, void 0, void 0, m), !0) } var a = { hb: 72, @@ -8422,10 +8440,10 @@ c = r.w if (((r = r.o), 0 != i.length)) if (1 == i.length) - (i[0].x = u + c / 2), + ((i[0].x = u + c / 2), (i[0].y = l + r / 2), (i[0].nd = 0), - o && s(i[0], u, l, c, r) + o && s(i[0], u, l, c, r)) else { i = i.slice(0) for (var h = 0, f = 0; f < i.length; f++) h += i[f].weight @@ -8442,21 +8460,21 @@ g = p / d, b = a, v = d - ;((p = h).x = f + g / 2), + ;(((p = h).x = f + g / 2), (p.y = b + v / 2), o && s(h, f, a, g, d), - (f += g) + (f += g)) } while (0 < c.length) return e(i, r, a + d, u, l - d) } - ;(f = a), (g = h / l) + ;((f = a), (g = h / l)) do { - ;(b = f), + ;((b = f), (v = d = (p = (h = c.shift()).lc) / g), ((p = h).x = r + g / 2), (p.y = b + v / 2), o && s(h, r, f, g, d), - (f += d) + (f += d)) } while (0 < c.length) return e(i, r + g, a, u - g, l) } @@ -8478,7 +8496,7 @@ for (var t = 0, n = 0; n < e.length; n++) t += e[n].lc return t } - ;(this.u = e( + ;((this.u = e( function (e, i, r, o, a) { for (var s = 1 / (a = Math.pow(2, a)), u = i < r; 0 < e.length; ) { var l = o[o.length - 1], @@ -8487,12 +8505,12 @@ f = u ? a : s, d = u ? s : a, p = t(l, h, f, d) - l.push(c), + ;(l.push(c), p < (h = t(l, h, f, d)) && (l.pop(), o.push([c]), u ? (r -= n(l) / i) : (i -= n(l) / r), - (u = i < r)) + (u = i < r))) } return o }, @@ -8516,34 +8534,34 @@ for (var s = Math.pow(2, o), u = 1 / s; 0 < e.length; ) { if (((o = t((i = r[r.length - 1]), n, s, u)), 0 == e.length)) return var l = e.shift() - i.push(l), o < t(i, n, s, u) && (i.pop(), a(o), r.push([l])) + ;(i.push(l), o < t(i, n, s, u) && (i.pop(), a(o), r.push([l]))) } - return a(t(r[r.length - 1], n, s, u)), r + return (a(t(r[r.length - 1], n, s, u)), r) }, function () { return !0 } - )) + ))) })() function E(e) { var t, n = {}, i = e.Cd - e.j.subscribe('model:loaded', function (e) { + ;(e.j.subscribe('model:loaded', function (e) { t = e }), (this.M = function () { e.j.D('api:initialized', this) }), (this.nc = function (e, t, r, o) { - this.Xc(n, t), this.Yc(n, t), this.Wc(n, t, !1), o && o(n), e(i, n, r) + ;(this.Xc(n, t), this.Yc(n, t), this.Wc(n, t, !1), o && o(n), e(i, n, r)) }), (this.bd = function (e, n, i, r, o, a, s) { if (e) { for (e = n.length - 1; 0 <= e; e--) { var u = n[e], l = y.extend({ group: u.group }, o) - ;(l[i] = r(u)), a(l) + ;((l[i] = r(u)), a(l)) } 0 < n.length && s( @@ -8602,11 +8620,11 @@ t.oa && t.oa.ka) ) { var i = t.oa.box - ;(e.labelBoxLeft = i.x), + ;((e.labelBoxLeft = i.x), (e.labelBoxTop = i.y), (e.labelBoxWidth = i.w), (e.labelBoxHeight = i.o), - (e.labelFontSize = t.oa.fontSize) + (e.labelFontSize = t.oa.fontSize)) } return ( n && @@ -8621,11 +8639,11 @@ }))), e ) - }) + })) } var j = new (function () { var e = window.console - ;(this.i = function (e) { + ;((this.i = function (e) { throw 'FoamTree: ' + e }), (this.info = function (t) { @@ -8633,11 +8651,11 @@ }), (this.warn = function (t) { e.warn('FoamTree: ' + t) - }) + })) })() function O(e) { function t(t, i) { - ;(t.m = []), (t.Ea = !0) + ;((t.m = []), (t.Ea = !0)) var o = r(i), a = 0 if ( @@ -8650,13 +8668,13 @@ return e + y.I(t.weight, 1) }, 0), u = n(t.group, !1) - ;(u.description = !0), + ;((u.description = !0), (u.weight = s * e.Sb), (u.index = a++), (u.parent = t), (u.level = t.level + 1), (u.id = u.id + '_d'), - t.m.push(u) + t.m.push(u)) } for (s = 0; s < i.length; s++) { var l = i[s] @@ -8664,17 +8682,17 @@ if (!e.Wi) continue u = 0.9 * o } - ;((l = n(l, !0)).weight = u), + ;(((l = n(l, !0)).weight = u), (l.index = a), (l.parent = t), (l.level = t.level + 1), t.m.push(l), - a++ + a++) } } function n(e, t) { var n = new ee() - return i(e), (n.id = e.__id), (n.group = e), t && (l[e.__id] = n), n + return (i(e), (n.id = e.__id), (n.group = e), t && (l[e.__id] = n), n) } function i(e) { y.has(e, '__id') || @@ -8691,7 +8709,7 @@ var i = e[n].weight 0 < i && t > i && (t = i) } - return t === Number.MAX_VALUE && (t = 1), t + return (t === Number.MAX_VALUE && (t = 1), t) } function o(e) { if (!e.empty()) { @@ -8732,7 +8750,7 @@ f, d = this, p = new ee() - ;(this.M = function () { + ;((this.M = function () { return p }), (this.T = function (n) { @@ -8744,7 +8762,7 @@ ) }), (this.load = function (e) { - ;(p.group = e), + ;((p.group = e), (p.xa = !1), (p.R = !1), (p.Ia = !1), @@ -8772,27 +8790,27 @@ var o = n[r] i(o) var a = o.__id - ;(l[a] = null), (h[a] = t), (a = o.id), y.V(a) || (c[a] = o), e(o) + ;((l[a] = null), (h[a] = t), (a = o.id), y.V(a) || (c[a] = o), e(o)) } })(e)), t(p, (e && e.groups) || []), (function (e) { if (!e.empty()) { var t = n({ attribution: !0 }) - ;(t.index = e.m.length), + ;((t.index = e.m.length), (t.parent = e), (t.level = e.level + 1), (t.attribution = !0), - e.m.push(t) + e.m.push(t)) } })(p), o(p), s(), - a(p) + a(p)) }), (this.update = function (e) { e.forEach(function (e) { - S.za(e, function (e) { + ;(S.za(e, function (e) { if (!e.empty()) for ( var t = r( @@ -8810,7 +8828,7 @@ }), o(e), e === p && s(), - a(e) + a(e)) }) }), (this.u = function (e) { @@ -8849,16 +8867,16 @@ }), (this.H = function (e, t, n) { return { m: d.u(e), Ca: y.I(e && e[t], !0), Ba: y.I(e && e.keepPrevious, n) } - }) + })) } function I(e, t, n) { var i = {} - t.Ba && + ;(t.Ba && S.L(e, function (e) { n(e) && (i[e.id] = e) }), (e = t.m), - (t = t.Ca) + (t = t.Ca)) for (var r = e.length - 1; 0 <= r; r--) { var o = e[r] i[o.id] = t ? o : void 0 @@ -8873,21 +8891,21 @@ } function N(e) { function t(e, t) { - ;(e = e.ja), + ;((e = e.ja), (t.opacity = 1), (t.Da = 1), (t.va = 0 > e ? 1 - (A.Ch / 100) * e : 1), (t.saturation = 0 > e ? 1 - (A.Dh / 100) * e : 1), - (t.ca = 0 > e ? 1 + 0.5 * e : 1) + (t.ca = 0 > e ? 1 + 0.5 * e : 1)) } function n(e) { - return (e = e.ja), Math.max(0.001, 0 === e ? 1 : 1 + e * (A.Pa - 1)) + return ((e = e.ja), Math.max(0.001, 0 === e ? 1 : 1 + e * (A.Pa - 1))) } function i(t, n, i, u) { var l = o() if (0 === t.length && !l) return new h().resolve().promise() var v = t.reduce(function (e, t) { - return (e[t.id] = !0), e + return ((e[t.id] = !0), e) }, {}), y = [] if ( @@ -8902,17 +8920,18 @@ ) { var M = [], T = {} - C.forEach(function (e) { + ;(C.forEach(function (e) { v[e.id] && (e.U || y.push(e), (e.U = !0), S.za(e, function (e) { - M.push(a(e, 1)), (T[e.id] = !0) + ;(M.push(a(e, 1)), (T[e.id] = !0)) })) }), 0 < M.length ? (S.L(c, function (e) { - v[e.id] || (e.U && y.push(e), (e.U = !1)), T[e.id] || M.push(a(e, -1)) + ;(v[e.id] || (e.U && y.push(e), (e.U = !1)), + T[e.id] || M.push(a(e, -1))) }), t.push(b.K.A({}).Qa(M).call(s).Ta()), r(v), @@ -8960,7 +8979,7 @@ n && S.L(c, function (e) { e.U && y.push(e) - })) + }))) } return f(t).then(function () { p.bd( @@ -8977,7 +8996,7 @@ }) } function r(e) { - C.reduce( + ;(C.reduce( u(!0, void 0, function (t) { return t.U || e[t.id] }), @@ -8986,7 +9005,7 @@ (w.x -= (w.w * (A.Pa - 1)) / 2), (w.y -= (w.o * (A.Pa - 1)) / 2), (w.w *= A.Pa), - (w.o *= A.Pa) + (w.o *= A.Pa)) } function o() { return ( @@ -9002,18 +9021,18 @@ 0 === n.ja && 0 !== i && o.call(function () { - this.mc(M), this.qb(t) + ;(this.mc(M), this.qb(t)) }), o.fa({ duration: A.Oa, P: { ja: { end: i, easing: m.ia(A.Wb) } }, ba: function () { - ;(c.N = !0), (c.Fa = !0), e.j.D('foamtree:dirty', !0) + ;((c.N = !0), (c.Fa = !0), e.j.D('foamtree:dirty', !0)) }, }), 0 === i && o.call(function () { - this.vd(), this.cc(), this.Nc(M), this.Mc(t) + ;(this.vd(), this.cc(), this.Nc(M), this.Mc(t)) }), o.call(r).done() ) @@ -9035,15 +9054,15 @@ return function (r, o) { if (!n || n(o)) { for (var a, s = (e && o.$) || o.C, u = s.length - 1; 0 <= u; u--) - (a = void 0 !== t ? t(o, s[u], i) : s[u]), + ((a = void 0 !== t ? t(o, s[u], i) : s[u]), (r.Hc = Math.min(r.Hc, a.x)), (r.wd = Math.max(r.wd, a.x)), (r.Ic = Math.min(r.Ic, a.y)), - (r.xd = Math.max(r.xd, a.y)) - ;(r.box.x = r.Hc), + (r.xd = Math.max(r.xd, a.y))) + ;((r.box.x = r.Hc), (r.box.y = r.Ic), (r.box.w = r.wd - r.Hc), - (r.box.o = r.xd - r.Ic) + (r.box.o = r.xd - r.Ic)) } return r } @@ -9070,32 +9089,32 @@ A = e.options, M = { Ve: function (e, t) { - return (t.scale = n(e)), !1 + return ((t.scale = n(e)), !1) }, Ib: function (e, t) { e = n(e) var i = d.x, r = d.y - t.translate(i, r), t.scale(e, e), t.translate(-i, -r) + ;(t.translate(i, r), t.scale(e, e), t.translate(-i, -r)) }, Jb: function (e, t, i) { e = n(e) var r = d.x, o = d.y - ;(i.x = (t.x - r) / e + r), (i.y = (t.y - o) / e + o) + ;((i.x = (t.x - r) / e + r), (i.y = (t.y - o) / e + o)) }, transformPoint: function (e, t, i) { e = n(e) var r = d.x, o = d.y - return (i.x = (t.x - r) * e + r), (i.y = (t.y - o) * e + o), i + return ((i.x = (t.x - r) * e + r), (i.y = (t.y - o) * e + o), i) }, } - e.j.subscribe('stage:initialized', function (e, t, n, i) { - ;(d = { x: n / 2, y: i / 2 }), (w = { x: 0, y: 0, w: (_ = n), o: (x = i) }) + ;(e.j.subscribe('stage:initialized', function (e, t, n, i) { + ;((d = { x: n / 2, y: i / 2 }), (w = { x: 0, y: 0, w: (_ = n), o: (x = i) })) }), e.j.subscribe('stage:resized', function (e, t, n, i) { - ;(d.x *= n / e), (d.y *= i / t), (_ = n), (x = i) + ;((d.x *= n / e), (d.y *= i / t), (_ = n), (x = i)) }), e.j.subscribe('api:initialized', function (e) { p = e @@ -9104,7 +9123,7 @@ g = e }), e.j.subscribe('model:loaded', function (e, t) { - ;(c = e), (C = t) + ;((c = e), (C = t)) }), e.j.subscribe('model:childrenAttached', function (e) { C = e @@ -9114,9 +9133,9 @@ }), e.j.subscribe('openclose:initialized', function (e) { v = e - }) + })) var T = ['groupExposureScale', 'groupUnexposureScale', 'groupExposureZoomMargin'] - e.j.subscribe('options:changed', function (e) { + ;(e.j.subscribe('options:changed', function (e) { y.bb(e, T) && o() && (r({}), g.cj(w, A.Yb), g.Fb()) }), (this.M = function () { @@ -9135,7 +9154,7 @@ (function (e, t) { for ( var n = e.reduce(function (e, t) { - return (e[t.id] = t), e + return ((e[t.id] = t), e) }, {}), i = e.length - 1; 0 <= i; @@ -9172,25 +9191,25 @@ }), s.promise() ) - }) + })) } function P(e) { var t, n, i = [], r = new d(y.qa) - e.j.subscribe('stage:initialized', function () {}), + ;(e.j.subscribe('stage:initialized', function () {}), e.j.subscribe('stage:resized', function () {}), e.j.subscribe('stage:newLayer', function (e, t) { i.push(t) }), e.j.subscribe('model:loaded', function (e) { - ;(t = e), r.clear() + ;((t = e), r.clear()) }), e.j.subscribe('zoom:initialized', function () {}), e.j.subscribe('timeline:initialized', function (e) { n = e - }) + })) var o = !1 e.j.subscribe('render:renderers:resolved', function (e) { o = e.labelPlainFill || !1 @@ -9202,52 +9221,52 @@ i = 0, r = 0, o = 0 - ;(this.i = function (a, s, u, l, c) { - ;(t = 1 - (e = 1 + s)), (n = u), (i = l), (r = c), (o = a) + ;((this.i = function (a, s, u, l, c) { + ;((t = 1 - (e = 1 + s)), (n = u), (i = l), (r = c), (o = a)) }), (this.Ve = function (o, a) { - return (a.scale = e + t * o.ra), 0 !== r || 0 !== n || 0 !== i + return ((a.scale = e + t * o.ra), 0 !== r || 0 !== n || 0 !== i) }), (this.Ib = function (a, s) { var u = e + t * a.ra, l = a.parent, c = o * a.x + (1 - o) * l.x, h = o * a.y + (1 - o) * l.y - s.translate(c, h), + ;(s.translate(c, h), s.scale(u, u), (a = 1 - a.ra), s.rotate(r * Math.PI * a), s.translate(-c, -h), - s.translate(l.F.w * n * a, l.F.o * i * a) + s.translate(l.F.w * n * a, l.F.o * i * a)) }), (this.Jb = function (r, a, s) { var u = e + t * r.ra, l = o * r.x + (1 - o) * r.parent.x, c = o * r.y + (1 - o) * r.parent.y, h = 1 - r.ra - ;(r = r.parent), + ;((r = r.parent), (s.x = (a.x - l) / u + l - r.F.w * n * h), - (s.y = (a.y - c) / u + c - r.F.o * i * h) + (s.y = (a.y - c) / u + c - r.F.o * i * h)) }), (this.transformPoint = function (r, a, s) { var u = e + t * r.ra, l = o * r.x + (1 - o) * r.parent.x, c = o * r.y + (1 - o) * r.parent.y, h = 1 - r.ra - ;(r = r.parent), + ;((r = r.parent), (s.x = (a.x - l) * u + l - r.F.w * n * h), - (s.y = (a.y - c) * u + c - r.F.o * i * h) - }) + (s.y = (a.y - c) * u + c - r.F.o * i * h)) + })) })() - ;(this.M = function () {}), + ;((this.M = function () {}), (this.u = function () { function i(e, t) { var n = Math.min(1, Math.max(0, e.ra)) - ;(t.opacity = n), (t.va = 1), (t.saturation = n), (t.Da = n), (t.ca = e.yb) + ;((t.opacity = n), (t.va = 1), (t.saturation = n), (t.Da = n), (t.ca = e.yb)) } function s(e, t) { var n = Math.min(1, Math.max(0, e.Hd)) - ;(t.opacity = n), (t.Da = n), (t.va = 1), (t.saturation = 1), (t.ca = e.yb) + ;((t.opacity = n), (t.Da = n), (t.va = 1), (t.saturation = 1), (t.ca = e.yb)) } var u = e.options, l = u.Gd, @@ -9269,7 +9288,7 @@ : a.i(u.Mf, u.Lf, u.Nf, u.Of, u.Kf), D.u(t, D.i(t, e.options.ni), function (t, r, l) { var C = 'groups' === e.options.hi ? l : r - _.push( + ;(_.push( n.K.A(t) .call(function () { this.qb(i) @@ -9279,7 +9298,7 @@ duration: o ? w * g : 0, P: { yb: { end: 0, easing: m.Ab } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', !0) + ;((this.N = !0), e.j.D('foamtree:dirty', !0)) }, }) .done() @@ -9288,18 +9307,18 @@ _.push( n.K.A(t) .call(function () { - this.mc(a), this.qb(s) + ;(this.mc(a), this.qb(s)) }) .wait(w * (b + v * C)) .fa({ duration: w * y, P: { Hd: { end: 0, easing: m.Ab } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', !0) + ;((this.N = !0), e.j.D('foamtree:dirty', !0)) }, }) .Xa(function () { - ;(this.selected = !1), this.Nc(a) + ;((this.selected = !1), this.Nc(a)) }) .done() ) @@ -9314,14 +9333,14 @@ duration: w * f, P: { ra: { end: 0, easing: m.ia(u.di) } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', !0) + ;((this.N = !0), e.j.D('foamtree:dirty', !0)) }, }) .Xa(function () { - ;(this.selected = !1), this.Nc(a) + ;((this.selected = !1), this.Nc(a)) }) .done() - ) + )) }), n.K.A({}).Qa(_).Ta() ) @@ -9330,7 +9349,11 @@ return (function (t) { function i(e, t) { var n = Math.min(1, Math.max(0, e.ra)) - ;(t.opacity = n), (t.va = 1), (t.saturation = n), (t.Da = n), (t.ca = e.yb) + ;((t.opacity = n), + (t.va = 1), + (t.saturation = n), + (t.Da = n), + (t.ca = e.yb)) } var s = e.options, u = s.Ri, @@ -9345,15 +9368,17 @@ if ((a.i(s.Mf, s.Lf, s.Nf, s.Of, s.Kf), 0 === b && t.m && t.R)) { for (p = t.m, g = 0; g < p.length; g++) { var y = p[g] - ;(y.ra = 1), (y.yb = 1), y.qb(i), y.cc(), y.Mc(i) + ;((y.ra = 1), (y.yb = 1), y.qb(i), y.cc(), y.Mc(i)) } return ( - (t.N = !0), e.j.D('foamtree:dirty', 0 < b), new h().resolve().promise() + (t.N = !0), + e.j.D('foamtree:dirty', 0 < b), + new h().resolve().promise() ) } if (t.m && t.R) { - D.u(t, D.i(t, e.options.Qd), function (t, r, h) { - t.mc(a), + ;(D.u(t, D.i(t, e.options.Qd), function (t, r, h) { + ;(t.mc(a), t.qb(i), (h = 'groups' === e.options.Pd ? h : r), (r = n.K.A(t) @@ -9362,7 +9387,7 @@ duration: b * l, P: { ra: { end: 1, easing: m.ia(s.Ni) } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', 0 < b) + ;((this.N = !0), e.j.D('foamtree:dirty', 0 < b)) }, }) .done()), @@ -9372,7 +9397,7 @@ duration: o ? b * d : 0, P: { yb: { end: 1, easing: m.Ab } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', 0 < b) + ;((this.N = !0), e.j.D('foamtree:dirty', 0 < b)) }, }) .done()), @@ -9380,18 +9405,18 @@ .Qa([r, h]) .Xd() .Xa(function () { - this.vd(), this.cc(), this.Nc(a), this.Mc(i) + ;(this.vd(), this.cc(), this.Nc(a), this.Mc(i)) }) .done()), - v.push(t) + v.push(t)) }), - r.i() + r.i()) var C = new h() return ( n.K.A({}) .Qa(v) .call(function () { - r.u(), C.resolve() + ;(r.u(), C.resolve()) }) .start(), C.promise() @@ -9399,12 +9424,16 @@ } return new h().resolve().promise() })(t) - }) + })) } function F(e) { function t(t, r, s) { function u(e, t) { - ;(t.opacity = 1 - e.Cb), (t.va = 1), (t.saturation = 1), (t.ca = 1), (t.Da = 1) + ;((t.opacity = 1 - e.Cb), + (t.va = 1), + (t.saturation = 1), + (t.ca = 1), + (t.Da = 1)) } var l = [], c = [] @@ -9415,7 +9444,7 @@ a = n[r.id] if (a && a.xb()) a.stop() else if (r.open === o) return - ;(r.Va = o), + ;((r.Va = o), o || ((r.open = o), (r.Bd = !1)), c.push(r), l.push( @@ -9426,19 +9455,19 @@ duration: e.options.Kc, P: { Cb: { end: r ? 1 : 0, easing: m.fe } }, ba: function () { - ;(this.N = !0), e.j.D('foamtree:dirty', !0) + ;((this.N = !0), e.j.D('foamtree:dirty', !0)) }, }) .call(function () { - ;(this.open = r), (t.Va = !1) + ;((this.open = r), (t.Va = !1)) }) .Xa(function () { - this.cc(), this.Mc(u), delete n[this.id] + ;(this.cc(), this.Mc(u), delete n[this.id]) }) .done() return (n[t.id] = o) })(r, o) - ) + )) } }), 0 < l.length @@ -9463,11 +9492,11 @@ ) } var n, i, r, o, a - e.j.subscribe('api:initialized', function (e) { + ;(e.j.subscribe('api:initialized', function (e) { a = e }), e.j.subscribe('model:loaded', function (e) { - ;(o = e), (n = {}) + ;((o = e), (n = {})) }), e.j.subscribe('timeline:initialized', function (e) { i = e @@ -9486,7 +9515,7 @@ for (var s = new h(), u = 0; u < n.length; u++) n[u].Va = !0 0 < n.length && e.j.D('foamtree:attachChildren', n) var l = n.reduce(function (e, t) { - return (e[t.id] = !0), e + return ((e[t.id] = !0), e) }, {}) return ( (function (e, t) { @@ -9500,7 +9529,7 @@ (n || t.U || S.L(t, function (e) { - if (e.U) return i.push(t), !1 + if (e.U) return (i.push(t), !1) })) } }), @@ -9520,11 +9549,11 @@ }), s.promise() ) - }) + })) } function R(e) { var t, n - e.j.subscribe('api:initialized', function (e) { + ;(e.j.subscribe('api:initialized', function (e) { n = e }), e.j.subscribe('model:loaded', function (e) { @@ -9549,10 +9578,10 @@ o-- ) { var a = i[o] - ;(a.selected = !a.selected), (a.N = !a.N), (a.Sa = !a.Sa) + ;((a.selected = !a.selected), (a.N = !a.N), (a.Sa = !a.Sa)) } var s = [] - S.L(t, function (e) { + ;(S.L(t, function (e) { e.N && s.push(e) }), 0 < s.length && e.j.D('foamtree:dirty', !1), @@ -9566,9 +9595,9 @@ {}, e.options.tf, e.options.sf - ) + )) })(i, r) - }) + })) } function G(e) { function n(e) { @@ -9662,7 +9691,7 @@ t ) })(h) - c && + ;(c && ((c = f ? f.group : null), (h = f ? f.Jb(h, r) : h), (o.Db = void 0), @@ -9695,7 +9724,7 @@ })), (l = l || 0 <= s.indexOf(!1)), f && f.attribution && 'click' === e && (l = !1)), - l || (n && n({ dd: f, ug: d }, o)) + l || (n && n({ dd: f, ug: d }, o))) } } function a(e, t) { @@ -9713,13 +9742,13 @@ ((r = s), (o = s.scale)) } var u - return r && (u = t(e, r)), u || r || n + return (r && (u = t(e, r)), u || r || n) } return n } for (var n = j.length, i = j[0].scale, r = j[0].scale, o = 0; o < n; o++) { var a = j[o] - ;(a = a.scale) < i && (i = a), a > r && (r = a) + ;((a = a.scale) < i && (i = a), a > r && (r = a)) } if (i !== r) for (o = 0; o < n; o++) @@ -9734,7 +9763,7 @@ } e = i } - return e && e.description && (e = e.parent), e + return (e && e.description && (e = e.parent), e) } var s, u, @@ -9760,14 +9789,14 @@ I = this, N = e.options, P = !1 - e.j.subscribe('stage:initialized', function (t, n, i, r) { - ;(s = n), + ;(e.j.subscribe('stage:initialized', function (t, n, i, r) { + ;((s = n), (L = i), (E = r), (function () { function t(e) { return function (t) { - return (t.x *= L / s.clientWidth), (t.y *= E / s.clientHeight), e(t) + return ((t.x *= L / s.clientWidth), (t.y *= E / s.clientHeight), e(t)) } } 'external' !== N.Me && @@ -9813,17 +9842,17 @@ i = 'allow' }, }) - 'prevent' === i && t.preventDefault(), + ;('prevent' === i && t.preventDefault(), (n = n || 0 <= r.indexOf(!1)) || - (27 === t.keyCode && e.j.D('interaction:reset')) + (27 === t.keyCode && e.j.D('interaction:reset'))) })) - })() + })()) }), e.j.subscribe('stage:resized', function (e, t, n, i) { - ;(L = n), (E = i) + ;((L = n), (E = i)) }), e.j.subscribe('stage:disposed', function () { - D.Za(), G.Za(), B.i() + ;(D.Za(), G.Za(), B.i()) }), e.j.subscribe('expose:initialized', function (e) { c = e @@ -9844,7 +9873,7 @@ l = e }), e.j.subscribe('model:loaded', function (e, t) { - ;(g = e), (j = t) + ;((g = e), (j = t)) }), e.j.subscribe('model:childrenAttached', function (e) { j = e @@ -9890,7 +9919,7 @@ l.K.A({}) .wait(N.Oa / 2) .call(function () { - h.Bb( + ;(h.Bb( { m: S.uc(g, function (e) { return e.Bd && !S.Jh(i, e) @@ -9902,7 +9931,7 @@ !0 ), (i.Bd = !0), - h.Bb({ m: [i], Ca: !(n.lb || n.shiftKey), Ba: !0 }, !0, !0) + h.Bb({ m: [i], Ca: !(n.lb || n.shiftKey), Ba: !0 }, !0, !0)) }) .start()) }) @@ -9916,15 +9945,15 @@ )), (this.ga = r( o('dragstart', !1, function (e, t) { - ;(C = t.x), (w = t.y), (_ = Date.now()), (P = !0) + ;((C = t.x), (w = t.y), (_ = Date.now()), (P = !0)) }) )), (this.H = r( o('drag', !1, function (e, t) { if (P) { - ;(e = Date.now()), (k = Math.min(1, e - _)), (_ = e), (e = t.x - C) + ;((e = Date.now()), (k = Math.min(1, e - _)), (_ = e), (e = t.x - C)) var n = t.y - w - u.Uh(e, n), (A = e), (T = n), (C = t.x), (w = t.y) + ;(u.Uh(e, n), (A = e), (T = n), (C = t.x), (w = t.y)) } }) )), @@ -9939,25 +9968,25 @@ )), (this.pb = r( o('transformstart', !1, function (e, t) { - ;(z = 1), (C = t.x), (w = t.y) + ;((z = 1), (C = t.x), (w = t.y)) }) - )) + ))) var F = 1, R = !1 - ;(this.transform = r( + ;((this.transform = r( o('transform', !1, function (e, t) { - ;(e = t.scale - 0.01), + ;((e = t.scale - 0.01), u.pg(t, e / z, t.x - C, t.y - w), (z = e), (C = t.x), (w = t.y), (F = z), - (R = R || 2 < t.touches) + (R = R || 2 < t.touches)) }) )), (this.Ka = r( o('transformend', !1, function () { - R && 0.8 > F ? e.j.D('interaction:reset') : i(), (R = !1) + ;(R && 0.8 > F ? e.j.D('interaction:reset') : i(), (R = !1)) }) )), (this.Ja = r( @@ -9983,10 +10012,10 @@ i = {}, r = !1, s = o('hover', !1, function () { - n && ((n.ub = !1), 0 < n.level && (n.N = !0)), + ;(n && ((n.ub = !1), 0 < n.level && (n.N = !0)), t && ((t.ub = !0), 0 < t.level && (t.N = !0)), d.update(t), - e.j.D('foamtree:dirty', !1) + e.j.D('foamtree:dirty', !1)) }), l = o('mousemove', !1, void 0) return function (e) { @@ -9994,8 +10023,8 @@ else if ((u.absolute(e, i), n && !n.open && H(n, i))) { var o = a(i, n.scale) o && o !== n ? ((r = !0), (t = o)) : (r = !1) - } else (t = a(i)), (r = t !== n) - r && (s(e), (n = t), (r = !1)), n && l(e) + } else ((t = a(i)), (r = t !== n)) + ;(r && (s(e), (n = t), (r = !1)), n && l(e)) } })() )), @@ -10013,7 +10042,7 @@ transformend: n(this.Ka), hover: n(this.ta), mousewheel: n(this.Ja), - }) + })) var G = (function () { var e, t = {} @@ -10026,21 +10055,21 @@ }) }, A: function (n, i, r) { - ;(t[n] = i), + ;((t[n] = i), e.on( n, (function (e, t) { return function (n) { var i = (n = n.gesture).center - ;((i = p.oe(s, i.pageX, i.pageY, {})).scale = n.scale), + ;(((i = p.oe(s, i.pageX, i.pageY, {})).scale = n.scale), (i.lb = 1 < n.touches.length), (i.touches = n.touches.length), e.call(s, i), ((void 0 === i.Db && t) || 'prevent' === i.Db) && - n.preventDefault() + n.preventDefault()) } })(i, r) - ) + )) }, Za: function () { e && @@ -10053,7 +10082,7 @@ H = (function () { var e = {} return function (t, n) { - return t.Jb(n, e), t.$ && M.sa(t.$, e) + return (t.Jb(n, e), t.$ && M.sa(t.$, e)) } })() } @@ -10064,27 +10093,27 @@ a = [] for (r = 0; r < t.length; r++) { var s = Math.sqrt(M.i(t[r], t[(r + 1) % t.length])) - a.push(s), (o += s) + ;(a.push(s), (o += s)) } for (r = 0; r < a.length; r++) a[r] /= o - ;(e[0].x = n.x), (e[0].y = n.y) + ;((e[0].x = n.x), (e[0].y = n.y)) var u = (s = o = 0) for (r = 1; r < e.length; r++) { var l = e[r], c = 0.95 * Math.pow(r / e.length, i) - for (o += 0.3819; s < o; ) (s += a[u]), (u = (u + 1) % a.length) + for (o += 0.3819; s < o; ) ((s += a[u]), (u = (u + 1) % a.length)) var h = (u - 1 + a.length) % a.length, f = 1 - (s - o) / a[h], d = t[h].x h = t[h].y var p = t[u].x, g = t[u].y - ;(d = (d - n.x) * c + n.x), + ;((d = (d - n.x) * c + n.x), (h = (h - n.y) * c + n.y), (p = (p - n.x) * c + n.x), (g = (g - n.y) * c + n.y), (l.x = d * (1 - f) + p * f), - (l.y = h * (1 - f) + g * f) + (l.y = h * (1 - f) + g * f)) } } var n = { @@ -10092,37 +10121,37 @@ vb: function (e, t) { for (var n = 0; n < e.length; n++) { var i = e[n] - ;(i.x = t.x + Math.random() * t.w), (i.y = t.y + Math.random() * t.o) + ;((i.x = t.x + Math.random() * t.w), (i.y = t.y + Math.random() * t.o)) } }, Ob: 'box', }, ordered: { vb: function (e, t) { - ;(e = e.slice(0)), i.ac && e.sort(te), L.i(e, t, !1, i.Ld) + ;((e = e.slice(0)), i.ac && e.sort(te), L.i(e, t, !1, i.Ld)) }, Ob: 'box', }, squarified: { vb: function (e, t) { - ;(e = e.slice(0)), i.ac && e.sort(te), L.u(e, t, !1, i.Ld) + ;((e = e.slice(0)), i.ac && e.sort(te), L.u(e, t, !1, i.Ld)) }, Ob: 'box', }, fisheye: { vb: function (e, n, r) { - ;(e = e.slice(0)), i.ac && e.sort(te), t(e, n, r, 0.25) + ;((e = e.slice(0)), i.ac && e.sort(te), t(e, n, r, 0.25)) }, Ob: 'polygon', }, blackhole: { vb: function (e, n, r) { - ;(e = e.slice(0)), i.ac && e.sort(te).reverse(), t(e, n, r, 1) + ;((e = e.slice(0)), i.ac && e.sort(te).reverse(), t(e, n, r, 1)) }, Ob: 'polygon', }, } - ;(n.order = n.ordered), (n.treemap = n.squarified) + ;((n.order = n.ordered), (n.treemap = n.squarified)) var i = e.options this.i = function (e, t, r) { if (0 < e.length) { @@ -10131,19 +10160,19 @@ (r = n[r.relaxationInitializer || r.initializer || i.Ii || 'random']).Ob ) { var o = M.F(t, {}) - r.vb(e, o), M.wa(e, M.H(o), t) + ;(r.vb(e, o), M.wa(e, M.H(o), t)) } else r.vb(e, t, M.u(t, {})) for (r = e.length - 1; 0 <= r; r--) { if ((o = e[r]).description) { var a = M.ta(t, i.qc, i.Ag) - ;(o.x = a.x), (o.y = a.y) + ;((o.x = a.x), (o.y = a.y)) } - o.attribution && ((a = M.ta(t, i.$d, i.rg)), (o.x = a.x), (o.y = a.y)), + ;(o.attribution && ((a = M.ta(t, i.$d, i.rg)), (o.x = a.x), (o.y = a.y)), y.wb(o.group.initialPosition) && ((a = o.group.initialPosition), (a = M.ta(t, a.position || 'bottomright', a.distanceFromCenter || 1)), (o.x = a.x), - (o.y = a.y)) + (o.y = a.y))) } } } @@ -10155,7 +10184,7 @@ r = new V(e, this), o = { relaxed: i, ordered: r, squarified: r }, a = o[e.options.Dc] || i - ;(this.jg = 5e-5), + ;((this.jg = 5e-5), e.j.subscribe('model:loaded', function (e) { t = e }), @@ -10182,9 +10211,9 @@ var s = e[o] a.ce(s, i) var u = s - ;(u.$ = 0 < r ? k.i(u.C, r) : u.C), + ;((u.$ = 0 < r ? k.i(u.C, r) : u.C), u.$ && (M.F(u.$, u.F), M.Ja(u.$, u.O)), - s.m && t.push(s) + s.m && t.push(s)) } }), (this.fc = function (e) { @@ -10192,7 +10221,7 @@ }), (this.Eb = function (e) { a.Eb(e) - }) + })) } function q(e, t) { function n(e) { @@ -10219,7 +10248,7 @@ } function o(e) { var t = r(e) - return z.i(t, e.G), z.u(t, e.G), D.H(e) * Math.sqrt(u.O.ha / e.O.ha) + return (z.i(t, e.G), z.u(t, e.G), D.H(e) * Math.sqrt(u.O.ha / e.O.ha)) } function a(e) { return e < c.Hf || 1e-4 > e @@ -10252,19 +10281,19 @@ if (0.01 >= Math.abs(y) / g) break 0 < (0 == h ? 1 : -1) * y ? (d = v) : (f = v) } - M.F(m[0], n), + ;(M.F(m[0], n), (n.o < a || n.o > s) && ((i.y = n.o < a ? r + o * Math.min(a, s) : r + o * s), (m = M.ua(e.G, i, u))), (e.m[0].C = m[0]), - (e.G = m[1]) + (e.G = m[1])) } var u, l = this, c = e.options, h = new H(e), f = 0 - e.j.subscribe('model:loaded', function (e) { - ;(u = e), (f = 0) + ;(e.j.subscribe('model:loaded', function (e) { + ;((u = e), (f = 0)) }), (this.step = function (e, n, s, l) { function h(n) { @@ -10280,16 +10309,16 @@ n.C && i(n, function () { var t = r(n) - z.i(t, n.G), z.u(t, n.G), e(n) + ;(z.i(t, n.G), z.u(t, n.G), e(n)) }), !n.G || !n.R) ) return 0 if ((n.parent && n.parent.Z) || n.Ea) { var h = o(n) - l && l(n), (n.Ea = !a(h) && !s), (n.Z = !0) + ;(l && l(n), (n.Ea = !a(h) && !s), (n.Z = !0)) } else h = 0 - return t.gd(n, p), h + return (t.gd(n, p), h) } for (var d = 0, p = [u]; 0 < p.length; ) d = Math.max(d, h(p.shift())) var g = a(d) @@ -10298,7 +10327,7 @@ (function (e, t, n) { f < e && (f = e) var i = c.Hf - c.Ad(t ? 1 : 1 - (e - i) / (f - i || 1), t, n), t && (f = 0) + ;(c.Ad(t ? 1 : 1 - (e - i) / (f - i || 1), t, n), t && (f = 0)) })(d, g, s), g ) @@ -10309,7 +10338,7 @@ if ((!r.R && r.Ia && r.C && i(r, e), r.G)) { if ((r.parent && r.parent.Z) || r.Ea) { for (var s = 1e-4 > r.O.ha, l = 0; !(a(o(r)) || (s && 32 < l++)); ); - ;(r.Z = !0), (r.Ea = !1) + ;((r.Z = !0), (r.Ea = !1)) } t.gd(r, n) } @@ -10321,19 +10350,19 @@ (this.ce = function (e, t) { if (e.R) { var n = e.G - n && (e.Fd = n), + ;(n && (e.Fd = n), (e.G = k.i(e.C, t)), e.G && e.m[0] && e.m[0].description && 'stab' == c.Tb && s(e), n && !e.G && (e.Z = !0), - e.G && e.Fd && M.wa(r(e), e.Fd, e.G) + e.G && e.Fd && M.wa(r(e), e.Fd, e.G)) } }), (this.Eb = function (e) { for (var t, n = r(e), i = e.ha, o = (t = 0); o < n.length; o++) t += n[o].weight for (e.Dj = t, e = 0; e < n.length; e++) - ((o = n[e]).Vf = o.w), - (o.hc = (i / Math.PI) * (0 < t ? o.weight / t : 1 / n.length)) - }) + (((o = n[e]).Vf = o.w), + (o.hc = (i / Math.PI) * (0 < t ? o.weight / t : 1 / n.length))) + })) } function V(e, t) { function n(e, n) { @@ -10343,23 +10372,23 @@ e.G = M.H( (function (e, t) { var n = 2 * t - return (e.x += t), (e.y += t), (e.w -= n), (e.o -= n), e + return ((e.x += t), (e.y += t), (e.w -= n), (e.o -= n), e) })(M.F(e.C, {}), i) ) } e.G && ((e.R = !0), n(e)) } else - (e.R = !1), + ((e.R = !1), S.za(e, function (e) { e.G = null - }) + })) } function i(e) { if ('stab' == a.Tb && 0 < e.m.length && e.m[0].description) { var t = e.m.slice(1) !(function (e) { function t() { - ;(i.C = M.H(r)), (i.x = r.x + r.w / 2), (i.y = r.y + r.o / 2) + ;((i.C = M.H(r)), (i.x = r.x + r.w / 2), (i.y = r.y + r.o / 2)) } var n = a.Sb / (1 + a.Sb), i = e.m[0], @@ -10372,27 +10401,27 @@ : ((r.o = n), t(), (r.y += n), (r.o = o - n), (e.G = M.H(r))) })(e) } else t = e.m - a.ac && t.sort(te), + ;(a.ac && t.sort(te), 'floating' == a.Tb && r(t, a.qc, function (e) { return e.description }), r(t, a.$d, function (e) { return e.attribution - }) + })) var n = M.F(e.G, {}) - ;(s[a.Dc] || L.i)(t, n, !0, a.Ld), + ;((s[a.Dc] || L.i)(t, n, !0, a.Ld), (e.Ea = !1), (e.Z = !0), (e.N = !0), - (e.Fa = !0) + (e.Fa = !0)) } function r(e, t, n) { for (var i = 0; i < e.length; i++) { var r = e[i] if (n(r)) { - e.splice(i, 1), - 'topleft' == t || (135 <= t && 315 > t) ? e.unshift(r) : e.push(r) + ;(e.splice(i, 1), + 'topleft' == t || (135 <= t && 315 > t) ? e.unshift(r) : e.push(r)) break } } @@ -10400,20 +10429,20 @@ var o, a = e.options, s = { squarified: L.u, ordered: L.i } - e.j.subscribe('model:loaded', function (e) { + ;(e.j.subscribe('model:loaded', function (e) { o = e }), (this.step = function (e, t, n) { - return this.complete(e), t && a.Ad(1, !0, n), !0 + return (this.complete(e), t && a.Ad(1, !0, n), !0) }), (this.complete = function (e) { for (var r = [o]; 0 < r.length; ) { var a = r.shift() - ;(!a.R || (a.parent && a.parent.Z)) && a.Ia && a.C && n(a, e), - a.G && (((a.parent && a.parent.Z) || a.Ea) && i(a), t.gd(a, r)) + ;((!a.R || (a.parent && a.parent.Z)) && a.Ia && a.C && n(a, e), + a.G && (((a.parent && a.parent.Z) || a.Ea) && i(a), t.gd(a, r))) } }), - (this.Eb = this.fc = this.ce = y.qa) + (this.Eb = this.fc = this.ce = y.qa)) } var W, Z, @@ -10422,7 +10451,7 @@ Y = new (function () { this.u = function (e, t) { var n = e.globalAlpha - ;(e.fillStyle = 'dark' === t ? 'white' : '#1d3557'), + ;((e.fillStyle = 'dark' === t ? 'white' : '#1d3557'), (e.globalAlpha = 1 * n), e.save(), e.transform(0.94115, 0, 0, 0.94247, -78.54, -58), @@ -10817,7 +10846,7 @@ e.lineTo(3269.8, 378), e.closePath(), e.fill(), - e.restore() + e.restore()) } })() function J(e, n) { @@ -10827,10 +10856,10 @@ r = (0.5 * n) / 15 n /= 5 var o = e.O.x - ;(e = e.O.y), + ;((e = e.O.y), t.fillRect(o - r, e - r, i, i), t.fillRect(o - r - n, e - r, i, i), - t.fillRect(o - r + n, e - r, i, i) + t.fillRect(o - r + n, e - r, i, i)) } function r(e, t, n, i) { null === e && n.clearRect(0, 0, D, B) @@ -10875,7 +10904,7 @@ } } } - for (r = te.length - 1; 0 <= r; r--) (a = te[r]), o[r] && a.Nd(t, n, i) + for (r = te.length - 1; 0 <= r; r--) ((a = te[r]), o[r] && a.Nd(t, n, i)) }), r = te.length - 1; 0 <= r; @@ -10890,7 +10919,7 @@ } function u() { function e(t, n, i) { - ;(t.sb = Math.floor(1e3 * t.scale) - i * n), 0 < t.opacity && !t.open && n++ + ;((t.sb = Math.floor(1e3 * t.scale) - i * n), 0 < t.opacity && !t.open && n++) var r = t.m if (r) for (var o = r.length - 1; 0 <= o; o--) t.W && e(r[o], n, i) } @@ -10905,16 +10934,16 @@ : e >= G && ((b = w), (x = T), h()) })(r.scale) var o = !1 - S.L(I, function (e) { + ;(S.L(I, function (e) { e.W && ((o = e.vd() || o), e.cc(), (e.Ma = H.i(e) || e.Ma)) }), - o && (I.N = !0) + o && (I.N = !0)) var a = 'onSurfaceDirty' === q.Lg S.fd(I, function (e) { - e.parent && + ;(e.parent && e.parent.Z && (e.aa.clear(), (e.Ma = !0), a || ((e.oc = !0), e.Qb.clear())), - a && ((e.oc = !0), e.Qb.clear()) + a && ((e.oc = !0), e.Qb.clear())) }) var s = r.scale * r.scale if ( @@ -10926,7 +10955,7 @@ } }), (function (e) { - ;(I.Y = !0), + ;((I.Y = !0), S.fd(I, function (t) { if (t.W && t.X && t.xa && t.R && (I.N || t.Z || t.Vd)) { t.Vd = !1 @@ -10950,14 +10979,14 @@ else for (var s = 0; s < a; s++) if (M.Vc(r[s], r[(s + 1) % a], 1 === t.scale ? e : i)) { - ;(t.Y = !0), - t.J && (t = t.J[s]) && (n[t.index].Y = !0) + ;((t.Y = !0), + t.J && (t = t.J[s]) && (n[t.index].Y = !0)) break } } } else for (o = 0; o < n.length; o++) n[o].Y = r } - }) + })) })(r), (i = []), S.tc(I, function (e) { @@ -10976,13 +11005,13 @@ }), l()) ) - (t = i), (n = null) + ((t = i), (n = null)) else { var u = {}, c = {}, f = 'none' != q.ld && q.$a < q.ab / 2, d = q.$a < q.yc / 2 + q.kd * q.De.a - S.L(I, function (e) { + ;(S.L(I, function (e) { if ( e.W && !e.description && @@ -11001,14 +11030,14 @@ !n && 1 < e.level && r.push(e.parent) } else for (t = 0; t < o.length; t++) (n = o[t]) && n.selected && r.push(n) - for (t = e.parent; t != I; ) t.selected && (i = t), (t = t.parent) + for (t = e.parent; t != I; ) (t.selected && (i = t), (t = t.parent)) for (i && r.push(i), t = 0; t < r.length; t++) { for (e = (i = r[t]).parent; e && e !== I; ) - 0 < e.opacity && (i = e), (e = e.parent) - ;(c[i.id] = !0), + (0 < e.opacity && (i = e), (e = e.parent)) + ;((c[i.id] = !0), S.za(i, function (e) { u[e.id] = !0 - }) + })) } } }), @@ -11017,14 +11046,14 @@ })), (n = t.filter(function (e) { return c[e.id] - })) + }))) } }), (function () { var e = !1 - q.Gf && + ;(q.Gf && S.L(I, function (t) { - if (t.W && 0 !== t.pa.a && 1 !== t.pa.a) return (e = !0), !1 + if (t.W && 0 !== t.pa.a && 1 !== t.pa.a) return ((e = !0), !1) }), e ? (S.sc(I, function (e) { @@ -11041,13 +11070,13 @@ if (e.W && (e.opacity !== e.Jc || e.Fa)) { for (var t = e.Ec, n = e; (n = n.parent) && n !== I; ) t += n.opacity * n.pa.a * q.Ef - ;(e.$c = 0 < t ? 1 - Math.pow(1 - e.pa.a, 1 / t) : 0), - (e.Jc = e.opacity) + ;((e.$c = 0 < t ? 1 - Math.pow(1 - e.pa.a, 1 / t) : 0), + (e.Jc = e.opacity)) } })) : S.L(I, function (e) { e.W && ((e.$c = 1), (e.Jc = -1)) - }) + })) })(), { ag: t, $f: n, Y: i } ) @@ -11057,7 +11086,7 @@ if (!e && !I.empty()) { var t = I.m[0].scale S.L(I, function (n) { - if (n.W && n.Y && n.scale !== t) return (e = !0), !1 + if (n.W && n.Y && n.scale !== t) return ((e = !0), !1) }) } return ( @@ -11065,14 +11094,14 @@ 0 < q.xe && 1 != q.Pa && S.L(I, function (t) { - if (t.W && 0 < t.ja) return (e = !0), !1 + if (t.W && 0 < t.ja) return ((e = !0), !1) }), 'accurate' == q.Ke && !(e = (e = e || 0 === q.$a) || ('none' != q.ld && q.$a < q.ab / 2)) && q.$a < q.yc / 2 + q.kd * q.De.a && S.L(I, function (t) { if (t.W && ((t.selected && !t.Sa) || (!t.selected && t.Sa))) - return (e = !0), !1 + return ((e = !0), !1) }), e ) @@ -11124,11 +11153,11 @@ i = 0 S.ne(I, function (e) { var t = 1 - S.L(e, function () { + ;(S.L(e, function () { t++ }), (n += t), - (i = Math.max(i, t)) + (i = Math.max(i, t))) }) var r = {} switch (q.Ug) { @@ -11136,18 +11165,18 @@ r.polygonPlainFill = !0 break case 'gradient': - ;(r.polygonPlainFill = !t), (r.polygonGradientFill = t) + ;((r.polygonPlainFill = !t), (r.polygonGradientFill = t)) } switch (q.ld) { case 'plain': r.polygonPlainStroke = !0 break case 'gradient': - ;(r.polygonPlainStroke = !t), (r.polygonGradientStroke = t) + ;((r.polygonPlainStroke = !t), (r.polygonGradientStroke = t)) } - ;(P = e(r, n, q.gj, q.ej, q.fj)), + ;((P = e(r, n, q.gj, q.ej, q.fj)), (R = e(r, 2 * i, 'always', 'always', q.Eg)), - (F = e(r, n, 'always', 'always', q.Dg)) + (F = e(r, n, 'always', 'always', q.Dg))) } function f(e) { return function (t, n) { @@ -11185,8 +11214,8 @@ H = new X(e), U = new Q(e), q = e.options - e.j.subscribe('stage:initialized', function (e, t, n, i) { - ;(D = n), + ;(e.j.subscribe('stage:initialized', function (e, t, n, i) { + ;((D = n), (B = i), (g = (L = e).dc('wireframe', q.nb, !1)), (v = g.getContext('2d')), @@ -11204,17 +11233,17 @@ ((z = k.getContext('2d')).B = 1), [v, A, z].forEach(function (e) { e.scale(e.B, e.B) - }) + })) }), e.j.subscribe('stage:resized', function (e, t, n, i) { - ;(D = n), + ;((D = n), (B = i), [v, A, z].forEach(function (e) { e.scale(e.B, e.B) - }) + })) }), e.j.subscribe('model:loaded', function (t) { - ;(N = !0), + ;((N = !0), (function e(t) { var n = 0 if (!t.empty()) { @@ -11224,8 +11253,8 @@ return (t.Sf = n) })((I = t)), h(), - e.j.D('render:renderers:resolved', P, R, F) - }) + e.j.D('render:renderers:resolved', P, R, F)) + })) var V = 'groupFillType groupStrokeType wireframeDrawMaxDuration wireframeLabelDrawing wireframeContentDecorationDrawing finalCompleteDrawMaxDuration finalIncrementalDrawMaxDuration groupContentDecorator'.split( ' ' @@ -11236,9 +11265,9 @@ 'groupLabelColorThreshold', 'groupUnexposureLabelColorThreshold', ] - e.j.subscribe('options:changed', function (e) { + ;(e.j.subscribe('options:changed', function (e) { function t(e, t, n, i) { - L.Hi(e, n), (t.B = n), i && t.scale(n, n) + ;(L.Hi(e, n), (t.B = n), i && t.scale(n, n)) } e.dataObject || (y.bb(e, V) && h(), @@ -11247,11 +11276,11 @@ e.hd = -1 })) var n = y.has(e, 'pixelRatio') - ;(e = y.has(e, 'wireframePixelRatio')), + ;((e = y.has(e, 'wireframePixelRatio')), (n || e) && (n && t(_, x, q.B, !0), e && t(g, b, q.nb, !0), - t(k, z, Math.max(q.B, q.nb), !1)) + t(k, z, Math.max(q.B, q.nb), !1))) }), e.j.subscribe('zoom:initialized', function (e) { E = e @@ -11261,7 +11290,7 @@ }), e.j.subscribe('api:initialized', function (e) { O = e - }) + })) var ee = [ { id: 'offsetPolygon', @@ -11301,7 +11330,7 @@ !t.attribution ) { var i = {} - O.Xc(i, t), + ;(O.Xc(i, t), O.Yc(i, t), O.Wc(i, t, !0), (i.context = t.Qb), @@ -11314,7 +11343,7 @@ (t.Te = n.groupLabelDrawn), (t.Ed = n.groupPolygonDrawn), (t.Dd = !1), - (t.oc = !1) + (t.oc = !1)) } }, }, @@ -11322,7 +11351,7 @@ te = [ new (function (e) { var t = Array(e.length) - ;(this.Nd = function (n, i, r) { + ;((this.Nd = function (n, i, r) { if (0 !== n.length) { var o, a = [], @@ -11337,8 +11366,12 @@ if (t[h]) { var f = e[h] for (i.save(), o = s; o < c; o++) - (u = n[o]), i.save(), u.Ib(i), f.kb.call(f, u, i, r), i.restore() - f.Wa.call(f, i, r), i.restore() + ((u = n[o]), + i.save(), + u.Ib(i), + f.kb.call(f, u, i, r), + i.restore()) + ;(f.Wa.call(f, i, r), i.restore()) } s = c } @@ -11346,7 +11379,7 @@ }), (this.na = function (n, i) { for (var r = !1, o = e.length - 1; 0 <= o; o--) - (t[o] = e[o].na(n, i)), (r |= t[o]) + ((t[o] = e[o].na(n, i)), (r |= t[o])) return r }), (this.before = function (n, i) { @@ -11368,14 +11401,14 @@ var r = e[i] if (t[i]) for (var o = r.Ra.length - 1; 0 <= o; o--) n[r.Ra[o]] = !0 } - }) + })) })( [ { Ra: ['offsetPolygon'], na: f('polygonExposureShadow'), before: function (e) { - z.save(), z.scale(e.B, e.B) + ;(z.save(), z.scale(e.B, e.B)) }, after: function () { z.restore() @@ -11473,7 +11506,7 @@ r = i.createRadialGradient(n.x, n.y, 0, n.x, n.y, r * q.Qg) var a = o.l, s = q.Og - r.addColorStop( + ;(r.addColorStop( 0, c.i((o.h + q.Ng) % 360, t(o.s + q.Pg), t(a + s)) ), @@ -11484,7 +11517,7 @@ c.i((o.h + q.Rg) % 360, t(o.s + q.Tg), t(a + s)) ), n.aa.Na(i), - (i.fillStyle = r) + (i.fillStyle = r)) }, }, { @@ -11500,9 +11533,9 @@ s = t( i.s * e.saturation + q.Je + (r ? q.Ae : 0) + (o ? q.Ge : 0) ) - ;(i = t(i.l * e.va + q.Ie + (r ? q.ze : 0) + (o ? q.Fe : 0))), + ;((i = t(i.l * e.va + q.Ie + (r ? q.ze : 0) + (o ? q.Fe : 0))), (n.strokeStyle = c.i(a, s, i)), - (n.lineWidth = q.ab * Math.pow(q.La, e.level - 1)) + (n.lineWidth = q.ab * Math.pow(q.La, e.level - 1))) }, }, { @@ -11526,7 +11559,7 @@ var u = t( r.s * e.saturation + q.Je + (a ? q.Ae : 0) + (s ? q.Ge : 0) ) - ;(r = t(r.l * e.va + q.Ie + (a ? q.ze : 0) + (s ? q.Fe : 0))), + ;((r = t(r.l * e.va + q.Ie + (a ? q.ze : 0) + (s ? q.Fe : 0))), (a = q.vh), i.addColorStop( 0, @@ -11538,14 +11571,14 @@ c.i((o + q.yh) % 360, t(u + q.Ah), t(r + a)) ), (n.strokeStyle = i), - (n.lineWidth = q.ab * Math.pow(q.La, e.level - 1)) + (n.lineWidth = q.ab * Math.pow(q.La, e.level - 1))) }, }, ], i = Array(n.length) return function (e, t) { for (var r = n.length - 1; 0 <= r; r--) i[r] = n[r].na(e, t) - ;(this.Xi = n), (this.vg = i) + ;((this.Xi = n), (this.vg = i)) } })(), after: function () {}, @@ -11562,7 +11595,7 @@ ) { var n = this.Xi, i = this.vg - t.beginPath(), e.aa.Na(t) + ;(t.beginPath(), e.aa.Na(t)) for (var r = !1, o = !1, a = n.length - 1; 0 <= a; a--) { var s = n[a] if (i[a]) @@ -11574,7 +11607,7 @@ o = !0 } } - ;(n = (e.X ? e.opacity : 1) * e.pa.a), + ;((n = (e.X ? e.opacity : 1) * e.pa.a), (i = !e.empty()), (a = q.Gf ? e.$c : 1), r && @@ -11593,7 +11626,7 @@ ((t.globalAlpha = n * (i ? q.Xh : 1) * a), t.closePath(), Z(t), - t.stroke()) + t.stroke())) } }, }, @@ -11608,14 +11641,14 @@ Wa: function () {}, kb: function (e, t, n) { if (e.Ed && e.selected && !e.aa.Ga()) { - ;(t.globalAlpha = e.Da), t.beginPath() + ;((t.globalAlpha = e.Da), t.beginPath()) var i = Math.pow(q.La, e.level - 1) - ;(t.lineWidth = q.yc * i), (t.strokeStyle = q.sh) + ;((t.lineWidth = q.yc * i), (t.strokeStyle = q.sh)) var r = q.kd - 0 < r && ((t.shadowBlur = r * i * n * t.B), (t.shadowColor = q.Ce)), + ;(0 < r && ((t.shadowBlur = r * i * n * t.B), (t.shadowColor = q.Ce)), e.aa.Na(t), t.closePath(), - t.stroke() + t.stroke()) } }, }, @@ -11633,7 +11666,7 @@ !e.aa.Ga() && (function (n, i, r) { var o = M.Ka(e.$, e.O, n / i) - ;(o = Math.min( + ;((o = Math.min( Math.min(0.9 * o, 0.5 * e.F.o) / i, (0.5 * e.F.w) / n )), @@ -11643,7 +11676,7 @@ t.scale(o, o), t.translate(-n / 2, -i / 2), r(t), - t.restore() + t.restore()) })(Y.i.width, Y.i.height, function (e) { Y.u(e, q.ae) }) @@ -11725,27 +11758,27 @@ ].reverse() ), ] - ;(this.M = function () { - ;(p = C( + ;((this.M = function () { + ;((p = C( function () { return a.estimate() }, 'CarrotSearchFoamTree', 12096e5 )({ version: '3.5.0', build: 'bugfix/3.5.x/e3b91c8e', brandingAllowed: !1 })), - U.M() + U.M()) }), (this.clear = function () { - b.clearRect(0, 0, D, B), x.clearRect(0, 0, D, B) - }) + ;(b.clearRect(0, 0, D, B), x.clearRect(0, 0, D, B)) + })) var ne = !1, ie = void 0 - ;(this.u = function (e) { + ;((this.u = function (e) { ne ? (ie = e) : e() }), (this.Nd = (function () { function e() { - window.clearTimeout(t), + ;(window.clearTimeout(t), (ne = !0), (t = setTimeout( function () { @@ -11758,7 +11791,7 @@ ' ' ) S.L(I, function (t) { - if (t.W && t.U) return e.push('polygonExposureShadow'), !1 + if (t.W && t.U) return (e.push('polygonExposureShadow'), !1) }) for (var t = e.length - 1; 0 <= t; t--) { var n = e[t] @@ -11768,14 +11801,14 @@ })()) ) { var e = !l() - r(null, i.Y, x, e), + ;(r(null, i.Y, x, e), y.defer(function () { - re.Ui(), ie && (ie(), (ie = void 0)) - }) + ;(re.Ui(), ie && (ie(), (ie = void 0))) + })) } else ie && (ie(), (ie = void 0)) }, Math.max(q.hj, 3 * n.Wf.sd, 3 * n.Wf.rd) - )) + ))) } var t, i return function (t) { @@ -11783,19 +11816,19 @@ var n = null !== (i = u()).$f, o = 0 < L.$b('hifi'), a = o && (n || !t) - ;(t = n || N || !t), + ;((t = n || N || !t), (N = !1), o && !a && re.Vi(), r(i.$f, i.ag, a ? x : b, t), S.za(I, function (e) { - ;(e.Z = !1), (e.N = !1), (e.Sa = !1) + ;((e.Z = !1), (e.N = !1), (e.Sa = !1)) }), a || e(), - q.Af(n) + q.Af(n)) } })()), (this.i = function (e) { - ;(e = e || {}), $(U), (I.N = !0) + ;((e = e || {}), $(U), (I.N = !0)) var t = u(), n = q.B try { @@ -11803,19 +11836,19 @@ q.B = i var a = L.dc('export', i, !0), s = a.getContext('2d') - b === w && (s = new o(s)), s.scale(i, i) + ;(b === w && (s = new o(s)), s.scale(i, i)) var l = y.has(e, 'backgroundColor') - l && + ;(l && (s.save(), (s.fillStyle = e.backgroundColor), s.fillRect(0, 0, D, B), s.restore()), - r(l ? [] : null, t.ag, s, !0) + r(l ? [] : null, t.ag, s, !0)) } finally { q.B = n } return a.toDataURL(y.I(e.format, 'image/png'), y.I(e.quality, 0.8)) - }) + })) var re = (function () { function e(e, t, i, r, o, a) { function s(e, t, n, i) { @@ -11878,7 +11911,7 @@ } function X(e) { function t(e) { - void 0 !== e.groupLabelFontFamily && (r.fontFamily = e.groupLabelFontFamily), + ;(void 0 !== e.groupLabelFontFamily && (r.fontFamily = e.groupLabelFontFamily), void 0 !== e.groupLabelFontStyle && (r.fontStyle = e.groupLabelFontStyle), void 0 !== e.groupLabelFontVariant && (r.fontVariant = e.groupLabelFontVariant), void 0 !== e.groupLabelFontWeight && (r.fontWeight = e.groupLabelFontWeight), @@ -11887,7 +11920,7 @@ (r.cb = e.groupLabelHorizontalPadding), void 0 !== e.groupLabelVerticalPadding && (r.Ua = e.groupLabelVerticalPadding), void 0 !== e.groupLabelMaxTotalHeight && (r.ib = e.groupLabelMaxTotalHeight), - void 0 !== e.groupLabelMaxFontSize && (r.hb = e.groupLabelMaxFontSize) + void 0 !== e.groupLabelMaxFontSize && (r.hb = e.groupLabelMaxFontSize)) } var n, i = e.options, @@ -11895,7 +11928,7 @@ o = {}, a = { groupLabel: '' }, s = {} - e.j.subscribe('api:initialized', function (e) { + ;(e.j.subscribe('api:initialized', function (e) { n = e }), e.j.subscribe('options:changed', t), @@ -11922,7 +11955,7 @@ var a = B, u = a.de if (i.kh) { - ;(s.fontFamily = r.fontFamily), + ;((s.fontFamily = r.fontFamily), (s.fontStyle = r.fontStyle), (s.fontVariant = r.fontVariant), (s.fontWeight = r.fontWeight), @@ -11940,7 +11973,7 @@ (o.cb = s.horizontalPadding), (o.Ua = s.verticalPadding), (o.ib = s.maxTotalTextHeight), - (o.hb = s.maxFontSize) + (o.hb = s.maxFontSize)) var l = o } else l = r e.oa = u.call(a, l, e.Bc, t, e.$, e.F, e.O, !1, !1, e.Mh, e.O.ha, i.nh, e.Ma) @@ -11950,7 +11983,7 @@ (K = this.H = function (e, t) { e.Bc.Na(t) - }) + })) } function Q(e) { function t(e, t) { @@ -11960,9 +11993,9 @@ a = o.O.r for (n = 0; n < r; n++) { var s = i[n] - ;(s.tb = + ;((s.tb = ((180 * (Math.atan2(s.x - e.x, s.y - e.y) + t)) / Math.PI + 180) / 360), - (s.wc = Math.min(1, Math.sqrt(M.i(s, e)) / a)) + (s.wc = Math.min(1, Math.sqrt(M.i(s, e)) / a))) } } function n(e, t) { @@ -11976,7 +12009,7 @@ for (t = 0; t < n; t++) { var s = e[t], u = s.x * o + s.y * a - i < u && (i = u), r > u && (r = u), (s.tb = u), (s.wc = 1) + ;(i < u && (i = u), r > u && (r = u), (s.tb = u), (s.wc = 1)) } for (t = 0; t < n; t++) (s = e[t]).tb = (s.tb - r) / (i - r) } @@ -12038,11 +12071,11 @@ i(C, d, p, 'l'), S = i(C, d, p, 'a') else - (_ = (A = n.pa).h), + ((_ = (A = n.pa).h), (x = A.s), (A = e(A.l, C, s.Bi, s.Ci)), - (S = n.ve.a) - ;(w.h = _), + (S = n.ve.a)) + ;((w.h = _), (w.s = x), (w.l = A), (w.a = S), @@ -12062,7 +12095,7 @@ }), (l.pa = c.u(u.groupColor)), (l.pa.a = y.has(u.groupColor, 'a') ? u.groupColor.a : 1), - 'auto' !== u.labelColor && (l.pd = c.wa(u.labelColor))) + 'auto' !== u.labelColor && (l.pd = c.wa(u.labelColor)))) } n.Fa = !1 } @@ -12074,7 +12107,7 @@ ) } function ee() { - ;(this.kc = + ;((this.kc = this.Yd = this.hc = this.Vf = @@ -12137,20 +12170,20 @@ (this.Jc = -1), (this.empty = function () { return !this.m || 0 === this.m.length - }) + })) var e = [] - ;(this.mc = function (t) { + ;((this.mc = function (t) { e.push(t) }), (this.Nc = function (t) { y.If(e, t) - }) + })) var t = { scale: 1 } - ;(this.vd = function () { + ;((this.vd = function () { var n = !1 this.scale = 1 for (var i = 0; i < e.length; i++) - (n = e[i].Ve(this, t) || n), (this.scale *= t.scale) + ((n = e[i].Ve(this, t) || n), (this.scale *= t.scale)) return n }), (this.Ib = function (t) { @@ -12164,25 +12197,25 @@ (this.Jb = function (t, n) { for (n.x = t.x, n.y = t.y, t = 0; t < e.length; t++) e[t].Jb(this, n, n) return n - }) + })) var n = [] - ;(this.qb = function (e) { + ;((this.qb = function (e) { n.push(e) }), (this.Mc = function (e) { y.If(n, e) - }) + })) var i = { opacity: 1, saturation: 1, va: 1, ca: 1, Da: 1 } this.cc = function () { if (0 !== n.length) { this.Da = this.ca = this.va = this.saturation = this.opacity = 1 for (var e = n.length - 1; 0 <= e; e--) - (0, n[e])(this, i), + ((0, n[e])(this, i), (this.opacity *= i.opacity), (this.va *= i.va), (this.saturation *= i.saturation), (this.ca *= i.ca), - (this.Da *= i.Da) + (this.Da *= i.Da)) } } } @@ -12198,16 +12231,16 @@ a, s = this, u = e.options - e.j.subscribe('stage:initialized', function (o, a, l, c) { - ;(i = l), + ;(e.j.subscribe('stage:initialized', function (o, a, l, c) { + ;((i = l), (r = c), (t = o.dc('titlebar', u.B, !1)), ((n = t.getContext('2d')).B = u.B), n.scale(n.B, n.B), - e.j.D('titlebar:initialized', s) + e.j.D('titlebar:initialized', s)) }), e.j.subscribe('stage:resized', function (e, t, o, a) { - ;(i = o), (r = a), n.scale(n.B, n.B) + ;((i = o), (r = a), n.scale(n.B, n.B)) }), e.j.subscribe('zoom:initialized', function (e) { a = e @@ -12240,13 +12273,13 @@ 'B`ssnu!Rd`sbi!Gn`lUsdd!whrt`mh{`uhno/!Busm,bmhbj!uid!mnfn!un!fn!un!iuuqr;..b`ssnurd`sbi/bnl.gn`lusdd!gns!lnsd!edu`hmr/' ) else - o.nc(u.Yi, e, d, function (e) { - ;(e.titleBarWidth = h), + (o.nc(u.Yi, e, d, function (e) { + ;((e.titleBarWidth = h), (e.titleBarHeight = c), (e.labelFontSize = f), - (e.viewportScale = a.scale()) + (e.viewportScale = a.scale())) }), - (p = d.titleBarText) + (p = d.titleBarText)) p && 0 !== p.length && d.titleBarShown && @@ -12282,7 +12315,7 @@ ).ka || n.clearRect(0, 0, i, r)) } } - }) + })) } function ie(e) { function t(e, t, n) { @@ -12296,7 +12329,7 @@ ) } function n(t) { - p.update(t), (f.N = !0), e.j.D('foamtree:dirty', !0) + ;(p.update(t), (f.N = !0), e.j.D('foamtree:dirty', !0)) } function i(e, t) { return p.i((0 !== p.u() ? 0.35 : 1) * e, (0 !== p.H() ? 0.35 : 1) * t) @@ -12311,7 +12344,7 @@ duration: 500, P: { x: { start: e, end: 0, easing: m.Gb } }, ba: function () { - p.i(b.x - b.Id, 0), n(1), (b.Id = b.x) + ;(p.i(b.x - b.Id, 0), n(1), (b.Id = b.x)) }, }) .start())) @@ -12327,7 +12360,7 @@ duration: 500, P: { y: { start: e, end: 0, easing: m.Gb } }, ba: function () { - p.i(0, v.y - v.Jd), n(1), (v.Jd = v.y) + ;(p.i(0, v.y - v.Jd), n(1), (v.Jd = v.y)) }, }) .start())) @@ -12361,8 +12394,8 @@ v = { le: 0, y: 0, Jd: 0 }, y = this, C = !1 - e.j.subscribe('model:loaded', function (e) { - ;(f = e), p.reset(!1), p.update(1) + ;(e.j.subscribe('model:loaded', function (e) { + ;((f = e), p.reset(!1), p.update(1)) }), e.j.subscribe('timeline:initialized', function (e) { d = e @@ -12371,13 +12404,13 @@ e.j.D('zoom:initialized', this) }), (this.reset = function (e, n) { - return p.Fb(1), t(!0, e, n) + return (p.Fb(1), t(!0, e, n)) }), (this.normalize = s(function (e, n) { p.pc(1) ? t(!1, e, n) : y.$e() })), (this.$e = function () { - r(), o() + ;(r(), o()) }), (this.bg = s(function (e, t, n, i) { return y.ic(e.F, t, n, i) @@ -12398,7 +12431,7 @@ p.Nb(e, t) && n(1) })), (this.pg = s(function (e, t, r, o) { - ;(e = 0 | p.Nb(e, t)), (e |= i(r, o)) && n(1) + ;((e = 0 | p.Nb(e, t)), (e |= i(r, o)) && n(1)) })), (this.Vh = s(function (e, t, a) { 1 === g.ratio && @@ -12407,7 +12440,7 @@ duration: e / 0.03, P: { ke: { start: t, end: 0, easing: m.Gb } }, ba: function () { - p.i(b.ke, 0) && n(1), r() + ;(p.i(b.ke, 0) && n(1), r()) }, }) .start()), @@ -12416,13 +12449,13 @@ duration: e / 0.03, P: { le: { start: a, end: 0, easing: m.Gb } }, ba: function () { - i(0, v.le) && n(1), o() + ;(i(0, v.le) && n(1), o()) }, }) .start())) })), (this.Wh = function () { - u && 0 === p.u() && u.stop(), c && 0 === p.H() && c.stop() + ;(u && 0 === p.u() && u.stop(), c && 0 === p.H() && c.stop()) }), (this.rc = function (e, t) { p.rc(e, t) @@ -12450,7 +12483,7 @@ }), (this.content = function (e, t, n, i) { p.content(e, t, n, i) - }) + })) } function re(t, r, o) { function a(e) { @@ -12471,13 +12504,13 @@ a = [] return ( D.u(e, D.i(e, w.options.Qd), function (e, n, s) { - ;(n = 'groups' === w.options.Pd ? s : n), + ;((n = 'groups' === w.options.Pd ? s : n), e.m && ((e = T.K.A(e) .wait(o * (r + i * n)) .call(t) .done()), - a.push(e)) + a.push(e))) }), T.K.A({}).Qa(a).Ta() ) @@ -12487,7 +12520,7 @@ ((ce = !0), x.once( function () { - ;(ce = !1), w.j.D('repaint:before'), H.Nd(this.og) + ;((ce = !1), w.j.D('repaint:before'), H.Nd(this.og)) }, { og: e } )) @@ -12522,21 +12555,21 @@ (e = g(e, t)).Th && w.j.D('model:childrenAttached', S.uc(v)), e.Gi && I.complete(function (e) { - ue.eb(e), n.push(e) + ;(ue.eb(e), n.push(e)) }), t = e = 0; t < n.length; t++ ) { var i = n[t] - i.m && (e += i.m.length), (i.xa = !0), W.i(i) + ;(i.m && (e += i.m.length), (i.xa = !0), W.i(i)) } return e } function g(e, t) { function n(e, t) { var n = !e.attribution && t - (e.Va ? 1 : 0) < o - ;(s = s || n), (e.Ia = e.Ia || n), e.open || e.Va || t++ + ;((s = s || n), (e.Ia = e.Ia || n), e.open || e.Va || t++) var r = e.m if ((!r && n && ((a = j.T(e) || a), (r = e.m), u && (e.Ma = !0)), r)) for (e = 0; e < r.length; e++) i.push(r[e], t) @@ -12549,7 +12582,7 @@ for ( i = e ? e.reduce(function (e, t) { - return e.push(t, 1), e + return (e.push(t, 1), e) }, []) : [v, 1]; 0 < i.length; @@ -12559,7 +12592,7 @@ return { Th: a, Gi: s } } function b(e) { - for (var t = 0; e.parent; ) e.open || e.Va || t++, (e = e.parent) + for (var t = 0; e.parent; ) (e.open || e.Va || t++, (e = e.parent)) return t } var v, @@ -12580,7 +12613,7 @@ W = new P(w), Z = new F(w), $ = new R(w) - w.j.subscribe('stage:initialized', function (e, t, n, i) { + ;(w.j.subscribe('stage:initialized', function (e, t, n, i) { re.Le(n, i) }), w.j.subscribe('stage:resized', function (e, t, n, i) { @@ -12593,7 +12626,7 @@ }), w.j.subscribe('foamtree:dirty', l), (this.M = function () { - w.j.D('timeline:initialized', T), + ;(w.j.D('timeline:initialized', T), (v = j.M()), z.M(t), L.M(), @@ -12603,11 +12636,11 @@ W.M(), B.M(), Z.M(), - $.M() + $.M()) }), (this.Za = function () { - T.i(), se.stop(), x.i(), z.Za() - }) + ;(T.i(), se.stop(), x.i(), z.Za()) + })) var K = 'groupLabelFontFamily groupLabelFontStyle groupLabelFontVariant groupLabelFontWeight groupLabelLineHeight groupLabelHorizontalPadding groupLabelVerticalPadding groupLabelDottingThreshold groupLabelMaxTotalHeight groupLabelMinFontSize groupLabelMaxFontSize groupLabelDecorator'.split( ' ' @@ -12625,22 +12658,22 @@ 'groupBorderWidthScaling', ], ee = ['maxGroupLevelsDrawn', 'maxGroupLabelLevelsDrawn'] - ;(this.hg = function (e) { - w.j.D('options:changed', e), + ;((this.hg = function (e) { + ;(w.j.D('options:changed', e), y.bb(e, K) && S.L(v, function (e) { e.Ma = !0 }), y.bb(e, Y) && (v.Fa = !0), y.bb(e, Q) && (X = !0), - y.bb(e, ee) && (c(), p()) + y.bb(e, ee) && (c(), p())) }), (this.reload = function () { oe.reload() }), (this.ig = function (e, t) { y.defer(function () { - if (X) re.Nh(e), (X = !1) + if (X) (re.Nh(e), (X = !1)) else { if (t) for (var n = j.u(t), i = n.length - 1; 0 <= i; i--) n[i].N = !0 else v.N = !0 @@ -12653,9 +12686,9 @@ }), (this.update = function (e) { var t = (e = e ? j.u(e) : [v]).reduce(function (e, t) { - return (e[t.id] = t), e + return ((e[t.id] = t), e) }, {}) - ;(e = e.filter(function (e) { + ;((e = e.filter(function (e) { for (e = e.parent; e; ) { if (y.has(t, e.id)) return !1 e = e.parent @@ -12663,7 +12696,7 @@ return !0 })), j.update(e), - re.dj(e) + re.dj(e)) }), (this.reset = function () { return le(!1) @@ -12709,7 +12742,7 @@ } })()), (this.kg = function () { - this.H({ + ;(this.H({ groups: a(function (e) { return e.group.selected }), @@ -12729,7 +12762,7 @@ }), newState: !0, keepPrevious: !1, - }) + })) }), (this.Ka = function () { return a(function (e) { @@ -12758,7 +12791,7 @@ }), (this.H = function (e) { return oe.submit(function () { - return $.select(j.H(e, 'selected', !0), !1), new h().resolve().promise() + return ($.select(j.H(e, 'selected', !0), !1), new h().resolve().promise()) }) }), (this.mg = function (e) { @@ -12783,13 +12816,13 @@ lastInterFrameTime: t.sd, fps: t.ue, } - }) + })) var te, re = (function () { function e(e, o) { var a = e || n, s = o || i - ;(n = a), + ;((n = a), (i = s), (e = r.Rb && r.Rb.boundary) && 2 < e.length ? (v.C = e.map(function (e) { @@ -12801,10 +12834,10 @@ { x: a, y: s }, { x: 0, y: s }, ]), - t() + t()) } function t() { - ;(v.Z = !0), (v.G = v.C), (v.F = M.F(v.C, v.F)), (v.O = v), M.Ja(v.C, v.O) + ;((v.Z = !0), (v.G = v.C), (v.F = M.F(v.C, v.F)), (v.O = v), M.Ja(v.C, v.O)) } var n, i return { @@ -12813,9 +12846,9 @@ ue.stop() var o = i / t, a = r / n - S.ne(v, function (e) { - ;(e.x = e.x * o + ((Math.random() - 0.5) * i) / 1e3), - (e.y = e.y * a + ((Math.random() - 0.5) * r) / 1e3) + ;(S.ne(v, function (e) { + ;((e.x = e.x * o + ((Math.random() - 0.5) * i) / 1e3), + (e.y = e.y * a + ((Math.random() - 0.5) * r) / 1e3)) }), e(i, r), (v.Ea = !0), @@ -12834,15 +12867,18 @@ : (I.fc(v), w.options.Md ? (l(!1), se.Jf(), se.Oc()) - : (I.complete(ue.eb), (v.Fa = !0), l(!1))) + : (I.complete(ue.eb), (v.Fa = !0), l(!1)))) }, Nh: function (e) { var n = !1 - return v.empty() || (t(), se.xb() || ((n = I.step(ue.eb, !1, !1)), l(e))), n + return ( + v.empty() || (t(), se.xb() || ((n = I.step(ue.eb, !1, !1)), l(e))), + n + ) }, dj: function (e) { e.forEach(function (e) { - S.za(e, function (e) { + ;(S.za(e, function (e) { e.empty() || I.Eb(e) }), I.fc(e), @@ -12856,7 +12892,7 @@ }), I.complete(ue.eb), (e.Fa = !0), - l(!1)) + l(!1))) }) }, } @@ -12875,7 +12911,7 @@ ) { if (((v.open = !0), (v.Ia = !0), r.Md)) var e = se.Oc() else - se.Yh(), + (se.Yh(), (e = (function () { S.za(v, function (e) { e.xa = !1 @@ -12897,22 +12933,22 @@ }), e.promise() ) - })()) - !(function () { + })())) + ;(!(function () { var e = r.Oa, t = r.Kc - ;(r.Oa = 0), (r.Kc = 0), C.kg(), (r.Oa = e), (r.Kc = t) + ;((r.Oa = 0), (r.Kc = 0), C.kg(), (r.Oa = e), (r.Kc = t)) })(), - 0 < r.Od ? (H.clear(), z.i(1)) : (e = f([e, t(1)])) + 0 < r.Od ? (H.clear(), z.i(1)) : (e = f([e, t(1)]))) } - w.options.yf(r.Rb), + ;(w.options.yf(r.Rb), e && (w.options.Cf(), e.then(function () { H.u(function () { x.once(w.options.Bf) }) - })) + }))) } function t(e, t) { return 0 === r.qe || t @@ -12948,13 +12984,13 @@ se.stop(), (i = !0), f(0 < r.Gd ? [W.u(), le(!1)] : [t(0)]).then(function () { - t(0, !0), (i = !1), e(), y.defer(n) + ;(t(0, !0), (i = !1), e(), y.defer(n)) }))) }, submit: function (e) { if (i) { var t = new h() - return o.push({ action: e, ge: t }), t.promise() + return (o.push({ action: e, ge: t }), t.promise()) } return e() }, @@ -12979,14 +13015,14 @@ (t = I.step( function (t) { - ;(t.xa = !0), + ;((t.xa = !0), ue.grow(t), ae.i(), W.i(t).then(ae.u), ae.i(), s(t, function () { - ;(this.Ia = !0), e() - }).then(ae.u) + ;((this.Ia = !0), e()) + }).then(ae.u)) }, !0, t @@ -13008,7 +13044,7 @@ return !ae.initial() }, stop: function () { - x.cancel(n), (o = !1), ae.clear() + ;(x.cancel(n), (o = !1), ae.clear()) }, } })(), @@ -13031,7 +13067,7 @@ r = i.Wg 0 < r ? D.u(n, D.i(n, w.options.Qd), function (e, n, o) { - ;(n = 'groups' === w.options.Pd ? o : n), + ;((n = 'groups' === w.options.Pd ? o : n), ae.i(), t.push( T.K.A(e) @@ -13040,14 +13076,14 @@ duration: r, P: { w: { start: e.Vf, end: e.hc, easing: m.ia(i.Xg) } }, ba: function () { - ;(this.w = Math.max(0, this.w)), + ;((this.w = Math.max(0, this.w)), (this.parent.Ea = !0), - se.Oc() + se.Oc()) }, }) .Xa(ae.u) .start() - ) + )) }) : e(n) && se.Oc() }, @@ -13072,7 +13108,7 @@ }), n.push(i.promise()), f(n).then(function () { - ;(e = !1), t && r.Df() + ;((e = !1), t && r.Df()) }) ) } @@ -13082,10 +13118,10 @@ function oe() { return { version: '3.5.0', build: 'bugfix/3.5.x/e3b91c8e', brandingAllowed: !1 } } - ;(Y.i = { width: 445.2, height: 533.5 }), + ;((Y.i = { width: 445.2, height: 533.5 }), t.md( function () { - ;(window.CarrotSearchFoamTree = function (e) { + ;((window.CarrotSearchFoamTree = function (e) { function t(e, t) { if (!s || s.exists(e)) switch (e) { @@ -13122,7 +13158,7 @@ case 'onGroupClick': case 'onGroupDoubleClick': case 'onGroupHold': - return (e = u[e]), Array.isArray(e) ? e : [e] + return ((e = u[e]), Array.isArray(e) ? e : [e]) default: return u[e] } @@ -13143,7 +13179,7 @@ var o = {} return ( y.Aa(n, function (e, t) { - ;(u[t] !== e || y.wb(e)) && ((o[t] = e), i++), (u[t] = e) + ;((u[t] !== e || y.wb(e)) && ((o[t] = e), i++), (u[t] = e)) }), 0 < i && r(o), i @@ -13152,14 +13188,14 @@ function i(e, t) { e = 'on' + e.charAt(0).toUpperCase() + e.slice(1) var n = u[e] - ;(u[e] = t(Array.isArray(n) ? n : [n])), ((t = {})[e] = u[e]), r(t) + ;((u[e] = t(Array.isArray(n) ? n : [n])), ((t = {})[e] = u[e]), r(t)) } function r(e) { - !(function () { + ;(!(function () { function t(t, n) { return y.has(e, t) || void 0 === n ? w(u[t], a) : n } - ;(l.Oh = u.logging), + ;((l.Oh = u.logging), (l.Rb = u.dataObject), (l.B = u.pixelRatio), (l.nb = u.wireframePixelRatio), @@ -13373,13 +13409,13 @@ (l.wf = t('onGroupTransformStart', l.wf)), (l.uf = t('onGroupTransform', l.uf)), (l.vf = t('onGroupTransformEnd', l.vf)), - (l.xf = t('onKeyUp', l.xf)) + (l.xf = t('onKeyUp', l.xf))) })(), (l.Fi = c.u(l.Ei)), (l.yi = c.u(l.xi)), (l.De = c.u(l.Ce)), (l.kj = null), - h && (h.hg(e), y.has(e, 'dataObject') && h.reload()) + h && (h.hg(e), y.has(e, 'dataObject') && h.reload())) } function o(e) { return function () { @@ -13390,10 +13426,10 @@ s = window.CarrotSearchFoamTree.asserts, u = y.extend({}, window.CarrotSearchFoamTree.defaults), l = {} - n(e), + ;(n(e), (e = u.element || document.getElementById(u.id)) || j.i('Element to embed FoamTree in not found.'), - (u.element = e) + (u.element = e)) var h = new re(e, l, u) h.M() var f = { @@ -13405,7 +13441,7 @@ set: n, on: function (e, t) { i(e, function (e) { - return e.push(t), e + return (e.push(t), e) }) }, off: function (e, t) { @@ -13431,16 +13467,16 @@ function e() { throw 'FoamTree instance disposed' } - h.Za(), + ;(h.Za(), y.Aa(f, function (t, n) { 'dispose' !== n && (a[n] = e) - }) + })) }, } - y.Aa(f, function (e, t) { + ;(y.Aa(f, function (e, t) { a[t] = e }), - h.reload() + h.reload()) }), window['CarrotSearchFoamTree.asserts'] && ((window.CarrotSearchFoamTree.asserts = @@ -13704,22 +13740,22 @@ o++ ) { var a = e[o] - a.x < t && (t = a.x), + ;(a.x < t && (t = a.x), a.y < n && (n = a.y), a.x > i && (i = a.x), - a.y > r && (r = a.y) + a.y > r && (r = a.y)) } return { x: t, y: n, w: i - t, h: r - n } }, - })) + }))) }, function () { - ;(window.CarrotSearchFoamTree = function () { + ;((window.CarrotSearchFoamTree = function () { window.console.error('FoamTree is not supported on this browser.') }), - (window.CarrotSearchFoamTree.supported = !1) + (window.CarrotSearchFoamTree.supported = !1)) } - ) + )) })() const Fr = window.CarrotSearchFoamTree function Rr(t, n, i, r, o) { @@ -13746,23 +13782,23 @@ } if ('function' == typeof t && (u = t.defaultProps)) for (l in u) void 0 === a[l] && (a[l] = u[l]) - return e.vnode && e.vnode(c), c + return (e.vnode && e.vnode(c), c) } class Gr extends g { constructor(e) { - super(e), + ;(super(e), (this.saveNodeRef = e => (this.node = e)), (this.resize = () => { const { props: e } = this - this.treemap.resize(), e.onResize && e.onResize() + ;(this.treemap.resize(), e.onResize && e.onResize()) }), (this.treemap = null), (this.zoomOutDisabled = !1), - this.findChunkNamePartIndex() + this.findChunkNamePartIndex()) } componentDidMount() { - ;(this.treemap = this.createTreemap()), - window.addEventListener('resize', this.resize) + ;((this.treemap = this.createTreemap()), + window.addEventListener('resize', this.resize)) } componentWillReceiveProps(e) { e.data !== this.props.data @@ -13775,7 +13811,7 @@ return !1 } componentWillUnmount() { - window.removeEventListener('resize', this.resize), this.treemap.dispose() + ;(window.removeEventListener('resize', this.resize), this.treemap.dispose()) } render() { return Rr('div', { ...this.props, ref: this.saveNodeRef }) @@ -13815,7 +13851,7 @@ ? (function (e) { let t = 0 for (let n = 0; n < e.length; n++) { - ;(t = (t << 5) - t + e.charCodeAt(n)), (t &= t) + ;((t = (t << 5) - t + e.charCodeAt(n)), (t &= t)) } return t })(o) @@ -13834,15 +13870,18 @@ : s && s.size > 0 && (i.groupColor.s = 10) }, onGroupClick(n) { - Hr(n), + ;(Hr(n), (n.ctrlKey || n.secondary) && t.onGroupSecondaryClick ? t.onGroupSecondaryClick.call(e, n) - : ((e.zoomOutDisabled = !1), this.zoom(n.group)) + : ((e.zoomOutDisabled = !1), this.zoom(n.group))) }, onGroupDoubleClick: Hr, onGroupHover(n) { if (n.group && (n.group.attribution || n.group === this.get('dataObject'))) - return n.preventDefault(), void (t.onMouseLeave && t.onMouseLeave.call(e, n)) + return ( + n.preventDefault(), + void (t.onMouseLeave && t.onMouseLeave.call(e, n)) + ) t.onGroupHover && t.onGroupHover.call(e, n) }, onGroupMouseWheel(t) { @@ -13909,14 +13948,14 @@ const Kr = Zr.Z.locals || {} class Yr extends g { constructor(...e) { - super(...e), + ;(super(...e), (this.mouseCoords = { x: 0, y: 0 }), (this.state = { left: 0, top: 0 }), (this.handleMouseMove = e => { - Object.assign(this.mouseCoords, { x: e.pageX, y: e.pageY }), - this.props.visible && this.updatePosition() + ;(Object.assign(this.mouseCoords, { x: e.pageX, y: e.pageY }), + this.props.visible && this.updatePosition()) }), - (this.saveNode = e => (this.node = e)) + (this.saveNode = e => (this.node = e))) } componentDidMount() { document.addEventListener('mousemove', this.handleMouseMove, !0) @@ -13947,13 +13986,13 @@ top: this.mouseCoords.y + Yr.marginY, }, t = this.node.getBoundingClientRect() - e.left + t.width > window.innerWidth && (e.left = window.innerWidth - t.width), + ;(e.left + t.width > window.innerWidth && (e.left = window.innerWidth - t.width), e.top + t.height > window.innerHeight && (e.top = this.mouseCoords.y - Yr.marginY - t.height), - this.setState(e) + this.setState(e)) } } - ;(Yr.marginX = 10), (Yr.marginY = 30) + ;((Yr.marginX = 10), (Yr.marginY = 30)) var Jr = n(908), Xr = { insert: 'head', singleton: !1 } Wr()(Jr.Z, Xr) @@ -13975,11 +14014,11 @@ } class no extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.handleClick = e => { - this.elem.blur(), this.props.onClick(e) + ;(this.elem.blur(), this.props.onClick(e)) }), - (this.saveRef = e => (this.elem = e)) + (this.saveRef = e => (this.elem = e))) } render({ active: e, toggle: t, className: n, children: i, ...r }) { const o = qr()(n, { [Qr.button]: !0, [Qr.active]: e, [Qr.toggle]: t }) @@ -14000,10 +14039,10 @@ } class io extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.handleClick = () => { this.props.onClick(this.props.item) - }) + })) } render({ item: e, ...t }) { return Rr(no, { ...t, onClick: this.handleClick, children: e.label }) @@ -14062,7 +14101,7 @@ let [r, o] = i.size if (t) { const e = t / Math.max(r, o) - ;(r = Math.min(Math.ceil(r * e), t)), (o = Math.min(Math.ceil(o * e), t)) + ;((r = Math.min(Math.ceil(r * e), t)), (o = Math.min(Math.ceil(o * e), t))) } return { backgroundImage: `url(${i.src})`, @@ -14075,7 +14114,7 @@ const vo = parseInt(co.toggleTime) class mo extends g { constructor(...e) { - super(...e), + ;(super(...e), (this.allowHide = !0), (this.toggling = !1), (this.hideContentTimeout = null), @@ -14103,34 +14142,34 @@ }), (this.handlePinButtonClick = () => { const e = !this.props.pinned - ;(this.width = e ? this.node.getBoundingClientRect().width : null), + ;((this.width = e ? this.node.getBoundingClientRect().width : null), this.updateNodeWidth(), - this.props.onPinStateChange(e) + this.props.onPinStateChange(e)) }), (this.handleResizeStart = e => { - ;(this.resizeInfo = { startPageX: e.pageX, initialWidth: this.width }), + ;((this.resizeInfo = { startPageX: e.pageX, initialWidth: this.width }), document.body.classList.add('resizing', 'col'), document.addEventListener('mousemove', this.handleResize, !0), - document.addEventListener('mouseup', this.handleResizeEnd, !0) + document.addEventListener('mouseup', this.handleResizeEnd, !0)) }), (this.handleResize = e => { - ;(this.width = + ;((this.width = this.resizeInfo.initialWidth + (e.pageX - this.resizeInfo.startPageX)), - this.updateNodeWidth() + this.updateNodeWidth()) }), (this.handleResizeEnd = () => { - document.body.classList.remove('resizing', 'col'), + ;(document.body.classList.remove('resizing', 'col'), document.removeEventListener('mousemove', this.handleResize, !0), document.removeEventListener('mouseup', this.handleResizeEnd, !0), - this.props.onResize() + this.props.onResize()) }), - (this.saveNode = e => (this.node = e)) + (this.saveNode = e => (this.node = e))) } componentDidMount() { this.hideTimeoutId = setTimeout(() => this.toggleVisibility(!1), 3e3) } componentWillUnmount() { - clearTimeout(this.hideTimeoutId), clearTimeout(this.hideContentTimeout) + ;(clearTimeout(this.hideTimeoutId), clearTimeout(this.hideContentTimeout)) } render() { const { position: e, pinned: t, children: n } = this.props, @@ -14183,7 +14222,7 @@ { onToggle: n, pinned: i } = this.props if (void 0 === e) e = !t else if (e === t) return - this.setState({ visible: e }), + ;(this.setState({ visible: e }), (this.toggling = !0), setTimeout(() => { this.toggling = !1 @@ -14193,10 +14232,10 @@ ? (this.setState({ renderContent: e }), n(e)) : e || (this.hideContentTimeout = setTimeout(() => { - ;(this.hideContentTimeout = null), + ;((this.hideContentTimeout = null), this.setState({ renderContent: !1 }), - n(!1) - }, vo)) + n(!1)) + }, vo))) } updateNodeWidth(e = this.width) { this.node.style.width = e ? `${e}px` : '' @@ -14209,10 +14248,10 @@ const wo = yo.Z.locals || {} class _o extends g { constructor(...e) { - super(...e), + ;(super(...e), (this.handleChange = () => { this.props.onChange(!this.props.checked) - }) + })) } render() { const { checked: e, className: t, children: n } = this.props @@ -14236,10 +14275,10 @@ const So = xo.Z.locals || {} class Mo extends g { constructor(...e) { - super(...e), + ;(super(...e), (this.handleChange = () => { this.props.onChange(this.props.item) - }) + })) } render() { return Rr('div', { @@ -14259,30 +14298,30 @@ const To = Symbol('ALL_ITEM') class ko extends eo { constructor(e) { - super(e), + ;(super(e), (this.handleToggleAllCheck = () => { const e = this.isAllChecked() ? [] : this.props.items - this.setState({ checkedItems: e }), this.informAboutChange(e) + ;(this.setState({ checkedItems: e }), this.informAboutChange(e)) }), (this.handleItemCheck = e => { let t - ;(t = this.isItemChecked(e) + ;((t = this.isItemChecked(e) ? this.state.checkedItems.filter(t => t !== e) : [...this.state.checkedItems, e]), this.setState({ checkedItems: t }), - this.informAboutChange(t) + this.informAboutChange(t)) }), - (this.state = { checkedItems: e.checkedItems || e.items }) + (this.state = { checkedItems: e.checkedItems || e.items })) } componentWillReceiveProps(e) { if (e.items !== this.props.items) { if (this.isAllChecked()) - this.setState({ checkedItems: e.items }), this.informAboutChange(e.items) + (this.setState({ checkedItems: e.items }), this.informAboutChange(e.items)) else if (this.state.checkedItems.length) { const t = e.items.filter(e => this.state.checkedItems.find(t => t.label === e.label) ) - this.setState({ checkedItems: t }), this.informAboutChange(t) + ;(this.setState({ checkedItems: t }), this.informAboutChange(t)) } } else e.checkedItems !== this.props.checkedItems && @@ -14350,7 +14389,7 @@ const Io = jo.Z.locals || {} class No extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.handleClickHideChunk = () => { const { chunk: e } = this.props if (e && e.label) { @@ -14368,7 +14407,7 @@ this.hide() }), (this.handleClickShowAllChunks = () => { - ;(Rn.selectedChunks = Rn.allChunks), this.hide() + ;((Rn.selectedChunks = Rn.allChunks), this.hide()) }), (this.handleDocumentMousedown = e => { var t, n @@ -14377,7 +14416,7 @@ ((t = e.target), (n = this.node), t === n || n.contains(t)) || (e.preventDefault(), e.stopPropagation(), this.hide()) }), - (this.saveNode = e => (this.node = e)) + (this.saveNode = e => (this.node = e))) } componentDidMount() { this.boundingRect = this.node.getBoundingClientRect() @@ -14444,7 +14483,7 @@ const Vo = Uo.Z.locals || {} class Wo extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.handleValueChange = Ho()(e => { this.informChange(e.target.value) }, 400)), @@ -14452,7 +14491,7 @@ this.handleValueChange.flush() }), (this.handleClearClick = () => { - this.clear(), this.focus() + ;(this.clear(), this.focus()) }), (this.handleKeyDown = e => { let t = !0 @@ -14468,7 +14507,7 @@ } t && e.stopPropagation() }), - (this.saveInputNode = e => (this.input = e)) + (this.saveInputNode = e => (this.input = e))) } componentDidMount() { this.props.autofocus && this.focus() @@ -14509,7 +14548,7 @@ this.input && this.input.focus() } clear() { - this.handleValueChange.clear(), this.informChange(''), (this.input.value = '') + ;(this.handleValueChange.clear(), this.informChange(''), (this.input.value = '')) } informChange(e) { this.props.onQueryChange(e) @@ -14536,12 +14575,12 @@ const oa = ia.Z.locals || {} class aa extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.state = { visible: !0 }), (this.handleClick = () => this.props.onClick(this.props.module)), (this.handleMouseEnter = () => { this.props.isVisible && this.setState({ visible: this.isVisible }) - }) + })) } render({ module: e, showSize: t }) { const n = !this.state.visible @@ -14573,7 +14612,7 @@ : new RegExp(`(?:${Jo()(i)})+`, 'iu') let r, o do { - ;(o = r), (r = t.exec(n)) + ;((o = r), (r = t.exec(n))) } while (r) o && (e = @@ -14581,7 +14620,7 @@ `${ta(o[0])}` + ta(n.slice(o.index + o[0].length))) } - return e || (e = ta(n)), e + return (e || (e = ta(n)), e) } get invisibleHint() { return `${this.itemType.charAt(0).toUpperCase() + this.itemType.slice(1)} is not rendered in the treemap because it's too small.` @@ -14593,7 +14632,7 @@ } class sa extends eo { constructor(...e) { - super(...e), (this.handleModuleClick = e => this.props.onModuleClick(e)) + ;(super(...e), (this.handleModuleClick = e => this.props.onModuleClick(e))) } render({ modules: e, @@ -14626,7 +14665,7 @@ const ca = ua.Z.locals || {} class ha extends eo { constructor(...e) { - super(...e), + ;(super(...e), (this.input = { current: null }), (this.state = { query: '', showOptions: !1 }), (this.handleClickOutside = e => { @@ -14641,15 +14680,15 @@ }), (this.handleInput = e => { const { value: t } = e.target - this.setState({ query: t }), t || this.props.onSelectionChange(void 0) + ;(this.setState({ query: t }), t || this.props.onSelectionChange(void 0)) }), (this.handleFocus = () => { - ;(this.input.current.value = this.state.query), - this.setState({ showOptions: !0 }) + ;((this.input.current.value = this.state.query), + this.setState({ showOptions: !0 })) }), (this.getOptionClickHandler = e => () => { - this.props.onSelectionChange(e), this.setState({ query: e, showOptions: !1 }) - }) + ;(this.props.onSelectionChange(e), this.setState({ query: e, showOptions: !1 })) + })) } componentDidMount() { document.addEventListener('click', this.handleClickOutside, !0) @@ -14709,7 +14748,7 @@ (P( (da = class extends g { constructor(...e) { - super(...e), + ;(super(...e), (this.mouseCoords = { x: 0, y: 0 }), (this.state = { selectedChunk: null, @@ -14731,10 +14770,10 @@ : Rn.allChunks }), (this.handleConcatenatedModulesContentToggle = e => { - ;(Rn.showConcatenatedModulesContent = e), + ;((Rn.showConcatenatedModulesContent = e), e ? Dn.setItem('showConcatenatedModulesContent', !0) - : Dn.removeItem('showConcatenatedModulesContent') + : Dn.removeItem('showConcatenatedModulesContent')) }), (this.handleChunkContextMenuHide = () => { this.setState({ showChunkContextMenu: !1 }) @@ -14747,8 +14786,8 @@ this.state.sidebarPinned && setTimeout(() => this.treemap.resize()) }), (this.handleSidebarPinStateChange = e => { - this.setState({ sidebarPinned: e }), - setTimeout(() => this.treemap.resize()) + ;(this.setState({ sidebarPinned: e }), + setTimeout(() => this.treemap.resize())) }), (this.handleSidebarResize = () => { this.treemap.resize() @@ -14789,7 +14828,7 @@ Object.assign(this.mouseCoords, { x: e.pageX, y: e.pageY }) }), (this.isModuleVisible = e => this.treemap.isGroupRendered(e)), - (this.saveTreemapRef = e => (this.treemap = e)) + (this.saveTreemapRef = e => (this.treemap = e))) } componentDidMount() { document.addEventListener('mousemove', this.handleMouseMove, !0) @@ -14946,7 +14985,9 @@ const { allChunks: e, activeSize: t } = Rn let n = [...e] return ( - 'statSize' !== t && (n = n.filter(kn)), n.sort((e, n) => n[t] - e[t]), n + 'statSize' !== t && (n = n.filter(kn)), + n.sort((e, n) => n[t] - e[t]), + n ) } get highlightedModules() { @@ -15054,7 +15095,7 @@ window.addEventListener( 'load', () => { - ;(Rn.defaultSize = `${window.defaultSizes}Size`), + ;((Rn.defaultSize = `${window.defaultSizes}Size`), Rn.setModules(window.chartData), Rn.setEntrypoints(window.entrypoints), j(Rr(ga, {}), document.getElementById('app')), @@ -15062,11 +15103,11 @@ ma.addEventListener('message', e => { const t = JSON.parse(e.data) 'chartDataUpdated' === t.event && Rn.setModules(t.data) - }) + })) }, !1 ) - })() + })()) })() //# sourceMappingURL=viewer.js.map diff --git a/current.png b/current.png new file mode 100644 index 0000000..b65f7b5 Binary files /dev/null and b/current.png differ diff --git a/docs/prd.md b/docs/prd.md index 1af538b..096efa4 100644 --- a/docs/prd.md +++ b/docs/prd.md @@ -23,7 +23,6 @@ to focus exclusively on delivering unique business value. # Core Features - **Mobile-First Progressive Web App (PWA) Foundation** - - **What it does:** Provides a complete PWA setup, including a Web App Manifest, a caching Service Worker, and offline fallback pages. The entire architecture is designed with a mobile-first philosophy. @@ -36,7 +35,6 @@ to focus exclusively on delivering unique business value. stale-while-revalidate for API data) and handle offline states gracefully. - **Global-Ready Internationalization (i18n)** - - **What it does:** Implements a complete multi-language system supporting English, Spanish, and Portuguese out-of-the-box, with a clear structure for adding more languages. @@ -48,7 +46,6 @@ to focus exclusively on delivering unique business value. user locale detection. - **Comprehensive & Accessible UI System** - - **What it does:** Delivers a complete set of UI components built on `shadcn/ui` and `Tailwind CSS`. Every component is responsive, touch-friendly, accessible (WCAG 2.1 AA), and supports dark mode. @@ -61,7 +58,6 @@ to focus exclusively on delivering unique business value. variants. - **Secure Authentication & Multi-Tenancy** - - **What it does:** Implements a full authentication system (email/password, OAuth) and a workspace-based multi-tenancy model with data isolation enforced at the database level. @@ -74,7 +70,6 @@ to focus exclusively on delivering unique business value. access data within their authorized workspace. - **Type-Safe Full-Stack API** - - **What it does:** Provides a fully-configured, end-to-end type-safe API layer. - **Why it's important:** It eliminates an entire class of bugs related to @@ -99,7 +94,6 @@ to focus exclusively on delivering unique business value. # User Experience - **User Personas** - - **Primary Persona: Alex, the Senior Full-Stack Engineer.** Alex's goal is to ship high-quality features as quickly as possible. They value clear patterns, automation, and a boilerplate that "just works" so they can focus @@ -107,7 +101,6 @@ to focus exclusively on delivering unique business value. developer experience with fast builds, hot reloading, and type-safety. - **Key User Flows** - - **Developer Flow 1: Project Initialization:** 1. Alex clones the boilerplate repository. 2. Runs `pnpm install` to set up dependencies. @@ -148,7 +141,6 @@ to focus exclusively on delivering unique business value. # Technical Architecture - **System Components** - - **Frontend:** Next.js 15 App Router, React 19, Tailwind CSS. - **Backend/API:** tRPC running on Next.js API Routes. - **Database:** PostgreSQL hosted on Supabase. @@ -161,13 +153,11 @@ to focus exclusively on delivering unique business value. - **Hosting:** Vercel. - **Data Models** - - The core data structure is centered around Users, Workspaces, and Subscriptions, enabling a standard multi-tenant SaaS model. See Appendix for the full Prisma schema. - **APIs and Integrations** - - **Internal API:** A unified, type-safe API is provided via tRPC. - **External Integrations:** - **Supabase:** For database, authentication, and file storage. @@ -186,7 +176,6 @@ to focus exclusively on delivering unique business value. # Development Roadmap - **MVP (v1.0) Requirements: The Production-Ready Foundation** - - **Phase 1: Core Setup & UI Foundation** - Next.js 15, TypeScript, and Tailwind CSS configuration. - Basic PWA setup (Manifest, empty Service Worker). @@ -345,7 +334,6 @@ to focus exclusively on delivering unique business value. ``` - **Definition of Done (DoD)** A feature is considered "done" when: - - It is implemented and functional. - It is mobile-first and fully responsive. - All user-facing strings are internationalized. @@ -843,7 +831,6 @@ works-boilerplate/ ## 6.1 Phase 1: Foundation + Mobile (5 days) 1. **Initial project setup** - - Next.js 15 with strict TypeScript - Mobile-first Tailwind configuration - Basic PWA setup @@ -857,7 +844,6 @@ works-boilerplate/ ## 6.2 Phase 2: Core Features + Components (6 days) 1. **Component system** - - All shadcn/ui components - Mobile adaptations - Touch interactions @@ -869,7 +855,6 @@ works-boilerplate/ ## 6.3 Phase 3: PWA + Offline (4 days) 1. **Progressive Web App** - - Complete service worker - Offline strategies - Install flow diff --git a/image.png b/image.png index 09ace99..9774aff 100644 Binary files a/image.png and b/image.png differ diff --git a/messages/en.json b/messages/en.json index 67d2663..f46663f 100644 --- a/messages/en.json +++ b/messages/en.json @@ -23,7 +23,14 @@ "feedback": "Feedback", "search": "Search", "create": "Create", - "favorites": "Favorites" + "favorites": "Favorites", + "notifications": "Notifications", + "menu": "Menu", + "main": "Main", + "account": "Account", + "support": "Support", + "help": "Help", + "logout": "Logout" }, "actions": { "save": "Save", @@ -49,6 +56,9 @@ "info": "Information" } }, + "app": { + "name": "Works" + }, "auth": { "signin": "Sign in", "signup": "Sign up", @@ -62,7 +72,52 @@ "passwordRequired": "Password is required", "invalidCredentials": "Invalid credentials", "accountCreated": "Account created successfully", - "welcomeBack": "Welcome back!" + "welcomeBack": "Welcome back!", + "signupPage": { + "title": "Sign up to Copy UI.", + "subtitle": "Already have an account?", + "subtitleLink": "Sign in", + "nameLabel": "Name", + "namePlaceholder": "Your name", + "emailLabel": "Email address", + "emailPlaceholder": "Enter email to get started", + "passwordLabel": "Password", + "passwordPlaceholder": "Enter your password", + "submitButton": "Sign up", + "divider": "Or continue with", + "legalText": "By creating an account you agree with our", + "termsOfService": "Terms of Service", + "and": "and our", + "privacyPolicy": "Privacy Policy" + }, + "loginPage": { + "title": "Welcome back!", + "subtitle": "Don't have an account?", + "subtitleLink": "Sign up", + "emailLabel": "Email address", + "emailPlaceholder": "Enter your email", + "passwordLabel": "Password", + "passwordPlaceholder": "Enter your password", + "forgotPasswordLink": "Forgot your password?", + "submitButton": "Sign in", + "divider": "Or continue with" + }, + "forgotPasswordPage": { + "title": "Forgot your password?", + "description": "No worries. Enter your email address below and we'll send you a link to reset it.", + "emailLabel": "Email address", + "emailPlaceholder": "your.email@example.com", + "submitButton": "Send reset link", + "backToLogin": "Back to", + "backToLoginLink": "Sign in" + }, + "testimonial": { + "author": { + "name": "Peter Mick", + "title": "Founder of Copytime and Tweetsiu" + }, + "quote": "Works-Boilerplate has been a game-changer for me! It's incredibly intuitive and has transformed the way I approach design. I can't imagine working without it. 🚀" + } }, "dashboard": { "title": "Dashboard", diff --git a/messages/es.json b/messages/es.json index 32805cb..a9c535f 100644 --- a/messages/es.json +++ b/messages/es.json @@ -23,7 +23,14 @@ "feedback": "Comentarios", "search": "Buscar", "create": "Crear", - "favorites": "Favoritos" + "favorites": "Favoritos", + "notifications": "Notificaciones", + "menu": "Menú", + "main": "Principal", + "account": "Cuenta", + "support": "Soporte", + "help": "Ayuda", + "logout": "Cerrar sesión" }, "actions": { "save": "Guardar", @@ -49,6 +56,9 @@ "info": "Información" } }, + "app": { + "name": "Works" + }, "auth": { "signin": "Iniciar sesión", "signup": "Registrarse", @@ -62,7 +72,52 @@ "passwordRequired": "La contraseña es obligatoria", "invalidCredentials": "Credenciales inválidas", "accountCreated": "Cuenta creada exitosamente", - "welcomeBack": "¡Bienvenido de vuelta!" + "welcomeBack": "¡Bienvenido de vuelta!", + "signupPage": { + "title": "Regístrate en Copy UI.", + "subtitle": "¿Ya tienes una cuenta?", + "subtitleLink": "Iniciar sesión", + "nameLabel": "Nombre", + "namePlaceholder": "Tu nombre", + "emailLabel": "Dirección de correo electrónico", + "emailPlaceholder": "Ingresa tu correo para comenzar", + "passwordLabel": "Contraseña", + "passwordPlaceholder": "Ingresa tu contraseña", + "submitButton": "Registrarse", + "divider": "O continúa con", + "legalText": "Al crear una cuenta aceptas nuestros", + "termsOfService": "Términos de Servicio", + "and": "y nuestra", + "privacyPolicy": "Política de Privacidad" + }, + "loginPage": { + "title": "¡Bienvenido de vuelta!", + "subtitle": "¿No tienes una cuenta?", + "subtitleLink": "Regístrate", + "emailLabel": "Dirección de correo electrónico", + "emailPlaceholder": "Ingresa tu correo", + "passwordLabel": "Contraseña", + "passwordPlaceholder": "Ingresa tu contraseña", + "forgotPasswordLink": "¿Olvidaste tu contraseña?", + "submitButton": "Iniciar sesión", + "divider": "O continúa con" + }, + "forgotPasswordPage": { + "title": "¿Olvidaste tu contraseña?", + "description": "No te preocupes. Ingresa tu dirección de correo electrónico a continuación y te enviaremos un enlace para restablecerla.", + "emailLabel": "Dirección de correo electrónico", + "emailPlaceholder": "tu.correo@ejemplo.com", + "submitButton": "Enviar enlace de restablecimiento", + "backToLogin": "Volver a", + "backToLoginLink": "Iniciar sesión" + }, + "testimonial": { + "author": { + "name": "Peter Mick", + "title": "Fundador de Copytime y Tweetsiu" + }, + "quote": "¡Works-Boilerplate ha sido un cambio radical para mí! Es increíblemente intuitivo y ha transformado la forma en que abordo el diseño. No puedo imaginar trabajar sin él. 🚀" + } }, "dashboard": { "title": "Panel", diff --git a/messages/pt.json b/messages/pt.json index 06b3d9c..828b5f1 100644 --- a/messages/pt.json +++ b/messages/pt.json @@ -23,7 +23,14 @@ "feedback": "Feedback", "search": "Buscar", "create": "Criar", - "favorites": "Favoritos" + "favorites": "Favoritos", + "notifications": "Notificações", + "menu": "Menu", + "main": "Principal", + "account": "Conta", + "support": "Suporte", + "help": "Ajuda", + "logout": "Sair" }, "actions": { "save": "Salvar", @@ -49,6 +56,9 @@ "info": "Informação" } }, + "app": { + "name": "Works" + }, "auth": { "signin": "Entrar", "signup": "Cadastrar", @@ -62,7 +72,52 @@ "passwordRequired": "Senha é obrigatória", "invalidCredentials": "Credenciais inválidas", "accountCreated": "Conta criada com sucesso", - "welcomeBack": "Bem-vindo de volta!" + "welcomeBack": "Bem-vindo de volta!", + "signupPage": { + "title": "Cadastre-se no Copy UI.", + "subtitle": "Já tem uma conta?", + "subtitleLink": "Entrar", + "nameLabel": "Nome", + "namePlaceholder": "Seu nome", + "emailLabel": "Endereço de e-mail", + "emailPlaceholder": "Digite o e-mail para começar", + "passwordLabel": "Senha", + "passwordPlaceholder": "Digite sua senha", + "submitButton": "Cadastrar", + "divider": "Ou continue com", + "legalText": "Ao criar uma conta você concorda com nossos", + "termsOfService": "Termos de Serviço", + "and": "e nossa", + "privacyPolicy": "Política de Privacidade" + }, + "loginPage": { + "title": "Bem-vindo de volta!", + "subtitle": "Não tem uma conta?", + "subtitleLink": "Cadastre-se", + "emailLabel": "Endereço de e-mail", + "emailPlaceholder": "Digite seu e-mail", + "passwordLabel": "Senha", + "passwordPlaceholder": "Digite sua senha", + "forgotPasswordLink": "Esqueceu sua senha?", + "submitButton": "Entrar", + "divider": "Ou continue com" + }, + "forgotPasswordPage": { + "title": "Esqueceu sua senha?", + "description": "Sem problemas. Digite seu endereço de e-mail abaixo e enviaremos um link para redefini-la.", + "emailLabel": "Endereço de e-mail", + "emailPlaceholder": "seu.email@exemplo.com", + "submitButton": "Enviar link de redefinição", + "backToLogin": "Voltar para", + "backToLoginLink": "Entrar" + }, + "testimonial": { + "author": { + "name": "Peter Mick", + "title": "Fundador da Copytime e Tweetsiu" + }, + "quote": "O Works-Boilerplate tem sido um divisor de águas para mim! É incrivelmente intuitivo e transformou a maneira como abordo o design. Não consigo imaginar trabalhar sem ele. 🚀" + } }, "dashboard": { "title": "Painel", diff --git a/package.json b/package.json index 116eea8..2653d0c 100644 --- a/package.json +++ b/package.json @@ -84,7 +84,6 @@ "react-day-picker": "9.7.0", "react-dom": "19.1.0", "react-hook-form": "7.59.0", - "react-use-gesture": "9.1.3", "recharts": "2.15.4", "sonner": "2.0.5", "tailwind-merge": "3.3.1", @@ -102,6 +101,7 @@ "@sentry/nextjs": "9.33.0", "@svgr/webpack": "8.1.0", "@t3-oss/env-nextjs": "0.13.8", + "@tailwindcss/container-queries": "^0.1.1", "@tailwindcss/postcss": "^4.1.11", "@types/node": "22.15.34", "@types/react": "19.1.8", @@ -109,6 +109,7 @@ "@types/web": "0.0.243", "@typescript-eslint/eslint-plugin": "8.35.0", "@typescript-eslint/parser": "8.35.0", + "@use-gesture/react": "^10.3.1", "autoprefixer": "10.4.21", "commitizen": "^4.3.1", "cssnano": "7.0.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce8fdd3..721bf66 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -131,9 +131,6 @@ importers: react-hook-form: specifier: 7.59.0 version: 7.59.0(react@19.1.0) - react-use-gesture: - specifier: 9.1.3 - version: 9.1.3(react@19.1.0) recharts: specifier: 2.15.4 version: 2.15.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -180,6 +177,9 @@ importers: '@t3-oss/env-nextjs': specifier: 0.13.8 version: 0.13.8(typescript@5.8.3)(zod@3.25.67) + '@tailwindcss/container-queries': + specifier: ^0.1.1 + version: 0.1.1(tailwindcss@4.1.11) '@tailwindcss/postcss': specifier: ^4.1.11 version: 4.1.11 @@ -201,6 +201,9 @@ importers: '@typescript-eslint/parser': specifier: 8.35.0 version: 8.35.0(eslint@8.57.1)(typescript@5.8.3) + '@use-gesture/react': + specifier: ^10.3.1 + version: 10.3.1(react@19.1.0) autoprefixer: specifier: 10.4.21 version: 10.4.21(postcss@8.5.6) @@ -2895,6 +2898,11 @@ packages: zod: optional: true + '@tailwindcss/container-queries@0.1.1': + resolution: {integrity: sha512-p18dswChx6WnTSaJCSGx6lTmrGzNNvm2FtXmiO6AuA1V4U5REyoqwmT6kgAsIMdjo07QdAfYXHJ4hnMtfHzWgA==} + peerDependencies: + tailwindcss: '>=3.2.0' + '@tailwindcss/node@4.1.11': resolution: {integrity: sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q==} @@ -3263,6 +3271,14 @@ packages: cpu: [x64] os: [win32] + '@use-gesture/core@10.3.1': + resolution: {integrity: sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==} + + '@use-gesture/react@10.3.1': + resolution: {integrity: sha512-Yy19y6O2GJq8f7CHf7L0nxL8bf4PZCPaVOCgJrusOeFHY1LvHgYXnmnXg6N5iwAnbgbZCDjo60SiM6IPJi9C5g==} + peerDependencies: + react: '>= 16.8.0' + '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -6800,12 +6816,6 @@ packages: react: '>=16.6.0' react-dom: '>=16.6.0' - react-use-gesture@9.1.3: - resolution: {integrity: sha512-CdqA2SmS/fj3kkS2W8ZU8wjTbVBAIwDWaRprX7OKaj7HlGwBasGEFggmk5qNklknqk9zK/h8D355bEJFTpqEMg==} - deprecated: This package is no longer maintained. Please use @use-gesture/react instead - peerDependencies: - react: '>= 16.8.0' - react@19.1.0: resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} engines: {node: '>=0.10.0'} @@ -11516,6 +11526,10 @@ snapshots: typescript: 5.8.3 zod: 3.25.67 + '@tailwindcss/container-queries@0.1.1(tailwindcss@4.1.11)': + dependencies: + tailwindcss: 4.1.11 + '@tailwindcss/node@4.1.11': dependencies: '@ampproject/remapping': 2.3.0 @@ -11869,6 +11883,13 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.9.2': optional: true + '@use-gesture/core@10.3.1': {} + + '@use-gesture/react@10.3.1(react@19.1.0)': + dependencies: + '@use-gesture/core': 10.3.1 + react: 19.1.0 + '@webassemblyjs/ast@1.14.1': dependencies: '@webassemblyjs/helper-numbers': 1.13.2 @@ -15722,10 +15743,6 @@ snapshots: react: 19.1.0 react-dom: 19.1.0(react@19.1.0) - react-use-gesture@9.1.3(react@19.1.0): - dependencies: - react: 19.1.0 - react@19.1.0: {} readable-stream@3.6.2: diff --git a/public/fallback-cWp4CFwgbIN3lYPorNo2y.js b/public/fallback-9clwDph9wR3HcsIQd9nqb.js similarity index 100% rename from public/fallback-cWp4CFwgbIN3lYPorNo2y.js rename to public/fallback-9clwDph9wR3HcsIQd9nqb.js diff --git a/public/sw.js b/public/sw.js index 778bf0a..f6fb8a2 100644 --- a/public/sw.js +++ b/public/sw.js @@ -1 +1 @@ -if(!self.define){let e,s={};const c=(c,a)=>(c=new URL(c+".js",a).href,s[c]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=c,e.onload=s,document.head.appendChild(e)}else e=c,importScripts(c),s()})).then((()=>{let e=s[c];if(!e)throw new Error(`Module ${c} didn’t register its module`);return e})));self.define=(a,t)=>{const n=e||("document"in self?document.currentScript.src:"")||location.href;if(s[n])return;let i={};const r=e=>c(e,n),o={module:{uri:n},exports:i,require:r};s[n]=Promise.all(a.map((e=>o[e]||r(e)))).then((e=>(t(...e),i)))}}define(["./workbox-977fb9bf"],(function(e){"use strict";importScripts("fallback-cWp4CFwgbIN3lYPorNo2y.js"),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"187cce2ef59f12b12067217817106893"},{url:"/_next/static/cWp4CFwgbIN3lYPorNo2y/_buildManifest.js",revision:"94bb82cb576ecf417fa0244286010d21"},{url:"/_next/static/cWp4CFwgbIN3lYPorNo2y/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/_next/static/chunks/287-a16d59758302cc54.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/396-731246177016e860.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/485-59262384999b88ef.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/557-253955d0c6d5514f.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/643.5c185b4442eeaf60.js",revision:"5c185b4442eeaf60"},{url:"/_next/static/chunks/750.0183f3ef7484a5b6.js",revision:"0183f3ef7484a5b6"},{url:"/_next/static/chunks/834-4c6350c37be4b78f.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/841-bfc8d6837767653b.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/888-ca8d996d2b66b09c.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/dashboard/page-86703e7723730dfb.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/faturamento/page-4a63d69a544e7a70.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/layout-f794b073087a7787.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/(marketing)/layout-22b10352944293ef.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/(marketing)/page-a1f4bebb95c2b95e.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/error-ac02ca4e99535fea.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/layout-d42b832abac8d793.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/loading-5920d46047880a16.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/%5Blocale%5D/not-found-abcc64d962ebf755.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/_not-found/page-4ef6706d5234ec8e.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/layout-62c915007d5cd39b.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/not-found-05d77340880e6ae2.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/page-0fdee87a448c6a6a.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/app/sitemap.xml/route-4588b736bd337368.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/df72ee0e-5a1232d17479922e.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/framework-d5270b8a9ec1424f.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/main-17f2141107bc5a35.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/main-app-6b6448f33da34bf1.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/pages/_app-89a97b4dce3327e3.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/pages/_error-0ff84668068b9148.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/chunks/polyfills-42372ed130431b0a.js",revision:"846118c33b2c0e922d7b3a7676f81f6f"},{url:"/_next/static/chunks/webpack-0132e27b4848f52c.js",revision:"cWp4CFwgbIN3lYPorNo2y"},{url:"/_next/static/css/05ca9e0f2fbbdca4.css",revision:"05ca9e0f2fbbdca4"},{url:"/_next/static/css/5b576904c612405e.css",revision:"5b576904c612405e"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/8e9860b6e62d6359-s.woff2",revision:"01ba6c2a184b8cba08b0d57167664d75"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/_next/static/media/e4af272ccee01ff0-s.p.woff2",revision:"65850a373e258f1c897a2b3d75eb74de"},{url:"/favicon.ico",revision:"d41d8cd98f00b204e9800998ecf8427e"},{url:"/manifest.json",revision:"7d155f197dca9c676b6cdc2625d4ca6b"},{url:"/offline.html",revision:"a181f9f7f889a54ce275b393af90dd2f"}],{ignoreURLParametersMatching:[]}),e.cleanupOutdatedCaches(),e.registerRoute("/",new e.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:e,response:s,event:c,state:a})=>s&&"opaqueredirect"===s.type?new Response(s.body,{status:200,statusText:"OK",headers:s.headers}):s},{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/^https?.*\/api\/.*/,new e.NetworkFirst({cacheName:"api-cache",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:300}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/\.(?:png|jpg|jpeg|gif|webp|svg|ico)$/,new e.CacheFirst({cacheName:"images-cache",plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:2592e3}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/\.(?:js|css|woff|woff2|ttf|eot)$/,new e.StaleWhileRevalidate({cacheName:"static-assets",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:604800}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/^https?.*\/.*$/,new e.NetworkFirst({cacheName:"pages-cache",networkTimeoutSeconds:8,plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET")})); +if(!self.define){let e,s={};const c=(c,n)=>(c=new URL(c+".js",n).href,s[c]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=c,e.onload=s,document.head.appendChild(e)}else e=c,importScripts(c),s()})).then((()=>{let e=s[c];if(!e)throw new Error(`Module ${c} didn’t register its module`);return e})));self.define=(n,a)=>{const t=e||("document"in self?document.currentScript.src:"")||location.href;if(s[t])return;let i={};const r=e=>c(e,t),d={module:{uri:t},exports:i,require:r};s[t]=Promise.all(n.map((e=>d[e]||r(e)))).then((e=>(a(...e),i)))}}define(["./workbox-977fb9bf"],(function(e){"use strict";importScripts("fallback-9clwDph9wR3HcsIQd9nqb.js"),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"5eeac72aaf88e6f767183c9dfe877305"},{url:"/_next/static/9clwDph9wR3HcsIQd9nqb/_buildManifest.js",revision:"d5138c5a36c2241ee2dfa7a78c0e9a1a"},{url:"/_next/static/9clwDph9wR3HcsIQd9nqb/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/_next/static/chunks/161-3c02f9c4368e0412.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/263-32c50c7567b82e68.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/294-2bcd3d5d0947a742.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/383-9402ad7e5f66cc65.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/432-0f9c61de2f637c4a.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/494.4a9d1bcf1a70877a.js",revision:"4a9d1bcf1a70877a"},{url:"/_next/static/chunks/538-e4db0c75de6c73b9.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/542-8dc32b24f74407ce.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/56.068569ee80e27f3b.js",revision:"068569ee80e27f3b"},{url:"/_next/static/chunks/832-361beca1c364f545.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/844-6d2f92a76f47b913.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/853-60efbcfacd849031.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/959-81b0313d027eb339.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/dashboard/page-c6d095eabd81e3a3.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/faturamento/page-a7a02561532422dc.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(app)/layout-31ae806b154a529a.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(auth)/forgot-password/page-f50db1472b0e440d.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(auth)/layout-fc65ce7c32449ce2.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(auth)/login/page-3328bbc7e742b9fe.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(auth)/signup/page-19f98c7f5a81fec4.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(marketing)/layout-293158a1058d9b81.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/(marketing)/page-66d59ba5c23a4d48.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/error-0db1c6d81304e904.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/layout-a4056f44008fe3e6.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/loading-6984ddb2f2a0b407.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/%5Blocale%5D/not-found-5897314b84a1c21f.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/_not-found/page-01c186fc81ccb1e8.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/layout-add27de5365e8b34.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/not-found-0ece9d424732af79.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/page-0cac71f3bdb70a99.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/app/sitemap.xml/route-bd0b22ef647add2e.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/eada2e66-3c3855e1583f640e.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/framework-5f794ff63f610da5.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/main-a41a075245004899.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/main-app-8ea3bdcb34cd1813.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/pages/_app-9eac16e0d6913409.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/pages/_error-180e1c8ba10f95e3.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/chunks/polyfills-42372ed130431b0a.js",revision:"846118c33b2c0e922d7b3a7676f81f6f"},{url:"/_next/static/chunks/webpack-163bf0779dd5d815.js",revision:"9clwDph9wR3HcsIQd9nqb"},{url:"/_next/static/css/5b576904c612405e.css",revision:"5b576904c612405e"},{url:"/_next/static/css/fd8bc806ca772132.css",revision:"fd8bc806ca772132"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/8e9860b6e62d6359-s.woff2",revision:"01ba6c2a184b8cba08b0d57167664d75"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/_next/static/media/e4af272ccee01ff0-s.p.woff2",revision:"65850a373e258f1c897a2b3d75eb74de"},{url:"/favicon.ico",revision:"d41d8cd98f00b204e9800998ecf8427e"},{url:"/manifest.json",revision:"7d155f197dca9c676b6cdc2625d4ca6b"},{url:"/offline.html",revision:"a181f9f7f889a54ce275b393af90dd2f"}],{ignoreURLParametersMatching:[]}),e.cleanupOutdatedCaches(),e.registerRoute("/",new e.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:e,response:s,event:c,state:n})=>s&&"opaqueredirect"===s.type?new Response(s.body,{status:200,statusText:"OK",headers:s.headers}):s},{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/^https?.*\/api\/.*/,new e.NetworkFirst({cacheName:"api-cache",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:300}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/\.(?:png|jpg|jpeg|gif|webp|svg|ico)$/,new e.CacheFirst({cacheName:"images-cache",plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:2592e3}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/\.(?:js|css|woff|woff2|ttf|eot)$/,new e.StaleWhileRevalidate({cacheName:"static-assets",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:604800}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET"),e.registerRoute(/^https?.*\/.*$/,new e.NetworkFirst({cacheName:"pages-cache",networkTimeoutSeconds:8,plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]}),{handlerDidError:async({request:e})=>self.fallback(e)}]}),"GET")})); diff --git a/src/app/[locale]/(app)/test-safe-area/page.tsx b/src/app/[locale]/(app)/test-safe-area/page.tsx deleted file mode 100644 index 2d18cc6..0000000 --- a/src/app/[locale]/(app)/test-safe-area/page.tsx +++ /dev/null @@ -1,109 +0,0 @@ -'use client' - -import { useSafeAreaInsets } from '@/components/navigation/hooks/useSafeAreaInsets' - -export default function TestSafeAreaPage() { - const { insets, cssInsets, paddingClasses, hasInsets } = useSafeAreaInsets() - - return ( -
- {/* Test 1: Visual representation of safe areas */} -
- {/* Top safe area */} -
- Top Safe Area: {cssInsets.top} -
- - {/* Bottom safe area */} -
- Bottom Safe Area: {cssInsets.bottom} -
- - {/* Left safe area */} -
- - Left: {cssInsets.left} - -
- - {/* Right safe area */} -
- - Right: {cssInsets.right} - -
- - {/* Content area with safe area padding */} -
-
-

Safe Area Insets Test

- -
-

- Has Insets: {hasInsets ? 'Yes' : 'No'} -

-

- Top: {insets.top}px -

-

- Right: {insets.right}px -

-

- Bottom: {insets.bottom}px -

-

- Left: {insets.left}px -

-
- -
-
-

Tailwind Classes Test

-
- This div uses Tailwind safe area padding utilities -
-
- -
-

CSS Custom Properties Test

-
- This div uses CSS custom properties for safe areas -
-
-
- -
-

Testing Instructions:

-
    -
  1. Install this PWA on an iOS device (iPhone X or newer)
  2. -
  3. Open the app in standalone mode
  4. -
  5. Rotate the device to see safe area changes
  6. -
  7. Check that content doesn't overlap with notch/home indicator
  8. -
-
-
-
-
-
- ) -} diff --git a/src/app/[locale]/(auth)/forgot-password/page.tsx b/src/app/[locale]/(auth)/forgot-password/page.tsx new file mode 100644 index 0000000..ff5ac2e --- /dev/null +++ b/src/app/[locale]/(auth)/forgot-password/page.tsx @@ -0,0 +1,76 @@ +'use client' + +import { zodResolver } from '@hookform/resolvers/zod' +import Link from 'next/link' +import { useTranslations, useLocale } from 'next-intl' +import { useState } from 'react' +import { useForm } from 'react-hook-form' +import { z } from 'zod' + +import { AuthLayout } from '@/components/auth/auth-layout' +import { FormInput } from '@/components/ui/form-input' +import { PrimaryButton } from '@/components/ui/primary-button' + +const forgotPasswordSchema = z.object({ + email: z.string().email('Invalid email address').min(1, 'Email is required'), +}) + +type ForgotPasswordFormData = z.infer + +export default function ForgotPasswordPage() { + const t = useTranslations('auth.forgotPasswordPage') + const locale = useLocale() + const [isLoading, setIsLoading] = useState(false) + + const { + register, + handleSubmit, + formState: { errors }, + } = useForm({ + resolver: zodResolver(forgotPasswordSchema), + }) + + const onSubmit = async (_data: ForgotPasswordFormData) => { + setIsLoading(true) + // TODO: Implement actual password reset API call + await new Promise(resolve => setTimeout(resolve, 2000)) + setIsLoading(false) + } + + return ( + +
+

+ {t('title')} +

+

{t('description')}

+ +
void handleSubmit(onSubmit)(e)} className='space-y-6'> + + + + {t('submitButton')} + + + +

+ {t('backToLogin')}{' '} + + {t('backToLoginLink')} + +

+
+
+ ) +} diff --git a/src/app/[locale]/(auth)/layout.tsx b/src/app/[locale]/(auth)/layout.tsx index b493b78..f4c114e 100644 --- a/src/app/[locale]/(auth)/layout.tsx +++ b/src/app/[locale]/(auth)/layout.tsx @@ -6,8 +6,8 @@ export default function AuthLayout({ children: React.ReactNode }>) { return ( -
-
{children}
+
+
{children}
) } diff --git a/src/app/[locale]/(auth)/login/page.tsx b/src/app/[locale]/(auth)/login/page.tsx new file mode 100644 index 0000000..aa37264 --- /dev/null +++ b/src/app/[locale]/(auth)/login/page.tsx @@ -0,0 +1,113 @@ +'use client' + +import Link from 'next/link' +import { useTranslations, useLocale } from 'next-intl' +import { useState } from 'react' +import { useForm } from 'react-hook-form' +import { zodResolver } from '@hookform/resolvers/zod' +import { z } from 'zod' + +import { AuthLayout } from '@/components/auth/auth-layout' +import { FormInput } from '@/components/ui/form-input' +import { PasswordInput } from '@/components/ui/password-input' +import { PrimaryButton } from '@/components/ui/primary-button' +import { SocialLoginButton } from '@/components/ui/social-login-button' + +const loginSchema = z.object({ + email: z.string().email('Invalid email address').min(1, 'Email is required'), + password: z.string().min(1, 'Password is required'), +}) + +type LoginFormData = z.infer + +export default function LoginPage() { + const t = useTranslations('auth.loginPage') + const locale = useLocale() + const [isLoading, setIsLoading] = useState(false) + + const { + register, + handleSubmit, + formState: { errors }, + } = useForm({ + resolver: zodResolver(loginSchema), + }) + + const onSubmit = async (_data: LoginFormData) => { + setIsLoading(true) + // TODO: Implement actual login API call with form data + await new Promise(resolve => setTimeout(resolve, 2000)) + setIsLoading(false) + } + + return ( + +
+

+ {t('title')} +

+

+ {t('subtitle')}{' '} + + {t('subtitleLink')} + +

+ +
void handleSubmit(onSubmit)(e)} className='space-y-6'> + + +
+ +
+ + {t('forgotPasswordLink')} + +
+
+ + + {t('submitButton')} + + + +
+
+
+
+
+
+ {t('divider')} +
+
+ +
+ + + +
+
+
+ + ) +} diff --git a/src/app/[locale]/(auth)/signup/page.tsx b/src/app/[locale]/(auth)/signup/page.tsx new file mode 100644 index 0000000..9fee26b --- /dev/null +++ b/src/app/[locale]/(auth)/signup/page.tsx @@ -0,0 +1,136 @@ +'use client' + +import Link from 'next/link' +import { useTranslations, useLocale } from 'next-intl' +import { useState } from 'react' +import { useForm } from 'react-hook-form' +import { zodResolver } from '@hookform/resolvers/zod' +import { z } from 'zod' + +import { AuthLayout } from '@/components/auth/auth-layout' +import { FormInput } from '@/components/ui/form-input' +import { PasswordInput } from '@/components/ui/password-input' +import { PrimaryButton } from '@/components/ui/primary-button' +import { SocialLoginButton } from '@/components/ui/social-login-button' + +const signupSchema = z.object({ + name: z.string().min(2, 'Name must be at least 2 characters').max(100, 'Name is too long'), + email: z.string().email('Invalid email address').min(1, 'Email is required'), + password: z + .string() + .min(8, 'Password must be at least 8 characters') + .regex(/[A-Z]/, 'Password must contain at least one uppercase letter') + .regex(/[a-z]/, 'Password must contain at least one lowercase letter') + .regex(/[0-9]/, 'Password must contain at least one number'), +}) + +type SignupFormData = z.infer + +export default function SignUpPage() { + const t = useTranslations('auth.signupPage') + const locale = useLocale() + const [isLoading, setIsLoading] = useState(false) + + const { + register, + handleSubmit, + formState: { errors }, + } = useForm({ + resolver: zodResolver(signupSchema), + }) + + const onSubmit = async (_data: SignupFormData) => { + setIsLoading(true) + // TODO: Implement actual signup API call with form data + await new Promise(resolve => setTimeout(resolve, 2000)) + setIsLoading(false) + } + + return ( + +
+

+ {t('title')} +

+

+ {t('subtitle')}{' '} + + {t('subtitleLink')} + +

+ +
void handleSubmit(onSubmit)(e)} className='space-y-6'> + + + + + + + + {t('submitButton')} + + + +
+
+
+
+
+
+ {t('divider')} +
+
+ +
+ + + +
+
+ +

+ {t('legalText')}{' '} + + {t('termsOfService')} + {' '} + {t('and')}{' '} + + {t('privacyPolicy')} + + . +

+
+ + ) +} diff --git a/src/app/globals.css b/src/app/globals.css index 66cbbed..a69d047 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -104,6 +104,12 @@ --safe-area-inset-right: env(safe-area-inset-right); --safe-area-inset-bottom: env(safe-area-inset-bottom); --safe-area-inset-left: env(safe-area-inset-left); + + /* Shorthand variables for safe area insets */ + --sat: var(--safe-area-inset-top); + --sar: var(--safe-area-inset-right); + --sab: var(--safe-area-inset-bottom); + --sal: var(--safe-area-inset-left); } .dark { @@ -390,17 +396,239 @@ opacity: 1; } } + + /* Viewport-aware spacing utilities */ + .p-fluid { + padding: clamp(1rem, 2vw + 0.5rem, 2rem); + } + + .px-fluid { + padding-left: clamp(1rem, 3vw + 0.5rem, 3rem); + padding-right: clamp(1rem, 3vw + 0.5rem, 3rem); + } + + .py-fluid { + padding-top: clamp(1rem, 2vw + 0.5rem, 2rem); + padding-bottom: clamp(1rem, 2vw + 0.5rem, 2rem); + } + + .m-fluid { + margin: clamp(1rem, 2vw + 0.5rem, 2rem); + } + + .mx-fluid { + margin-left: clamp(1rem, 3vw + 0.5rem, 3rem); + margin-right: clamp(1rem, 3vw + 0.5rem, 3rem); + } + + .my-fluid { + margin-top: clamp(1rem, 2vw + 0.5rem, 2rem); + margin-bottom: clamp(1rem, 2vw + 0.5rem, 2rem); + } + + .gap-fluid { + gap: clamp(0.5rem, 1.5vw + 0.25rem, 1.5rem); + } + + /* Container queries utility */ + .container-queries { + container-type: inline-size; + } + + /* Safe area container for PWA */ + .safe-area-container { + padding-top: env(safe-area-inset-top); + padding-left: env(safe-area-inset-left); + padding-right: env(safe-area-inset-right); + padding-bottom: env(safe-area-inset-bottom); + } + + /* Responsive touch targets */ + .touch-responsive { + min-height: clamp(2.75rem, 5vw, 3.5rem); + min-width: clamp(2.75rem, 5vw, 3.5rem); + } + + /* Viewport units with fallback */ + .vw-100 { + width: 100vw; + width: 100dvw; + } + + .vh-100 { + height: 100vh; + height: 100dvh; + } + + /* Dynamic padding based on viewport */ + .px-viewport { + padding-left: max(1rem, env(safe-area-inset-left)); + padding-right: max(1rem, env(safe-area-inset-right)); + } + + .py-viewport { + padding-top: max(1rem, env(safe-area-inset-top)); + padding-bottom: max(1rem, env(safe-area-inset-bottom)); + } } /* Print styles */ @media print { - .no-print { + /* Hide non-essential elements */ + .no-print, + nav, + aside, + footer, + .btn-touch, + .glass, + [role='navigation'], + [role='banner']:not(.print-header), + [aria-label*='menu'], + [aria-label*='navigation'] { display: none !important; } + /* Reset colors for better print contrast */ * { + color-adjust: exact; + -webkit-print-color-adjust: exact; + print-color-adjust: exact; + } + + /* Base text and background */ + body { color: black !important; background: white !important; + font-size: 12pt; + line-height: 1.5; + } + + /* Headings */ + h1, + h2, + h3, + h4, + h5, + h6 { + color: black !important; + page-break-after: avoid; + page-break-inside: avoid; + } + + h1 { + font-size: 20pt; + } + h2 { + font-size: 18pt; + } + h3 { + font-size: 16pt; + } + h4 { + font-size: 14pt; + } + h5, + h6 { + font-size: 12pt; + } + + /* Links */ + a { + color: black !important; + text-decoration: underline; + } + + /* Show link URLs */ + a[href^='http']:after { + content: ' (' attr(href) ')'; + font-size: 0.8em; + color: #666; + } + + /* Images */ + img { + max-width: 100% !important; + page-break-inside: avoid; + } + + /* Tables */ + table { + border-collapse: collapse !important; + width: 100%; + } + + table, + th, + td { + border: 1px solid #ddd !important; + } + + th, + td { + padding: 8px !important; + } + + /* Page breaks */ + .page-break { + page-break-after: always; + } + + .avoid-break { + page-break-inside: avoid; + } + + /* Margins for print */ + @page { + margin: 2cm; + size: A4; + } + + /* Container adjustments */ + .container, + main, + article { + width: 100% !important; + margin: 0 !important; + padding: 0 !important; + } + + /* Grid and flex adjustments */ + .grid { + display: block !important; + } + + .grid > * { + display: block !important; + width: 100% !important; + margin-bottom: 1em; + } + + /* Remove shadows and effects */ + * { + box-shadow: none !important; + text-shadow: none !important; + } + + /* Ensure content is visible */ + .print-visible { + display: block !important; + visibility: visible !important; + } + + /* Typography adjustments */ + p, + li { + orphans: 3; + widows: 3; + } + + /* Code blocks */ + pre, + code { + border: 1px solid #ddd; + page-break-inside: avoid; + font-family: monospace; + font-size: 11pt; } } diff --git a/src/components/auth/auth-layout.tsx b/src/components/auth/auth-layout.tsx new file mode 100644 index 0000000..bc424e3 --- /dev/null +++ b/src/components/auth/auth-layout.tsx @@ -0,0 +1,26 @@ +import { ReactNode } from 'react' + +import { Testimonial } from './testimonial' + +interface AuthLayoutProps { + children: ReactNode + showTestimonial?: boolean +} + +export function AuthLayout({ children, showTestimonial = true }: AuthLayoutProps) { + return ( +
+ {/* Left side - Form */} +
+
{children}
+
+ + {/* Right side - Testimonial */} + {showTestimonial && ( +
+ +
+ )} +
+ ) +} diff --git a/src/components/auth/testimonial.tsx b/src/components/auth/testimonial.tsx new file mode 100644 index 0000000..369e210 --- /dev/null +++ b/src/components/auth/testimonial.tsx @@ -0,0 +1,32 @@ +import { useTranslations } from 'next-intl' + +export function Testimonial() { + const t = useTranslations('auth.testimonial') + + return ( +
+
+
+
+
+ P +
+
+
+
+

{t('author.name')}

+

{t('author.title')}

+
+

+ {t.rich('quote', { + highlight: chunks => ( + {chunks} + ), + })} +

+
+
+
+
+ ) +} diff --git a/src/components/dashboard/page-transition-wrapper.tsx b/src/components/dashboard/page-transition-wrapper.tsx index 0a56051..8f9b8fa 100644 --- a/src/components/dashboard/page-transition-wrapper.tsx +++ b/src/components/dashboard/page-transition-wrapper.tsx @@ -20,8 +20,8 @@ const pageVariants = { } const pageTransition = { - type: 'tween', - ease: 'easeInOut', + type: 'tween' as const, + ease: 'easeInOut' as const, duration: 0.3, } diff --git a/src/components/layout/AdaptiveLoader.tsx b/src/components/layout/AdaptiveLoader.tsx new file mode 100644 index 0000000..9b92b3a --- /dev/null +++ b/src/components/layout/AdaptiveLoader.tsx @@ -0,0 +1,255 @@ +'use client' + +import dynamic from 'next/dynamic' +import { forwardRef, useEffect, useRef, useState } from 'react' +import type React from 'react' + +import { useDeviceCapabilities } from './ResponsiveUtils' + +/** + * Adaptive component loader that loads components based on device capabilities + */ +interface AdaptiveLoaderProps { + children?: React.ReactNode + fallback?: React.ReactNode + loadingComponent?: React.ReactNode + errorComponent?: React.ReactNode + loadOn?: 'immediate' | 'interaction' | 'idle' | 'visible' + threshold?: number + rootMargin?: string + loadCondition?: () => boolean + className?: string +} + +export const AdaptiveLoader = forwardRef( + ( + { + children, + fallback, + loadingComponent =
, + loadOn = 'visible', + threshold = 0.1, + rootMargin = '50px', + loadCondition, + className, + }, + ref + ) => { + const [shouldLoad, setShouldLoad] = useState(loadOn === 'immediate') + const elementRef = useRef(null) + + const { networkSpeed, deviceMemory } = useDeviceCapabilities() + + // Check if component should load based on conditions + useEffect(() => { + if (loadCondition && !loadCondition()) { + return undefined + } + + switch (loadOn) { + case 'immediate': + setShouldLoad(true) + break + + case 'idle': + if ('requestIdleCallback' in window) { + const id = requestIdleCallback(() => setShouldLoad(true)) + return () => cancelIdleCallback(id) + } else { + // Fallback for browsers without requestIdleCallback + const timeout = setTimeout(() => setShouldLoad(true), 1) + return () => clearTimeout(timeout) + } + break + + case 'interaction': { + const handleInteraction = () => { + setShouldLoad(true) + cleanup() + } + + const events = ['click', 'touchstart', 'mouseenter', 'focus'] + const cleanup = () => { + events.forEach(event => { + document.removeEventListener(event, handleInteraction) + }) + } + + events.forEach(event => { + document.addEventListener(event, handleInteraction, { once: true }) + }) + + return cleanup + } + + case 'visible': { + if (!elementRef.current) return + + const observer = new IntersectionObserver( + ([entry]) => { + if (entry?.isIntersecting) { + setShouldLoad(true) + observer.disconnect() + } + }, + { threshold, rootMargin } + ) + + observer.observe(elementRef.current) + return () => observer.disconnect() + } + + default: + break + } + + return undefined + }, [loadOn, loadCondition, threshold, rootMargin]) + + // Show fallback for low-end devices or slow networks + if (networkSpeed === 'slow' || deviceMemory < 4) { + return fallback ? <>{fallback} : null + } + + if (!shouldLoad) { + return ( +
+ {loadingComponent} +
+ ) + } + + return ( +
+ {children} +
+ ) + } +) + +AdaptiveLoader.displayName = 'AdaptiveLoader' + +/** + * Component for dynamically importing heavy components + */ +interface DynamicComponentProps

> { + loader: () => Promise<{ default: React.ComponentType

}> + props?: P + fallback?: React.ReactNode + loadOn?: 'immediate' | 'interaction' | 'idle' | 'visible' + ssr?: boolean +} + +export function DynamicComponent

= Record>({ + loader, + props = {} as P, + fallback =

, + loadOn = 'visible', + ssr = false, +}: DynamicComponentProps

) { + const Component = dynamic(loader, { + loading: () => <>{fallback}, + ssr, + }) + + return ( + + + + ) +} + +/** + * Progressive enhancement wrapper + */ +interface ProgressiveEnhancementProps { + basic: React.ReactNode + enhanced: React.ReactNode + enhanceOn?: 'immediate' | 'interaction' | 'idle' + className?: string +} + +export const ProgressiveEnhancement: React.FC = ({ + basic, + enhanced, + enhanceOn = 'idle', + className, +}) => { + const [isEnhanced, setIsEnhanced] = useState(false) + const { isTouch, networkSpeed } = useDeviceCapabilities() + + useEffect(() => { + // Don't enhance on slow networks or low-end devices + if (networkSpeed === 'slow') { + return undefined + } + + switch (enhanceOn) { + case 'immediate': + setIsEnhanced(true) + break + + case 'idle': { + if ('requestIdleCallback' in window) { + const id = requestIdleCallback(() => setIsEnhanced(true)) + return () => cancelIdleCallback(id) + } else { + const timeout = setTimeout(() => setIsEnhanced(true), 1) + return () => clearTimeout(timeout) + } + } + + case 'interaction': { + const handleInteraction = () => setIsEnhanced(true) + const event = isTouch ? 'touchstart' : 'mouseenter' + + document.addEventListener(event, handleInteraction, { once: true }) + return () => document.removeEventListener(event, handleInteraction) + } + + default: + break + } + + return undefined + }, [enhanceOn, networkSpeed, isTouch]) + + return

{isEnhanced ? enhanced : basic}
+} + +/** + * Resource hint component for preloading/prefetching + */ +interface ResourceHintProps { + href: string + as?: 'script' | 'style' | 'image' | 'font' | 'document' + type?: string + crossOrigin?: 'anonymous' | 'use-credentials' + rel?: 'preload' | 'prefetch' | 'preconnect' | 'dns-prefetch' +} + +export const ResourceHint: React.FC = ({ + href, + as, + type, + crossOrigin, + rel = 'preload', +}) => { + useEffect(() => { + const link = document.createElement('link') + link.rel = rel + link.href = href + + if (as) link.as = as + if (type) link.type = type + if (crossOrigin) link.crossOrigin = crossOrigin + + document.head.appendChild(link) + + return () => { + document.head.removeChild(link) + } + }, [href, as, type, crossOrigin, rel]) + + return null +} diff --git a/src/components/layout/LayoutDebugger.tsx b/src/components/layout/LayoutDebugger.tsx new file mode 100644 index 0000000..2516571 --- /dev/null +++ b/src/components/layout/LayoutDebugger.tsx @@ -0,0 +1,366 @@ +'use client' + +import { useEffect, useState } from 'react' + +import { cn } from '@/lib/utils' + +import { useViewport } from './ResponsiveUtils' + +interface LayoutDebuggerProps { + showGrid?: boolean + showBreakpoints?: boolean + showContainerQueries?: boolean + showTouchTargets?: boolean + showViewportInfo?: boolean + showPerformance?: boolean + className?: string +} + +export const LayoutDebugger: React.FC = ({ + showGrid = true, + showBreakpoints = true, + showContainerQueries = true, + showTouchTargets = true, + showViewportInfo = true, + showPerformance = true, + className, +}) => { + const [isVisible, setIsVisible] = useState(false) + const [gridEnabled, setShowGrid] = useState(showGrid) + const [touchTargetsEnabled, setShowTouchTargets] = useState(showTouchTargets) + const [containerQueriesEnabled, setShowContainerQueries] = useState(showContainerQueries) + const [performanceMetrics, setPerformanceMetrics] = useState({ + fps: 0, + memory: 0, + layoutShifts: 0, + }) + const viewport = useViewport() + + // Toggle debugger visibility with keyboard shortcut + useEffect(() => { + const handleKeyPress = (e: KeyboardEvent) => { + if (e.ctrlKey && e.shiftKey && e.key === 'D') { + setIsVisible(prev => !prev) + } + } + + window.addEventListener('keydown', handleKeyPress) + return () => window.removeEventListener('keydown', handleKeyPress) + }, []) + + // Monitor performance metrics + useEffect(() => { + if (!showPerformance || !isVisible) return + + let frameCount = 0 + let lastTime = performance.now() + let rafId: number + + const measureFPS = () => { + frameCount++ + const currentTime = performance.now() + + if (currentTime >= lastTime + 1000) { + setPerformanceMetrics(prev => ({ + ...prev, + fps: Math.round((frameCount * 1000) / (currentTime - lastTime)), + })) + frameCount = 0 + lastTime = currentTime + } + + rafId = requestAnimationFrame(measureFPS) + } + + rafId = requestAnimationFrame(measureFPS) + + // Monitor memory usage + const memoryInterval = setInterval(() => { + if ('memory' in performance) { + const memory = (performance as any).memory + setPerformanceMetrics(prev => ({ + ...prev, + memory: Math.round(memory.usedJSHeapSize / 1048576), // Convert to MB + })) + } + }, 1000) + + // Monitor layout shifts + let layoutShiftCount = 0 + const observer = new PerformanceObserver(list => { + for (const entry of list.getEntries()) { + if (entry.entryType === 'layout-shift') { + layoutShiftCount++ + setPerformanceMetrics(prev => ({ + ...prev, + layoutShifts: layoutShiftCount, + })) + } + } + }) + + observer.observe({ entryTypes: ['layout-shift'] }) + + return () => { + cancelAnimationFrame(rafId) + clearInterval(memoryInterval) + observer.disconnect() + } + }, [showPerformance, isVisible]) + + // Handle debug styles + useEffect(() => { + const styleId = 'layout-debugger-styles' + let styleElement = document.getElementById(styleId) as HTMLStyleElement + + if (!isVisible) { + if (styleElement) { + styleElement.remove() + } + return + } + + if (!styleElement) { + styleElement = document.createElement('style') + styleElement.id = styleId + document.head.appendChild(styleElement) + } + + const styles: string[] = [] + + if (touchTargetsEnabled) { + styles.push(` + button, a, input, textarea, select, [role="button"], [tabindex]:not([tabindex="-1"]) { + position: relative; + } + button::after, a::after, input::after, textarea::after, select::after, [role="button"]::after, [tabindex]:not([tabindex="-1"])::after { + content: ''; + position: absolute; + inset: 0; + min-width: 44px; + min-height: 44px; + border: 2px dashed rgba(255, 0, 255, 0.5); + pointer-events: none; + transform: translate(-50%, -50%); + left: 50%; + top: 50%; + } + `) + } + + if (containerQueriesEnabled) { + styles.push(` + [class*="@container"], .container-queries { + outline: 2px dashed rgba(0, 255, 0, 0.5) !important; + outline-offset: -2px; + } + `) + } + + styleElement.textContent = styles.join('\n') + + return () => { + if (styleElement) { + styleElement.remove() + } + } + }, [isVisible, touchTargetsEnabled, containerQueriesEnabled]) + + if (!isVisible) { + return ( + + ) + } + + return ( + <> + {/* Grid overlay */} + {gridEnabled && ( +
+ )} + + {/* Touch target indicators are handled via useEffect */} + + {/* Container query indicators are handled via useEffect */} + + {/* Debug panel */} +
+
+

Layout Debugger

+ +
+ + {/* Viewport info */} + {showViewportInfo && ( +
+
+ Viewport: {viewport.width} × {viewport.height} +
+
+ Device: {viewport.isMobile ? 'Mobile' : viewport.isTablet ? 'Tablet' : 'Desktop'} +
+
+ )} + + {/* Breakpoint indicator */} + {showBreakpoints && ( +
+
Active Breakpoint:
+
+ + base + + = 475 && + viewport.width < 640 && + 'bg-primary text-primary-foreground' + )} + > + xs + + = 640 && + viewport.width < 768 && + 'bg-primary text-primary-foreground' + )} + > + sm + + = 768 && + viewport.width < 1024 && + 'bg-primary text-primary-foreground' + )} + > + md + + = 1024 && + viewport.width < 1280 && + 'bg-primary text-primary-foreground' + )} + > + lg + + = 1280 && + viewport.width < 1536 && + 'bg-primary text-primary-foreground' + )} + > + xl + + = 1536 && 'bg-primary text-primary-foreground' + )} + > + 2xl + +
+
+ )} + + {/* Performance metrics */} + {showPerformance && ( +
+
FPS: {performanceMetrics.fps}
+ {performanceMetrics.memory > 0 &&
Memory: {performanceMetrics.memory} MB
} +
Layout Shifts: {performanceMetrics.layoutShifts}
+
+ )} + + {/* Toggle options */} +
+ + + +
+ +
Press Ctrl+Shift+D to toggle
+
+ + ) +} diff --git a/src/components/layout/PWALayout.tsx b/src/components/layout/PWALayout.tsx new file mode 100644 index 0000000..63c44a1 --- /dev/null +++ b/src/components/layout/PWALayout.tsx @@ -0,0 +1,264 @@ +'use client' + +import { forwardRef, useEffect, useState } from 'react' +import type React from 'react' + +import { cn } from '@/lib/utils' +import type { BeforeInstallPromptEvent } from '@/lib/pwa' + +interface PWALayoutProps extends React.HTMLAttributes { + children: React.ReactNode + safeArea?: boolean | 'all' | 'top' | 'bottom' | 'horizontal' + fullScreen?: boolean + preventPullToRefresh?: boolean + showInstallPrompt?: boolean + navigationBarColor?: string + statusBarColor?: string +} + +/** + * PWA-optimized layout component with safe area handling and standalone mode support + */ +export const PWALayout = forwardRef( + ( + { + children, + className, + safeArea = true, + fullScreen = false, + preventPullToRefresh = true, + showInstallPrompt = true, + navigationBarColor, + ...props + }, + ref + ) => { + const [isStandalone, setIsStandalone] = useState(false) + const [isPWAInstalled, setIsPWAInstalled] = useState(false) + const [deferredPrompt, setDeferredPrompt] = useState(null) + + useEffect(() => { + // Check if running in standalone mode + const checkStandalone = () => { + const standalone = window.matchMedia('(display-mode: standalone)').matches + setIsStandalone(standalone) + setIsPWAInstalled(standalone || (window.navigator as any).standalone === true) + } + + checkStandalone() + + // Listen for display mode changes + const mediaQuery = window.matchMedia('(display-mode: standalone)') + mediaQuery.addEventListener('change', checkStandalone) + + return () => mediaQuery.removeEventListener('change', checkStandalone) + }, []) + + useEffect(() => { + // Prevent pull-to-refresh on mobile + if (!preventPullToRefresh) { + return undefined + } + + let touchStartY = 0 + + const preventPull = (e: TouchEvent) => { + if (e.touches && e.touches.length > 0 && e.touches[0]) { + const touchY = e.touches[0].clientY + const touchDiff = touchY - touchStartY + + if (window.scrollY === 0 && touchDiff > 0 && e.cancelable) { + e.preventDefault() + } + } + } + + const handleTouchStart = (e: TouchEvent) => { + if (e.touches && e.touches.length > 0 && e.touches[0]) { + touchStartY = e.touches[0].clientY + } + } + + document.addEventListener('touchstart', handleTouchStart, { passive: false }) + document.addEventListener('touchmove', preventPull, { passive: false }) + + return () => { + document.removeEventListener('touchstart', handleTouchStart) + document.removeEventListener('touchmove', preventPull) + } + }, [preventPullToRefresh]) + + useEffect(() => { + // Listen for install prompt + const handleBeforeInstallPrompt = (e: Event) => { + e.preventDefault() + setDeferredPrompt(e as BeforeInstallPromptEvent) + } + + window.addEventListener('beforeinstallprompt', handleBeforeInstallPrompt) + + return () => { + window.removeEventListener('beforeinstallprompt', handleBeforeInstallPrompt) + } + }, []) + + useEffect(() => { + // Set theme colors for PWA + if (navigationBarColor) { + const meta = document.querySelector('meta[name="theme-color"]') + if (meta) { + meta.setAttribute('content', navigationBarColor) + } + } + }, [navigationBarColor]) + + const handleInstallClick = async () => { + if (!deferredPrompt) return + + await deferredPrompt.prompt() + const { outcome } = await deferredPrompt.userChoice + + if (outcome === 'accepted') { + setDeferredPrompt(null) + } + } + + const getSafeAreaClass = () => { + if (!safeArea) return '' + + const safeAreaClasses = { + all: 'p-safe-top p-safe-bottom p-safe-left p-safe-right', + top: 'pt-safe-top', + bottom: 'pb-safe-bottom', + horizontal: 'px-safe-left px-safe-right', + } + + return typeof safeArea === 'boolean' ? safeAreaClasses.all : safeAreaClasses[safeArea] + } + + return ( +
+ {children} + + {/* Install prompt for PWA - Mobile-first responsive design */} + {showInstallPrompt && deferredPrompt && !isPWAInstalled && ( +
+
+

Install App

+

+ Install this app on your device for a better experience +

+
+ + +
+
+
+ )} +
+ ) + } +) + +PWALayout.displayName = 'PWALayout' + +/** + * Safe area inset component + */ +interface SafeAreaInsetProps { + position: 'top' | 'bottom' | 'left' | 'right' + className?: string +} + +export const SafeAreaInset: React.FC = ({ position, className }) => { + const insetClasses = { + top: 'h-safe-top', + bottom: 'h-safe-bottom', + left: 'w-safe-left', + right: 'w-safe-right', + } + + return